57 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Factor
		
	
	
! Copyright (C) 2011 Doug Coleman.
 | 
						|
! See http://factorcode.org/license.txt for BSD license.
 | 
						|
USING: combinators fry kernel locals math math.functions
 | 
						|
math.order math.parser sequences tools.test ;
 | 
						|
IN: units.reduction
 | 
						|
 | 
						|
[ "0Bi" ] [ 0 n>storage ] unit-test
 | 
						|
[ "0B" ] [ 0 n>Storage ] unit-test
 | 
						|
[ "0Bi" ] [ -0 n>storage ] unit-test
 | 
						|
[ "0B" ] [ -0 n>Storage ] unit-test
 | 
						|
[ "1000Bi" ] [ 1,000 n>storage ] unit-test
 | 
						|
[ "1K" ] [ 1,000 n>Storage ] unit-test
 | 
						|
[ "976Ki" ] [ 1,000,000 n>storage ] unit-test
 | 
						|
[ "1Mi" ] [ 2,000,000 n>storage ] unit-test
 | 
						|
[ "190Mi" ] [ 200,000,000 n>storage ] unit-test
 | 
						|
[ "1M" ] [ 1,000,000 n>Storage ] unit-test
 | 
						|
[ "953Mi" ] [ 1,000,000,000 n>storage ] unit-test
 | 
						|
[ "1G" ] [ 1,000,000,000 n>Storage ] unit-test
 | 
						|
[ "931Gi" ] [ 1,000,000,000,000 n>storage ] unit-test
 | 
						|
[ "1T" ] [ 1,000,000,000,000 n>Storage ] unit-test
 | 
						|
[ "909Ti" ] [ 1,000,000,000,000,000 n>storage ] unit-test
 | 
						|
[ "1P" ] [ 1,000,000,000,000,000 n>Storage ] unit-test
 | 
						|
[ "888Pi" ] [ 1,000,000,000,000,000,000 n>storage ] unit-test
 | 
						|
[ "1E" ] [ 1,000,000,000,000,000,000 n>Storage ] unit-test
 | 
						|
[ "-1E" ] [ -1,000,000,000,000,000,000 n>Storage ] unit-test
 | 
						|
 | 
						|
: test-n>storage ( string -- string ) n>storage storage>n n>storage ;
 | 
						|
: test-n>Storage ( string -- string ) n>Storage storage>n n>Storage ;
 | 
						|
 | 
						|
[ "0Bi" ] [ 0 test-n>storage ] unit-test
 | 
						|
[ "0B" ] [ 0 test-n>Storage ] unit-test
 | 
						|
[ "0Bi" ] [ -0 test-n>storage ] unit-test
 | 
						|
[ "0B" ] [ -0 test-n>Storage ] unit-test
 | 
						|
[ "1000Bi" ] [ 1,000 test-n>storage ] unit-test
 | 
						|
[ "1K" ] [ 1,000 test-n>Storage ] unit-test
 | 
						|
[ "976Ki" ] [ 1,000,000 test-n>storage ] unit-test
 | 
						|
[ "1Mi" ] [ 2,000,000 test-n>storage ] unit-test
 | 
						|
[ "190Mi" ] [ 200,000,000 test-n>storage ] unit-test
 | 
						|
[ "1M" ] [ 1,000,000 test-n>Storage ] unit-test
 | 
						|
[ "953Mi" ] [ 1,000,000,000 test-n>storage ] unit-test
 | 
						|
[ "1G" ] [ 1,000,000,000 test-n>Storage ] unit-test
 | 
						|
[ "931Gi" ] [ 1,000,000,000,000 test-n>storage ] unit-test
 | 
						|
[ "1T" ] [ 1,000,000,000,000 test-n>Storage ] unit-test
 | 
						|
[ "909Ti" ] [ 1,000,000,000,000,000 test-n>storage ] unit-test
 | 
						|
[ "1P" ] [ 1,000,000,000,000,000 test-n>Storage ] unit-test
 | 
						|
[ "888Pi" ] [ 1,000,000,000,000,000,000 test-n>storage ] unit-test
 | 
						|
[ "1E" ] [ 1,000,000,000,000,000,000 test-n>Storage ] unit-test
 | 
						|
[ "-1E" ] [ -1,000,000,000,000,000,000 test-n>Storage ] unit-test
 | 
						|
 | 
						|
[ "abc" storage>n ] [ bad-storage-string?  ] must-fail-with
 | 
						|
[ "-abc" storage>n ] [ bad-storage-string?  ] must-fail-with
 | 
						|
[ "10" storage>n ] [ bad-storage-string?  ] must-fail-with
 | 
						|
[ "10b" storage>n ] [ bad-storage-string?  ] must-fail-with
 | 
						|
[ "10Mib" storage>n ] [ bad-storage-string?  ] must-fail-with
 | 
						|
[ "asdfBi" storage>n ] [ bad-storage-string?  ] must-fail-with
 | 
						|
[ "asdfB" storage>n ] [ bad-storage-string?  ] must-fail-with
 |