37 lines
1.3 KiB
Racket
37 lines
1.3 KiB
Racket
|
|
(load-relative "loadtest.rktl")
|
|
|
|
(require mzlib/restart)
|
|
|
|
(Section 'restart)
|
|
|
|
(test #t restart-mzscheme #("ignore-me") values #("") void)
|
|
(let ([test-in-out
|
|
(lambda (pre post in out err?)
|
|
(let ([err-out (open-output-string)])
|
|
(test (if out
|
|
(string-append "> " out "\n> ")
|
|
"")
|
|
'result
|
|
(let ([s (open-output-string)])
|
|
(parameterize ([current-input-port (open-input-string in)]
|
|
[current-output-port s]
|
|
[current-error-port err-out])
|
|
(restart-mzscheme pre values post void)
|
|
(get-output-string s))))
|
|
(test err? not (string=? "" (get-output-string err-out)))))])
|
|
(test-in-out #("-q" "ignore-me") #("-i") "(current-command-line-arguments)" "#()" #f)
|
|
(test-in-out #("-q") #("-i") "'Hello" "Hello" #f)
|
|
(test-in-out #("-q") #() "'Hello" "Hello" #f)
|
|
(test-in-out #("-q") #("-e" "1") "" #f #f)
|
|
(test-in-out #("-q") #("-i" "-e" "1") "'Hello" "Hello" #f)
|
|
(test-in-out #("-q") #("-e" "z") "" #f #t)
|
|
(test-in-out #("-q") #("-e" "car" "-i") "'Hello" "Hello" #f)
|
|
(test-in-out #("-q") #("-e" "car") "" #f #f)
|
|
(test-in-out #("-q") #("-l" "scheme/list" "-e" "car") "" #f #t)
|
|
)
|
|
|
|
;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(report-errs)
|