42 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Factor
		
	
	
| USING: io.encodings.ascii sequences strings io io.files accessors
 | |
| tools.test kernel io.files.unique namespaces continuations
 | |
| io.files.info io.pathnames io.directories ;
 | |
| IN: io.files.unique.tests
 | |
| 
 | |
| [ 123 ] [
 | |
|     "core" ".test" [
 | |
|         [ [ 123 CHAR: a <string> ] dip ascii set-file-contents ]
 | |
|         [ file-info size>> ] bi
 | |
|     ] cleanup-unique-file
 | |
| ] unit-test
 | |
| 
 | |
| [ t ] [
 | |
|     [ current-directory get file-info directory? ] cleanup-unique-directory
 | |
| ] unit-test
 | |
| 
 | |
| [ t ] [
 | |
|     current-directory get
 | |
|     [ [ "FAILDOG" throw ] cleanup-unique-directory ] [ drop ] recover
 | |
|     current-directory get =
 | |
| ] unit-test
 | |
| 
 | |
| [ t ] [
 | |
|     [
 | |
|         "asdf" unique-file drop
 | |
|         "asdf2" unique-file drop
 | |
|         current-temporary-directory get directory-files length 2 =
 | |
|     ] cleanup-unique-directory
 | |
| ] unit-test
 | |
| 
 | |
| [ t ] [
 | |
|     [ ] with-unique-directory >boolean
 | |
| ] unit-test
 | |
| 
 | |
| [ t ] [
 | |
|     [
 | |
|         "asdf" unique-file drop
 | |
|         "asdf" unique-file drop
 | |
|         current-temporary-directory get directory-files length 2 =
 | |
|     ] with-unique-directory drop
 | |
| ] unit-test
 |