Add first order checks for public fields and methods for both class/c
and object/c. svn: r18159
This commit is contained in:
parent
6e462ecb38
commit
0971d37b70
|
@ -4076,11 +4076,10 @@
|
|||
|
||||
(test/spec-passed
|
||||
'class/c-first-order-1
|
||||
'(let ()
|
||||
(define/contract cls%
|
||||
(class/c)
|
||||
object%)
|
||||
1))
|
||||
'(contract (class/c)
|
||||
object%
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
(test/pos-blame
|
||||
'class/c-first-order-2
|
||||
|
@ -4088,6 +4087,27 @@
|
|||
object%
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
(test/spec-passed
|
||||
'class/c-first-order-3
|
||||
'(contract (class/c [m (-> any/c number? number?)])
|
||||
(class object% (super-new) (define/public (m x) (add1 x)))
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
(test/pos-blame
|
||||
'class/c-first-order-4
|
||||
'(contract (class/c (field [n number?]))
|
||||
object%
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
(test/spec-passed
|
||||
'class/c-first-order-4
|
||||
'(contract (class/c (field [n number?]))
|
||||
(class object% (super-new) (field [n 3]))
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
;
|
||||
;
|
||||
|
@ -4109,11 +4129,38 @@
|
|||
|
||||
(test/spec-passed
|
||||
'object/c-first-order-1
|
||||
'(let ()
|
||||
(define/contract o
|
||||
(object/c)
|
||||
(new object%))
|
||||
1))
|
||||
'(contract (object/c)
|
||||
(new object%)
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
(test/pos-blame
|
||||
'object/c-first-order-2
|
||||
'(contract (object/c [m (-> any/c number? number?)])
|
||||
(new object%)
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
(test/spec-passed
|
||||
'object/c-first-order-3
|
||||
'(contract (object/c [m (-> any/c number? number?)])
|
||||
(new (class object% (super-new) (define/public (m x) (add1 x))))
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
(test/pos-blame
|
||||
'object/c-first-order-4
|
||||
'(contract (object/c (field [n number?]))
|
||||
(new object%)
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
(test/spec-passed
|
||||
'object/c-first-order-5
|
||||
'(contract (object/c (field [n number?]))
|
||||
(new (class object% (super-new) (field [n 3])))
|
||||
'pos
|
||||
'neg))
|
||||
|
||||
;
|
||||
;
|
||||
|
|
Loading…
Reference in New Issue
Block a user