From 30f12de3d1a892bfec733c83bdc46b6e5d2ee453 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 19 Apr 2009 16:46:21 +0200 Subject: [PATCH] Reorganize `io-ports.test' following the R6RS sectioning. * tests/io-ports.test ("7.2.11 Binary Output")["open-bytevector-output-port", "open-bytevector-output-port [put-u8]", "open-bytevector-output-port [display]", "bytevector output port supports `port-position'"): Move to... ("8.2.10 Output ports"): ... this new section. --- tests/io-ports.test | 95 +++++++++++++++++++++++++++-------------------------- 1 file changed, 49 insertions(+), 46 deletions(-) diff --git a/tests/io-ports.test b/tests/io-ports.test index 112dcb5..02aa775 100644 --- a/tests/io-ports.test +++ b/tests/io-ports.test @@ -216,52 +216,7 @@ (port (%make-void-port "w"))) (close-port port) - (put-bytevector port bv))) - - (pass-if "open-bytevector-output-port" - (let-values (((port get-content) - (open-bytevector-output-port))) - (let ((source (make-bytevector 7777))) - (put-bytevector port source) - (and (bytevector=? (get-content) source) - (bytevector=? (get-content) (make-bytevector 0)))))) - - (pass-if "open-bytevector-output-port [put-u8]" - (let-values (((port get-content) - (open-bytevector-output-port))) - (put-u8 port 77) - (and (bytevector=? (get-content) (make-bytevector 1 77)) - (bytevector=? (get-content) (make-bytevector 0))))) - - (pass-if "open-bytevector-output-port [display]" - (let-values (((port get-content) - (open-bytevector-output-port))) - (display "hello" port) - (and (bytevector=? (get-content) (string->utf8 "hello")) - (bytevector=? (get-content) (make-bytevector 0))))) - - (pass-if "bytevector output port supports `port-position'" - (let-values (((port get-content) - (open-bytevector-output-port))) - (let ((source (make-bytevector 7777)) - (overwrite (make-bytevector 33))) - (and (port-has-port-position? port) - (port-has-set-port-position!? port) - (begin - (put-bytevector port source) - (= (bytevector-length source) - (port-position port))) - (begin - (set-port-position! port 10) - (= 10 (port-position port))) - (begin - (put-bytevector port overwrite) - (bytevector-copy! overwrite 0 source 10 - (bytevector-length overwrite)) - (= (port-position port) - (+ 10 (bytevector-length overwrite)))) - (bytevector=? (get-content) source) - (bytevector=? (get-content) (make-bytevector 0))))))) + (put-bytevector port bv)))) (with-test-prefix "7.2.7 Input Ports" @@ -389,6 +344,54 @@ (close-port port) closed?))) + +(with-test-prefix "8.2.10 Output ports" + + (pass-if "open-bytevector-output-port" + (let-values (((port get-content) + (open-bytevector-output-port))) + (let ((source (make-bytevector 7777))) + (put-bytevector port source) + (and (bytevector=? (get-content) source) + (bytevector=? (get-content) (make-bytevector 0)))))) + + (pass-if "open-bytevector-output-port [put-u8]" + (let-values (((port get-content) + (open-bytevector-output-port))) + (put-u8 port 77) + (and (bytevector=? (get-content) (make-bytevector 1 77)) + (bytevector=? (get-content) (make-bytevector 0))))) + + (pass-if "open-bytevector-output-port [display]" + (let-values (((port get-content) + (open-bytevector-output-port))) + (display "hello" port) + (and (bytevector=? (get-content) (string->utf8 "hello")) + (bytevector=? (get-content) (make-bytevector 0))))) + + (pass-if "bytevector output port supports `port-position'" + (let-values (((port get-content) + (open-bytevector-output-port))) + (let ((source (make-bytevector 7777)) + (overwrite (make-bytevector 33))) + (and (port-has-port-position? port) + (port-has-set-port-position!? port) + (begin + (put-bytevector port source) + (= (bytevector-length source) + (port-position port))) + (begin + (set-port-position! port 10) + (= 10 (port-position port))) + (begin + (put-bytevector port overwrite) + (bytevector-copy! overwrite 0 source 10 + (bytevector-length overwrite)) + (= (port-position port) + (+ 10 (bytevector-length overwrite)))) + (bytevector=? (get-content) source) + (bytevector=? (get-content) (make-bytevector 0))))))) + ;;; Local Variables: ;;; coding: latin-1 -- 2.11.4.GIT