racket/pkgs/racket-test/tests/units/test-cert.rkt
Matthew Flatt 2d4f3e2ac9 remove the "racket-pkgs" directory layer
The layer is now redundant, since everything left in "pkgs" is in the
"racket-pkgs" category.
2014-12-08 05:22:59 -07:00

42 lines
819 B
Racket

#lang racket/load
(module test mzscheme
(require mzlib/unit)
(provide s)
(define x add1)
(define-signature s
(a
(define-values (y) (x a))
(define-syntaxes (z)
(syntax-rules () ((_) (x a)))))))
(module test2 mzscheme
(require mzlib/unit
'test)
(define-unit u1 (import) (export s)
(define a 1))
(define-unit u2 (import s) (export)
(+ y (z)))
(define-compound-unit u3 (import) (export)
(link (((S : s)) u1)
(() u2 S)))
(printf "~a\n" (invoke-unit u3))
)
;; 4
(require 'test2)
(module test3 mzscheme
(require mzlib/unit
'test)
(define-unit u1 (import) (export s)
(define a 1))
(define-values/invoke-unit u1 (import) (export (rename s)))
(printf "~a\n" (+ y (z)))
)
;;4
(require 'test3)