1 USING: tools.test io.streams.byte-array io.encodings.binary
2 io.encodings.utf8 io kernel arrays strings namespaces math ;
4 [ B{ } ] [ B{ } binary [ contents ] with-byte-reader ] unit-test
5 [ B{ 1 2 3 } ] [ binary [ B{ 1 2 3 } write ] with-byte-writer ] unit-test
6 [ B{ 1 2 3 } ] [ { 1 2 3 } binary [ 3 read ] with-byte-reader ] unit-test
8 [ B{ BIN: 11110101 BIN: 10111111 BIN: 10000000 BIN: 10111111 BIN: 11101111 BIN: 10000000 BIN: 10111111 BIN: 11011111 BIN: 10000000 CHAR: x } ]
9 [ { BIN: 101111111000000111111 BIN: 1111000000111111 BIN: 11111000000 CHAR: x } >string utf8 [ write ] with-byte-writer ] unit-test
10 [ { BIN: 101111111000000111111 } t ] [ { BIN: 11110101 BIN: 10111111 BIN: 10000000 BIN: 10111111 } utf8 <byte-reader> stream-contents dup >array swap string? ] unit-test
13 B{ 0 121 120 0 0 0 0 0 0 } binary
14 [ 1 read drop "\0" read-until ] with-byte-reader
18 B{ 1 2 3 4 5 6 7 8 9 10 11 12 } binary
21 0 seek-absolute input-stream get stream-seek
23 2 seek-relative input-stream get stream-seek
25 -2 seek-end input-stream get stream-seek
27 0 seek-end input-stream get stream-seek
33 B{ 1 2 3 4 5 6 7 8 9 10 11 12 } binary [ tell-input ] with-byte-reader
36 ! Overly aggressive compiler optimizations
38 binary [ 123 >bignum write1 ] with-byte-writer