~ chicken-core (master) /tests/read-lines-tests.scm
Trap1;; Tests for `read-lines'23(import (chicken file)4 (chicken io))56(include "test.scm")78(define input-test-file "read-lines.in")910(with-output-to-file input-test-file11 (lambda ()12 (print #<<EOF13114215316417518EOF19)))2021(test-begin "read-lines")2223(test-equal24 "without arguments"25 '("1" "2" "3" "4" "5")26 (with-input-from-file input-test-file read-lines))2728(test-equal29 "with a port as argument"30 '("1" "2" "3" "4" "5")31 (call-with-input-file input-test-file32 (lambda (port)33 (read-lines port))))3435(test-equal36 "with a limit"37 '("1" "2")38 (call-with-input-file input-test-file39 (lambda (port)40 (read-lines port 2))))4142(test-error43 "with an invalid first argument (port)"44 (read-lines input-test-file))4546(test-error47 "with an invalid second argument (max)"48 (call-with-input-file input-test-file49 (lambda (port)50 (dynamic-wind51 void52 (lambda () (read-lines port 2.0))53 (lambda () (close-input-port port))))))5455(test-end "read-lines")5657(delete-file input-test-file)5859(test-exit)