@Test public void testExpandSpaces() throws IOException { DSLMappingEntry entry = this.setupEntry(); DefaultExpander ex = makeExpander( entry ); String[] strs = new String[]{ "0_sp", " 1_sp", " 3_sp", "0_sp_1 ", "0_sp_3 ", "0_sp 1_sp 2_sp", " 3_sp 3_sp 1_sp 1_sp_2 " }; StringBuilder sb = new StringBuilder( "rule x\n" + "when\n" ); for( String str: strs ){ sb.append( "String is \"" + str + "\"" + NL ); } sb.append( "then\n" + "end\n" ); String dslr = sb.toString(); String drl = ex.expand( dslr ); for( String str: strs ){ assertTrue( drl.contains( '"' + str + '"' ) ); } }
@Test public void testExpandWithDots() throws IOException { DSLMappingEntry entry1 = this.createEntry( "- {prop} is not {val} ", "{prop} != {val}" ); DSLMappingEntry entry2 = this.createEntry( "- {prop} is {val} ", "{prop} == {val}" ); DSLMappingEntry entry3 = this.createEntry( "- {prop} is_not {val} ", "{prop} != {val}" ); DefaultExpander ex = makeExpander( entry1, entry2, entry3 ); StringBuilder sb = new StringBuilder( "rule x\n" ).append( "when\n" ); sb.append( "> Foo()").append( NL ); sb.append( "- type1 is ClientServiceType.TypeGOLD" ).append( NL ); sb.append( "- type2 is_not ClientServiceType.TypeGOLD" ).append( NL ); sb.append( "- type3 is not ClientServiceType.TypeGOLD" ).append( NL ); sb.append( "then\n" ).append( "end\n" ); String dslr = sb.toString(); String drl = ex.expand( dslr ); System.out.println( dslr ); System.out.println( drl ); assertTrue( "failure type1", drl.contains( "type1 == ClientServiceType.TypeGOLD" ) ); assertTrue( "failure type2", drl.contains( "type2 != ClientServiceType.TypeGOLD" ) ); assertTrue( "failure type3", drl.contains( "type3 != ClientServiceType.TypeGOLD" ) ); }
entry7.getValuePattern()); DefaultExpander ex = makeExpander( entry1, entry2, entry3, entry4, entry5, entry6, entry7 ); StringBuilder sb = new StringBuilder( "rule x\n" ).append( "when\n" );