65 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Factor
		
	
	
IN: porter-stemmer.tests
 | 
						|
USING: arrays io kernel porter-stemmer sequences tools.test
 | 
						|
io.files io.encodings.utf8 ;
 | 
						|
 | 
						|
{ 0 } [ "xa" consonant-seq ] unit-test
 | 
						|
{ 0 } [ "xxaa" consonant-seq ] unit-test
 | 
						|
{ 1 } [ "xaxa" consonant-seq ] unit-test
 | 
						|
{ 2 } [ "xaxaxa" consonant-seq ] unit-test
 | 
						|
{ 3 } [ "xaxaxaxa" consonant-seq ] unit-test
 | 
						|
{ 3 } [ "zzzzxaxaxaxaeee" consonant-seq ] unit-test
 | 
						|
 | 
						|
{ t } [ 0 "fish" consonant? ] unit-test
 | 
						|
{ f } [ 0 "and" consonant? ] unit-test
 | 
						|
{ t } [ 0 "yes" consonant? ] unit-test
 | 
						|
{ f } [ 1 "gym" consonant? ] unit-test
 | 
						|
 | 
						|
{ t } [ 5 "splitting" double-consonant? ] unit-test
 | 
						|
{ f } [ 2 "feel" double-consonant? ] unit-test
 | 
						|
 | 
						|
{ f } [ "xxxz" stem-vowel? ] unit-test
 | 
						|
{ t } [ "baobab" stem-vowel? ] unit-test
 | 
						|
 | 
						|
{ t } [ "hop" cvc? ] unit-test
 | 
						|
{ t } [ "cav" cvc? ] unit-test
 | 
						|
{ t } [ "lov" cvc? ] unit-test
 | 
						|
{ t } [ "crim" cvc? ] unit-test
 | 
						|
{ f } [ "show" cvc? ] unit-test
 | 
						|
{ f } [ "box" cvc? ] unit-test
 | 
						|
{ f } [ "tray" cvc? ] unit-test
 | 
						|
{ f } [ "meet" cvc? ] unit-test
 | 
						|
 | 
						|
{ "caress" } [ "caresses" step1a step1b "" like ] unit-test
 | 
						|
{ "poni" } [ "ponies" step1a step1b "" like ] unit-test
 | 
						|
{ "ti" } [ "ties" step1a step1b "" like ] unit-test
 | 
						|
{ "caress" } [ "caress" step1a step1b "" like ] unit-test
 | 
						|
{ "cat" } [ "cats" step1a step1b "" like ] unit-test
 | 
						|
{ "feed" } [ "feed" step1a step1b "" like ] unit-test
 | 
						|
{ "agree" } [ "agreed" step1a step1b "" like ] unit-test
 | 
						|
{ "disable" } [ "disabled" step1a step1b "" like ] unit-test
 | 
						|
{ "mat" } [ "matting" step1a step1b "" like ] unit-test
 | 
						|
{ "mate" } [ "mating" step1a step1b "" like ] unit-test
 | 
						|
{ "meet" } [ "meeting" step1a step1b "" like ] unit-test
 | 
						|
{ "mill" } [ "milling" step1a step1b "" like ] unit-test
 | 
						|
{ "mess" } [ "messing" step1a step1b "" like ] unit-test
 | 
						|
{ "meet" } [ "meetings" step1a step1b "" like ] unit-test
 | 
						|
 | 
						|
{ "fishi" } [ "fishy" step1c ] unit-test
 | 
						|
{ "by" } [ "by" step1c ] unit-test
 | 
						|
 | 
						|
{ "realizat" } [ "realization" step4 ] unit-test
 | 
						|
{ "ion" } [ "ion" step4 ] unit-test
 | 
						|
{ "able" } [ "able" step4 ] unit-test
 | 
						|
 | 
						|
{ "fear" } [ "feare" step5 "" like ] unit-test
 | 
						|
{ "mate" } [ "mate" step5 "" like ] unit-test
 | 
						|
{ "hell" } [ "hell" step5 "" like ] unit-test
 | 
						|
{ "mate" } [ "mate" step5 "" like ] unit-test
 | 
						|
 | 
						|
{ { } } [
 | 
						|
    "vocab:porter-stemmer/test/voc.txt" utf8 file-lines
 | 
						|
    [ stem ] map
 | 
						|
    "vocab:porter-stemmer/test/output.txt" utf8 file-lines
 | 
						|
    [ 2array ] 2map [ first2 = ] reject
 | 
						|
] unit-test
 |