KnowledgeBuilderResults kbResults = kbuilder.getResults(ResultSeverity.WARNING); for (KnowledgeBuilderResult nextResult: kbResults) { fail(nextResult.getMessage());
@Test public void testIsGetClash() { // DROOLS-18 String str = "import org.drools.compiler.integrationtests.Misc2Test.Foo3;\n" + "" + "global java.util.List list;" + "\n" + "" + "rule \"Init\" when\n" + " $x : Foo3( x == true, y == true, z == \"ok\", isZ() == true ) \n" + "then\n" + " list.add( \"ok\" ); \n" + "end\n" + ""; KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(); kbuilder.add( ResourceFactory.newByteArrayResource( str.getBytes() ), ResourceType.DRL ); if ( kbuilder.hasErrors() ) { fail( kbuilder.getErrors().toString() ); } assertEquals( 2, kbuilder.getResults( ResultSeverity.WARNING ).size() ); for ( KnowledgeBuilderResult res : kbuilder.getResults( ResultSeverity.WARNING ) ) { System.out.println( res.getMessage() ); } }
@Test public void testDontFailOnDuplicatedRuleWithDeclaredTypeError() { String rule1 = "rule \"Some Rule\"\n" + "when\n" + " $s: String()\n" + "then\n" + "end"; String rule2 = "declare DClass\n" + " prop : String\n" + "end\n" + "rule \"Some Rule\"\n" + "when\n" + " $d: DClass()\n" + "then\n" + "end"; KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(); kbuilder.add( ResourceFactory.newByteArrayResource( rule1.getBytes() ), ResourceType.DRL ); kbuilder.add( ResourceFactory.newByteArrayResource( rule2.getBytes() ), ResourceType.DRL ); //the default behavior of kbuilder is not to fail because of duplicated //rules. if ( kbuilder.hasErrors() ) { fail( kbuilder.getErrors().toString() ); } //We must have 1 INFO result. KnowledgeBuilderResults infos = kbuilder.getResults( ResultSeverity.INFO ); assertNotNull( infos ); assertEquals( 1, infos.size() ); }
@Test public void testNoAnnotationUpdateIfError(){ String str1 = ""; str1 += "package org.drools.compiler \n" + "declare org.drools.EventA \n" + " name : String \n" + " duration : Long \n" + "end \n"; String str2 = ""; str2 += "package org.drools.compiler \n" + "declare org.drools.EventA \n" + " @role (event) \n" + " @duration (duration) \n" + " anotherField : String \n" + "end \n"; KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(); kbuilder.add( ResourceFactory.newByteArrayResource(str1.getBytes()), ResourceType.DRL ); kbuilder.add( ResourceFactory.newByteArrayResource( str2.getBytes() ), ResourceType.DRL ); if (!kbuilder.hasErrors() ) { fail("Errors Expected"); } //No Warnings KnowledgeBuilderResults warnings = kbuilder.getResults(ResultSeverity.WARNING); assertEquals(0, warnings.size()); //just 1 package was created assertEquals(0, kbuilder.getKnowledgePackages().size()); }
KnowledgeBuilderResults warnings = kbuilder.getResults(ResultSeverity.WARNING); Assert.assertEquals(0, warnings.size());
KnowledgeBuilderResults kbResults = kbuilder.getResults(ResultSeverity.WARNING); for (KnowledgeBuilderResult nextResult: kbResults) { fail(nextResult.getMessage());