]> gitweb.factorcode.org Git - factor.git/blob - core/io/encodings/utf16/utf16-tests.factor
0b704532d213a202f67e2fa8ce0b0da91ef63e47
[factor.git] / core / io / encodings / utf16 / utf16-tests.factor
1 ! Copyright (C) 2008 Daniel Ehrenberg.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: arrays io.encodings.string io.encodings.utf16 strings
4 tools.test ;
5
6 { { CHAR: x } } [ B{ 0 CHAR: x } utf16be decode >array ] unit-test
7 { { 0x1D11E } } [ B{ 0xD8 0x34 0xDD 0x1E } utf16be decode >array ] unit-test
8 { { CHAR: replacement-character } } [ B{ 0b11011111 CHAR: q } utf16be decode >array ] unit-test
9 { { CHAR: replacement-character } } [ B{ 0b11011011 CHAR: x 0b11011011 CHAR: x } utf16be decode >array ] unit-test
10
11 { { 0 120 216 52 221 30 } } [ { CHAR: x 0x1d11e } >string utf16be encode >array ] unit-test
12
13 { { CHAR: x } } [ B{ CHAR: x 0 } utf16le decode >array ] unit-test
14 { { 119070 } } [ B{ 0x34 0xD8 0x1E 0xDD } >string utf16le decode >array ] unit-test
15 { { CHAR: replacement-character } } [ { 0 0b11011111 } >string utf16le decode >array ] unit-test
16 { { CHAR: replacement-character } } [ { 0 0b11011011 0 0 } >string utf16le decode >array ] unit-test
17
18 { { 120 0 52 216 30 221 } } [ { CHAR: x 0x1d11e } >string utf16le encode >array ] unit-test
19
20 { { CHAR: x } } [ B{ 0xff 0xfe CHAR: x 0 } utf16 decode >array ] unit-test
21 { { CHAR: x } } [ B{ 0xfe 0xff 0 CHAR: x } utf16 decode >array ] unit-test
22
23 { { 0xff 0xfe 120 0 52 216 30 221 } } [ { CHAR: x 0x1d11e } >string utf16 encode >array ] unit-test
24
25 ! test ascii encoding path
26
27 { B{ CHAR: a 0 CHAR: b 0 CHAR: c 0 } } [ "abc" utf16le encode ] unit-test
28 { B{ 0 CHAR: a 0 CHAR: b 0 CHAR: c } } [ "abc" utf16be encode ] unit-test