45 lines
		
	
	
		
			945 B
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			945 B
		
	
	
	
		
			Factor
		
	
	
! Copyright (C) 2005 Chris Double. All Rights Reserved.
 | 
						|
! See http://factorcode.org/license.txt for BSD license.
 | 
						|
!
 | 
						|
USING: kernel tools.test math channels channels.private 
 | 
						|
sequences threads sorting ;
 | 
						|
IN: channels.tests
 | 
						|
 | 
						|
{ V{ 10 } } [
 | 
						|
    V{ } clone <channel>
 | 
						|
    [ from swap push ] in-thread
 | 
						|
    10 swap to 
 | 
						|
] unit-test
 | 
						|
 | 
						|
{ 20 } [
 | 
						|
    <channel>
 | 
						|
    [ 20 swap to ] in-thread
 | 
						|
    from 
 | 
						|
] unit-test
 | 
						|
 | 
						|
{ { 1 2 3 4 } } [
 | 
						|
    V{ } clone <channel>
 | 
						|
    [ from swap push ] in-thread
 | 
						|
    [ from swap push ] in-thread
 | 
						|
    [ from swap push ] in-thread
 | 
						|
    [ from swap push ] in-thread
 | 
						|
    4 over to 
 | 
						|
    2 over to 
 | 
						|
    1 over to 
 | 
						|
    3 swap to 
 | 
						|
    natural-sort
 | 
						|
] unit-test
 | 
						|
 | 
						|
{ { 1 2 4 9 } } [
 | 
						|
    V{ } clone <channel>
 | 
						|
    [ 4 swap to ] in-thread
 | 
						|
    [ 2 swap to ] in-thread
 | 
						|
    [ 1 swap to ] in-thread
 | 
						|
    [ 9 swap to ] in-thread
 | 
						|
    2dup from swap push 
 | 
						|
    2dup from swap push 
 | 
						|
    2dup from swap push 
 | 
						|
    dupd from swap push 
 | 
						|
    natural-sort
 | 
						|
] unit-test
 |