1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
;; -*-theme-d-*-
;; Copyright (C) 2020 Tommi Höynälänmaa
;; Distributed under GNU General Public License version 3,
;; see file doc/GPL-3.
;; Expected results: translation and running OK
(define-proper-program (tests test783)
(import (standard-library core)
(standard-library binary-file-io)
(standard-library bytevector)
(standard-library console-io)
(standard-library system))
(define-main-proc (() <none> nonpure)
(let ((str-filename "bintestfile1.dat"))
(if (file-exists? str-filename) (delete-file str-filename))
(let ((op (open-output-file str-filename))
(bv1 (bytevector 1 23 200 50 55 10 20 40 90 10))
(bv2 (bytevector 5 4 3 2 1))
(bv3 (make-bytevector 10 0)))
(put-whole-bytevector op bv1)
(close-output-port op)
(let* ((ip (open-input-file str-filename))
(bv4 (cast <bytevector> (get-bytevector-n ip 5))))
(unget-bytevector ip bv2 0 5)
(get-bytevector-n! ip bv3 1 5)
(get-bytevector-some! ip bv3 6 3)
(close-input-port ip)
(console-display-line (bytevector->u8-list bv3))
(console-display-line (bytevector->u8-list bv4)))))))
|