Add subtyping tests for classes/objects

original commit: 8331d8c8a2e994a2c961e18977d9563a3f92ba8d
This commit is contained in:
Asumu Takikawa 2013-08-29 11:22:39 -04:00
parent 3222baafbd
commit d78535d187

View File

@ -291,4 +291,25 @@
[FAIL
(->key -String #:x -Symbol #f #:y -Symbol #f Univ)
(->optkey -String [-Void] #:x -Symbol #t Univ)]
;; classes and objects
[(make-Class #f null null `((m ,(-> -Nat))) `((m ,(-> -Nat))))
(make-Class #f null null `((m ,(-> -Nat))) `((m ,(-> -Nat))))]
[(make-Instance (make-Class #f null null `((m ,(-> -Nat))) `((m ,(-> -Nat)))))
(make-Instance (make-Class #f null null `((m ,(-> -Nat))) `((m ,(-> -Nat)))))]
[(make-Instance (make-Class #f null null `((m ,(-> -Nat)) (n ,(-> -Nat))) null))
(make-Instance (make-Class #f null null `((m ,(-> -Nat))) null))]
[(make-Instance (make-Class #f null `((f ,-Nat)) `((m ,(-> -Nat)) (n ,(-> -Nat))) null))
(make-Instance (make-Class #f null null `((m ,(-> -Nat))) null))]
[(make-Instance (make-Class #f `((a ,-Nat)) null `((m ,(-> -Nat)) (n ,(-> -Nat))) null))
(make-Instance (make-Class #f null null `((m ,(-> -Nat))) null))]
[FAIL
(make-Instance (make-Class #f null null `((m ,(-> -Nat)) (n ,(-> -Nat))) null))
(make-Instance (make-Class #f null null `((l ,(-> -Nat)) (m ,(-> -Nat))) null))]
[FAIL
(make-Class #f null null `((m ,(-> -Nat))) null)
(make-Class #f null null `((m ,(-> -Nat))) `((m ,(-> -Nat))))]
[FAIL
(make-Class #f null null `((m ,(-> -Nat))) `((m ,(-> -Nat))))
(make-Class #f null null `((m ,(-> -Nat))) null)]
))