我想为我的规则文件做junit。我的规则文件大致有两件事:
- 一条规则
- 我从规则的那部分调用的辅助函数(在 drools 中,而不是 Java 中)
现在我想根据测试用例单独测试(断言)这个函数。有没有办法做到这一点?
function void print(String string){
System.out.println(string);
return true;
}
rule "XXYJK"
dialect "mvel"
salience 10
when
objofTheclass : exampleClass() eval
(
objofTheclass.isKeyMatched("XXYJK")
)
then
print("XXYJK");
end
现在我可以像这样从 java 代码中调用这个规则。
statelessSession.setAgendaFilter(new RuleNameEqualsAgendaFilter("XXYJK"));
statelessSession.executeWithResults(rulesEngineParameters);
现在我想做类似的事情而不调用规则本身或执行整个 drl 文件。只有我想调用的 print() 函数。