]> gitweb.factorcode.org Git - factor.git/blob - core/alien/strings/strings-tests.factor
6a0a42253b797a3042e0536bd04c7e27406a73b1
[factor.git] / core / alien / strings / strings-tests.factor
1 USING: alien.strings alien.c-types tools.test kernel libc
2 io.encodings.8-bit io.encodings.utf8 io.encodings.utf16
3 io.encodings.utf16n io.encodings.ascii alien io.encodings.string ;
4 IN: alien.strings.tests
5
6 [ "\u0000ff" ]
7 [ "\u0000ff" latin1 string>alien latin1 alien>string ]
8 unit-test
9
10 [ "hello world" ]
11 [ "hello world" latin1 string>alien latin1 alien>string ]
12 unit-test
13
14 [ "hello\u00abcdworld" ]
15 [ "hello\u00abcdworld" utf16le string>alien utf16le alien>string ]
16 unit-test
17
18 [ t ] [ f expired? ] unit-test
19
20 [ "hello world" ] [
21     "hello world" ascii malloc-string
22     dup ascii alien>string swap free
23 ] unit-test
24
25 [ "hello world" ] [
26     "hello world" utf16n malloc-string
27     dup utf16n alien>string swap free
28 ] unit-test
29
30 [ f ] [ f utf8 alien>string ] unit-test
31
32 [ "hello" ] [ "hello" utf16 encode utf16 decode ] unit-test
33
34 [ "hello" ] [ "hello" utf16 string>alien utf16 alien>string ] unit-test