litesoft
@ 939
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
// This Source Code is in the Public Domain per: http://litesoft.org/License.txt package org.litesoft.core.util.stringmatching; import junit.framework.*; import org.litesoft.*; import org.litesoft.commonfoundation.stringmatching.*; import org.litesoft.commonfoundation.typeutils.*; public class StringMatcherTest extends TestCasePlus { public static TestSuite suite() { return new TestSuite( StringMatcherTest.class ); } public StringMatcherTest( String name ) { super( name ); } public static void main( String[] args ) { junit.textui.TestRunner.run( suite() ); } public void testIt() throws Exception { Assert.assertNull( "Empty String", StringMatcherFactory.createEquals( "" ) ); Assert.assertNull( "Empty String", StringMatcherFactory.createStartsWith( "" ) ); Assert.assertNull( "Empty Strings", StringMatcherFactory.createEquals( "", "" ) ); Assert.assertNull( "Empty Strings", StringMatcherFactory.createStartsWith( "", "" ) ); LLtest( StringMatcherFactory.createEquals( "Test" ), "Test2", "Test" ); LLtest( StringMatcherFactory.createStartsWith( "Test" ), "!Test", "Test2", "Test" ); LLtest( "Test", "Test2", "Test" ); LLtest( "BA*AB", "BAB", "BAAB", "BA-AB" ); LLtest( "*AB", "BABA", "AB", "BAB", "BAAB", "BA-AB" ); LLtest( "BA*", "ABAB", "BA", "BAB", "BAAB", "BA-AB" ); LLtest( "BA*A*", "BAB", "BAA", "BAAB", "BA-AB" ); LLtest( "BA*B*", "BAA", "BA-B", "BABA", "BA-BA" ); LLtest( "B*R*A*T", "BRATS", "BRAT", "BRA-T", "BR-A-T", "B-R-A-T", "B-R-AT", "B-RAT", "BR-AT" ); LLtest( "*B*R*A*T*", "BraT", // "BRAT", "BRA-T", "BR-A-T", "B-R-A-T", "B-R-AT", "B-RAT", "BR-AT", // "!BRAT", "!BRA-T", "!BR-A-T", "!B-R-A-T", "!B-R-AT", "!B-RAT", "!BR-AT", // "BRAT!", "BRA-T!", "BR-A-T!", "B-R-A-T!", "B-R-AT!", "B-RAT!", "BR-AT!", // "!BRAT!", "!BRA-T!", "!BR-A-T!", "!B-R-A-T!", "!B-R-AT!", "!B-RAT!", "!BR-AT!" ); } private void LLtest( String pPattern, String pFalseStr, String... pTrueStrs ) { LLtest( StringMatcherFactory.createEquals( Strings.parseChar( pPattern, '*' ) ), pFalseStr, pTrueStrs ); } private void LLtest( StringMatcher zSM, String pFalseStr, String... pTrueStrs ) { if ( zSM.matches( pFalseStr ) ) { Assert.fail( "Expected '" + pFalseStr + "' to not match with: " + zSM ); } for ( String zTrueStr : pTrueStrs ) { if ( !zSM.matches( zTrueStr ) ) { Assert.fail( "Expected '" + zTrueStr + "' to match with: " + zSM ); } } } } |