
The layer is now redundant, since everything left in "pkgs" is in the "racket-pkgs" category.
30 lines
1.2 KiB
Racket
30 lines
1.2 KiB
Racket
#lang racket/base
|
|
|
|
;; Tests for syntax/flatten-begin
|
|
|
|
(require rackunit
|
|
rackunit/text-ui
|
|
syntax/flatten-begin
|
|
(for-meta -2 (only-in racket/base begin)))
|
|
|
|
(define-binary-check (check-equal-datum? actual expected)
|
|
(check-equal? (map syntax->datum actual)
|
|
(map syntax->datum expected)))
|
|
|
|
(define-test-suite flatten-all-begins-tests
|
|
(check-exn exn:fail:syntax? (λ () (flatten-all-begins #'(1 2 3))))
|
|
(check-equal-datum? (flatten-all-begins #'(begin 1 2 3))
|
|
(list #'1 #'2 #'3))
|
|
(check-equal-datum? (flatten-all-begins (syntax-shift-phase-level #'(begin 1 2 3) 2))
|
|
(list #'1 #'2 #'3))
|
|
(check-equal-datum? (flatten-all-begins #'(begin (begin 1 2) 3))
|
|
(list #'1 #'2 #'3))
|
|
(check-equal-datum? (flatten-all-begins #'(begin (begin 1 2) (+ 3 4) 5))
|
|
(list #'1 #'2 #'(+ 3 4) #'5))
|
|
(check-equal-datum? (flatten-all-begins #'(begin (begin 1 (begin 2) 3) 4))
|
|
(list #'1 #'2 #'3 #'4))
|
|
(check-equal-datum? (flatten-all-begins #'(begin (begin 1 2) (begin 3) 4))
|
|
(list #'1 #'2 #'3 #'4)))
|
|
|
|
(run-tests flatten-all-begins-tests)
|