Compare commits
2 Commits
0fd4666235
...
a376f31d4a
| Author | SHA1 | Date |
|---|---|---|
|
|
a376f31d4a | |
|
|
9063858c78 |
|
|
@ -1,6 +1,8 @@
|
|||
#lang racket
|
||||
|
||||
(require "test-util.rkt")
|
||||
(provide cvar-to-bril-tests)
|
||||
|
||||
(require rackunit)
|
||||
(require "cvar-to-bril.rkt")
|
||||
(require "uniquify.rkt")
|
||||
(require "remove-complex-oper.rkt")
|
||||
|
|
@ -11,7 +13,8 @@
|
|||
(define listings
|
||||
(list
|
||||
(Program '() (Prim '+ (list (Int 1) (Int 2))))
|
||||
(Program '() (Prim '+ (list (Prim '- (list (Int 1))) (Int 2))))))
|
||||
(Program '() (Prim '+ (list (Prim '- (list (Int 1))) (Int 2))))
|
||||
(Program '() (Prim '- (list (Int 1) (Int 2))))))
|
||||
|
||||
(define (evaluate-bril-main bril-program)
|
||||
(cadr (interp-bril bril-program "main")))
|
||||
|
|
@ -19,6 +22,10 @@
|
|||
(define (pass program)
|
||||
(cvar-to-bril (explicate-control (remove-complex-opera*-2 (uniquify program)))))
|
||||
|
||||
(for ([program listings])
|
||||
(test-eq (interp-RVar (list-ref listings 0))
|
||||
(evaluate-bril-main (pass (list-ref listings 0)))))
|
||||
(define cvar-to-bril-tests
|
||||
(test-suite
|
||||
"CVar to bril testsuite"
|
||||
(test-case "semantics preservation under interpretation"
|
||||
(for ([program listings])
|
||||
(check-equal? (interp-RVar program)
|
||||
(evaluate-bril-main (pass program)))))))
|
||||
|
|
|
|||
Loading…
Reference in New Issue