[jboss-jira] [JBoss JIRA] (DROOLS-1414) OOPath constraint bug3
Tibor Zimányi (JIRA)
issues at jboss.org
Mon May 29 07:21:00 EDT 2017
[ https://issues.jboss.org/browse/DROOLS-1414?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tibor Zimányi updated DROOLS-1414:
----------------------------------
Labels: oopath (was: )
> OOPath constraint bug3
> ----------------------
>
> Key: DROOLS-1414
> URL: https://issues.jboss.org/browse/DROOLS-1414
> Project: Drools
> Issue Type: Sub-task
> Reporter: Matteo Mortari
> Assignee: Mario Fusco
> Labels: oopath
>
> {code:java}
> @Test
> public void testWronglyMatchAlsoEqualsTris() {
> String drl =
> "import org.drools.compiler.xpath.*;\n" +
> "global java.util.Set duplicateNames; \n" +
> "\n" +
> "rule DIFF_FILES_BUT_WITH_SAME_FILENAME when\n" +
> " $ic1 : TMFileWithParentObj( parent instanceof TMFileSet ,\n" +
> " $curName : name,\n" +
> " $ic2: /parent{#TMFileSet}/files{name == $curName, this != $ic1 } )\n" +
> "then\n" +
> " System.out.println( $ic1 + \" \" + $ic2 );\n" +
> " duplicateNames.add( $ic1.getName() );\n" +
> "end\n";
> KieSession ksession = new KieHelper().addContent( drl, ResourceType.DRL )
> .build()
> .newKieSession();
>
> Set duplicateNames = new HashSet();
> ksession.setGlobal("duplicateNames", duplicateNames);
>
> TMFileSet x = new TMFileSet("X");
> TMFileWithParentObj file0 = new TMFileWithParentObj(0, "File0", 47, x);
> TMFileWithParentObj file1 = new TMFileWithParentObj(1, "File1", 47, x);
> TMFileWithParentObj file2 = new TMFileWithParentObj(2, "File0", 47, x);
> x.getFiles().addAll(Arrays.asList(new TMFile[]{file0, file1, file2}));
>
> ksession.insert( x );
> ksession.insert( file0 );
> ksession.insert( file1 );
> ksession.insert( file2 );
> ksession.fireAllRules();
>
> assertTrue( duplicateNames.contains("File0") );
> assertFalse( duplicateNames.contains("File1") );
> }
> {code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
More information about the jboss-jira
mailing list