42 lines
		
	
	
		
			964 B
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			964 B
		
	
	
	
		
			Factor
		
	
	
USING: vlists kernel persistent.sequences arrays tools.test
 | 
						|
namespaces accessors sequences assocs ;
 | 
						|
IN: vlists.tests
 | 
						|
 | 
						|
[ { "hi" "there" } ]
 | 
						|
[ VL{ } "hi" swap ppush "there" swap ppush >array ] unit-test
 | 
						|
 | 
						|
[ VL{ "hi" "there" "foo" } VL{ "hi" "there" "bar" } t ]
 | 
						|
[
 | 
						|
    VL{ } "hi" swap ppush "there" swap ppush "v" set
 | 
						|
    "foo" "v" get ppush
 | 
						|
    "bar" "v" get ppush
 | 
						|
    dup "baz" over ppush [ vector>> ] bi@ eq?
 | 
						|
] unit-test
 | 
						|
 | 
						|
[ "foo" VL{ "hi" "there" } t ]
 | 
						|
[
 | 
						|
    VL{ "hi" "there" "foo" } dup "v" set
 | 
						|
    [ peek ] [ ppop ] bi
 | 
						|
    dup "v" get [ vector>> ] bi@ eq?
 | 
						|
] unit-test
 | 
						|
 | 
						|
[ VL{ } 3 over push ] must-fail
 | 
						|
 | 
						|
[ 4 VL{ "hi" } set-first ] must-fail
 | 
						|
 | 
						|
[ 5 t ] [
 | 
						|
    "rice" VA{ { "rice" 5 } { "beans" 10 } } at*
 | 
						|
] unit-test
 | 
						|
 | 
						|
[ 6 t ] [
 | 
						|
    "rice" VA{ { "rice" 5 } { "beans" 10 } { "rice" 6 } } at*
 | 
						|
] unit-test
 | 
						|
 | 
						|
[ 3 ] [
 | 
						|
    VA{ { "rice" 5 } { "beans" 10 } { "rice" 6 } } assoc-size
 | 
						|
] unit-test
 | 
						|
 | 
						|
[ f f ] [
 | 
						|
    "meat" VA{ { "rice" 5 } { "beans" 10 } { "rice" 6 } } at*
 | 
						|
] unit-test
 |