Tests to make sure the first-order parts of method contracts are attributed
to the correct source upon failure. svn: r18219
This commit is contained in:
parent
cd4aa4c6f6
commit
c5c22e117c
|
@ -4123,6 +4123,13 @@
|
||||||
'pos
|
'pos
|
||||||
'neg))
|
'neg))
|
||||||
|
|
||||||
|
(test/pos-blame
|
||||||
|
'class/c-first-order-method-4
|
||||||
|
'(contract (class/c [m (-> any/c number? number?)])
|
||||||
|
(class object% (super-new) (define/public (m) 3))
|
||||||
|
'pos
|
||||||
|
'neg))
|
||||||
|
|
||||||
(test/pos-blame
|
(test/pos-blame
|
||||||
'class/c-first-order-field-1
|
'class/c-first-order-field-1
|
||||||
'(contract (class/c (field [n number?]))
|
'(contract (class/c (field [n number?]))
|
||||||
|
@ -4237,6 +4244,13 @@
|
||||||
'pos
|
'pos
|
||||||
'neg))
|
'neg))
|
||||||
|
|
||||||
|
(test/pos-blame
|
||||||
|
'class/c-first-order-super-9
|
||||||
|
'(contract (class/c (super [m (-> any/c number? number?)]))
|
||||||
|
(class object% (super-new) (define/public (m) 3))
|
||||||
|
'pos
|
||||||
|
'neg))
|
||||||
|
|
||||||
(test/pos-blame
|
(test/pos-blame
|
||||||
'class/c-first-order-inner-1
|
'class/c-first-order-inner-1
|
||||||
'(contract (class/c (inner [m (-> any/c number? number?)]))
|
'(contract (class/c (inner [m (-> any/c number? number?)]))
|
||||||
|
@ -4298,6 +4312,14 @@
|
||||||
'neg)])
|
'neg)])
|
||||||
(class c% (super-new) (define/augment (m) 5))))
|
(class c% (super-new) (define/augment (m) 5))))
|
||||||
|
|
||||||
|
(test/neg-blame
|
||||||
|
'class/c-first-order-inner-9
|
||||||
|
'(let* ([c% (contract (class/c (inner [m (-> any/c number? number?)]))
|
||||||
|
(class object% (super-new) (define/pubment (m x) (inner x m x)))
|
||||||
|
'pos
|
||||||
|
'neg)])
|
||||||
|
(class c% (super-new) (define/augment (m) 5))))
|
||||||
|
|
||||||
(test/pos-blame
|
(test/pos-blame
|
||||||
'class/c-first-order-override-1
|
'class/c-first-order-override-1
|
||||||
'(contract (class/c (override [m (-> any/c number? number?)]))
|
'(contract (class/c (override [m (-> any/c number? number?)]))
|
||||||
|
@ -4359,6 +4381,14 @@
|
||||||
'neg)])
|
'neg)])
|
||||||
(class c% (super-new) (define/override (m) 5))))
|
(class c% (super-new) (define/override (m) 5))))
|
||||||
|
|
||||||
|
(test/neg-blame
|
||||||
|
'class/c-first-order-override-9
|
||||||
|
'(let ([c% (contract (class/c (override [m (-> any/c number? number?)]))
|
||||||
|
(class object% (super-new) (define/public (m x) 3))
|
||||||
|
'pos
|
||||||
|
'neg)])
|
||||||
|
(class c% (super-new) (define/override (m) 5))))
|
||||||
|
|
||||||
(test/pos-blame
|
(test/pos-blame
|
||||||
'class/c-first-order-augment-1
|
'class/c-first-order-augment-1
|
||||||
'(contract (class/c (augment [m (-> any/c number? number?)]))
|
'(contract (class/c (augment [m (-> any/c number? number?)]))
|
||||||
|
@ -4420,6 +4450,14 @@
|
||||||
'neg)])
|
'neg)])
|
||||||
(class c% (super-new) (inherit m))))
|
(class c% (super-new) (inherit m))))
|
||||||
|
|
||||||
|
(test/pos-blame
|
||||||
|
'class/c-first-order-augment-9
|
||||||
|
'(let ([c% (contract (class/c (augment [m (-> any/c number? number?)]))
|
||||||
|
(class object% (super-new) (define/pubment (m) 3))
|
||||||
|
'pos
|
||||||
|
'neg)])
|
||||||
|
(class c% (super-new) (inherit m))))
|
||||||
|
|
||||||
(test/spec-passed
|
(test/spec-passed
|
||||||
'class/c-higher-order-method-1
|
'class/c-higher-order-method-1
|
||||||
'(let ([c% (contract (class/c [m (-> any/c number? number?)])
|
'(let ([c% (contract (class/c [m (-> any/c number? number?)])
|
||||||
|
|
Loading…
Reference in New Issue
Block a user