[jboss-jira] [JBoss JIRA] (DROOLS-4979) Support static method invocation in accumulate
Mario Fusco (Jira)
issues at jboss.org
Mon Jan 27 06:35:32 EST 2020
[ https://issues.redhat.com/browse/DROOLS-4979?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mario Fusco updated DROOLS-4979:
--------------------------------
Description:
{code:java}
@Test
public void testAccumulateOfDurationBetweenDateTime() {
final String drl =
"import java.time.Duration\n" +
"import " + Interval.class.getCanonicalName() + ";\n" +
"global java.util.List result; \n" +
"\n" +
"rule \"Rule1\"\n" +
"when\n" +
" $count : Number() from accumulate(\n" +
" Interval($start : start, $end : end), " +
" sum(Duration.between($start, $end).toMinutes()) " +
" ) " +
"then\n" +
" result.add($count);\n" +
"end\n";
List<Long> result = new ArrayList<>();
KieSession ksession = getKieSession(drl);
ksession.setGlobal("result", result);
ksession.insert(new Interval(
LocalDateTime.of(2020, 1, 22, 11, 43),
LocalDateTime.of(2020, 1, 22, 12, 43)
));
ksession.fireAllRules();
assertEquals(60, result.iterator().next().longValue());
}
{code}
was:
{code:java}
@Test
public void testAccumulateOfDurationBetweenDateTime() {
final String drl =
"import java.time.Duration\n" +
"import " + Interval.class.getCanonicalName() + ";\n" +
"global java.util.List result; \n" +
"\n" +
"rule \"Rule1\"\n" +
"when\n" +
" $count : Number() from accumulate(\n" +
" Interval($start : start, $end : end), " +
" sum(Duration.between($start, $end).toMinutes()) " +
" ) " +
"then\n" +
" result.add($count);\n" +
"end\n";
List<Long> result = new ArrayList<>();
KieSession ksession = getKieSession(drl);
ksession.setGlobal("result", result);
ksession.insert(new Interval(
LocalDateTime.of(2020, 1, 22, 11, 43),
LocalDateTime.of(2020, 1, 22, 12, 43)
));
ksession.fireAllRules();
assertEquals(60, result.iterator().next().longValue());
}
{code}
Sprint: 2020 Week 04-06 (from Jan 20)
> Support static method invocation in accumulate
> ----------------------------------------------
>
> Key: DROOLS-4979
> URL: https://issues.redhat.com/browse/DROOLS-4979
> Project: Drools
> Issue Type: Bug
> Reporter: Luca Molteni
> Assignee: Mario Fusco
> Priority: Major
>
> {code:java}
> @Test
> public void testAccumulateOfDurationBetweenDateTime() {
> final String drl =
> "import java.time.Duration\n" +
> "import " + Interval.class.getCanonicalName() + ";\n" +
> "global java.util.List result; \n" +
> "\n" +
> "rule \"Rule1\"\n" +
> "when\n" +
> " $count : Number() from accumulate(\n" +
> " Interval($start : start, $end : end), " +
> " sum(Duration.between($start, $end).toMinutes()) " +
> " ) " +
> "then\n" +
> " result.add($count);\n" +
> "end\n";
> List<Long> result = new ArrayList<>();
> KieSession ksession = getKieSession(drl);
> ksession.setGlobal("result", result);
> ksession.insert(new Interval(
> LocalDateTime.of(2020, 1, 22, 11, 43),
> LocalDateTime.of(2020, 1, 22, 12, 43)
> ));
> ksession.fireAllRules();
> assertEquals(60, result.iterator().next().longValue());
> }
> {code}
>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
More information about the jboss-jira
mailing list