Question

J'ai écrit quelques règles Drools pour mon application Seam et je me demande comment procéder pour les tester à l'unité. Quelqu'un a-t-il un exemple de code pouvant me montrer comment s'y prendre?

Était-ce utile?

La solution

Ajoutez le code suivant à un test unitaire (JUnit, TestNG, etc.):

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();

Autres conseils

Envisagez de tester le "sucre" avec une TestRule bibliothèque Junit.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top