Making custom port tests optional.

This commit is contained in:
Alex Shinn 2011-12-17 15:57:32 +09:00
parent 24b43e367b
commit e2cae1558c

View file

@ -23,22 +23,28 @@
(call-with-input-string "abc\ndef" (call-with-input-string "abc\ndef"
(lambda (in) (let ((line (read-line in))) (list line (read-line in)))))) (lambda (in) (let ((line (read-line in))) (list line (read-line in))))))
(test "null-output-port" #t ;; Custom ports are only supported with string streams (i.e. either
;; GNU fopencookie or BSD funopen).
(cond-expand
(string-streams
(test "null-output-port" #t
(let ((out (make-null-output-port))) (let ((out (make-null-output-port)))
(write 1 out) (write 1 out)
(close-output-port out) (close-output-port out)
#t)) #t))
(test "null-input-port" #t (test "null-input-port" #t
(let ((in (make-concatenated-port))) (let ((in (make-concatenated-port)))
(let ((res (eof-object? (read-char in)))) (let ((res (eof-object? (read-char in))))
(close-input-port in) (close-input-port in)
res))) res)))
(define (string-upcase str) (define (string-upcase str)
(list->string (map char-upcase (string->list str)))) (list->string (map char-upcase (string->list str))))
(test "upcase-input-port" "ABC" (test "upcase-input-port" "ABC"
(call-with-input-string "abc" (call-with-input-string "abc"
(lambda (in) (lambda (in)
(let ((in (make-filtered-input-port string-upcase in))) (let ((in (make-filtered-input-port string-upcase in)))
@ -46,11 +52,11 @@
(close-input-port in) (close-input-port in)
res))))) res)))))
(test "upcase-output-port" "ABC" (test "upcase-output-port" "ABC"
(call-with-output-string (call-with-output-string
(lambda (out) (lambda (out)
(let ((out (make-filtered-output-port string-upcase out))) (let ((out (make-filtered-output-port string-upcase out)))
(display "abc" out) (display "abc" out)
(close-output-port out))))) (close-output-port out)))))))
(test-end) (test-end)