76 lines
1.5 KiB
Factor
76 lines
1.5 KiB
Factor
USING: arrays io io.files kernel math parser strings system
|
|
tools.test words namespaces make io.encodings.8-bit
|
|
io.encodings.binary sequences io.files.unique ;
|
|
IN: io.tests
|
|
|
|
[ f ] [
|
|
"resource:core/io/test/no-trailing-eol.factor" run-file
|
|
"foo" "io.tests" lookup
|
|
] unit-test
|
|
|
|
! Make sure we use correct to_c_string form when writing
|
|
[ ] [ "\0" write ] unit-test
|
|
|
|
[ B{ 3 2 3 4 5 } ]
|
|
[
|
|
"seek-test1" unique-file binary
|
|
[
|
|
[
|
|
B{ 1 2 3 4 5 } write flush 0 seek-absolute seek-output
|
|
B{ 3 } write
|
|
] with-file-writer
|
|
] [
|
|
file-contents
|
|
] 2bi
|
|
] unit-test
|
|
|
|
[ B{ 1 2 3 4 3 } ]
|
|
[
|
|
"seek-test2" unique-file binary
|
|
[
|
|
[
|
|
B{ 1 2 3 4 5 } write flush -1 seek-relative seek-output
|
|
B{ 3 } write
|
|
] with-file-writer
|
|
] [
|
|
file-contents
|
|
] 2bi
|
|
] unit-test
|
|
|
|
[ B{ 1 2 3 4 5 0 3 } ]
|
|
[
|
|
"seek-test3" unique-file binary
|
|
[
|
|
[
|
|
B{ 1 2 3 4 5 } write flush 1 seek-relative seek-output
|
|
B{ 3 } write
|
|
] with-file-writer
|
|
] [
|
|
file-contents
|
|
] 2bi
|
|
] unit-test
|
|
|
|
[ B{ 3 } ]
|
|
[
|
|
B{ 1 2 3 4 5 } "seek-test4" unique-file binary [
|
|
set-file-contents
|
|
] [
|
|
[
|
|
-3 seek-end seek-input 1 read
|
|
] with-file-reader
|
|
] 2bi
|
|
] unit-test
|
|
|
|
[ B{ 2 } ]
|
|
[
|
|
B{ 1 2 3 4 5 } "seek-test5" unique-file binary [
|
|
set-file-contents
|
|
] [
|
|
[
|
|
3 seek-absolute seek-input
|
|
-2 seek-relative seek-input
|
|
1 read
|
|
] with-file-reader
|
|
] 2bi
|
|
] unit-test
|