35 lines
		
	
	
		
			919 B
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			919 B
		
	
	
	
		
			Factor
		
	
	
| USING: alien.strings alien.c-types alien.data tools.test
 | |
| kernel libc io.encodings.utf8 io.encodings.utf16 io.encodings.utf16n
 | |
| io.encodings.ascii alien io.encodings.string io.encodings.8-bit.latin1 ;
 | |
| IN: alien.strings.tests
 | |
| 
 | |
| [ "\u0000ff" ]
 | |
| [ "\u0000ff" latin1 string>alien latin1 alien>string ]
 | |
| unit-test
 | |
| 
 | |
| [ "hello world" ]
 | |
| [ "hello world" latin1 string>alien latin1 alien>string ]
 | |
| unit-test
 | |
| 
 | |
| [ "hello\u00abcdworld" ]
 | |
| [ "hello\u00abcdworld" utf16le string>alien utf16le alien>string ]
 | |
| unit-test
 | |
| 
 | |
| [ t ] [ f expired? ] unit-test
 | |
| 
 | |
| [ "hello world" ] [
 | |
|     "hello world" ascii malloc-string
 | |
|     dup ascii alien>string swap free
 | |
| ] unit-test
 | |
| 
 | |
| [ "hello world" ] [
 | |
|     "hello world" utf16n malloc-string
 | |
|     dup utf16n alien>string swap free
 | |
| ] unit-test
 | |
| 
 | |
| [ f ] [ f utf8 alien>string ] unit-test
 | |
| 
 | |
| [ "hello" ] [ "hello" utf16 encode utf16 decode ] unit-test
 | |
| 
 | |
| [ "hello" ] [ "hello" utf16 string>alien utf16 alien>string ] unit-test
 |