你如何对Jboss Rules(Drools)规则进行单元测试?

Aar*_*ers 4 unit-testing seam jboss-rules drools

我已经为我的Seam应用程序编写了一些Drools规则,我想知道我是如何进行单元测试的.有没有人有任何示例代码可以告诉我如何去做这个?

Aar*_*ers 5

将以下代码添加到单元测试(JUnit,TestNG等):

PackageBuilder builder = new PackageBuilder();

builder.addPackageFromDrl(new InputStreamReader(getClass().getResourceAsStream( "rules.drl")));

PackageBuilderErrors errors = builder.getErrors();

Assert.assertEquals(0, errors.getErrors().length);

RuleBase ruleBase  = RuleBaseFactory.newRuleBase();
ruleBase.addPackage(pkg);

StatefullSession session = ruleBase.newStatefulSession(false);

MyFactObject myFact = new MyFactObject();

session.insert(myFact);
session.fireAllRules();
Run Code Online (Sandbox Code Playgroud)