2009-07-30 5 views
3

J'ai écrit quelques règles de Drools pour mon application Seam et je me demande comment je vais tester ces unités. Est-ce que quelqu'un a un exemple de code qui peut me montrer comment s'y prendre?Comment testez-vous les règles Jboss Rules (Drools)?

+0

J'ai fait compris cela pour moi-même. Je voulais juste contribuer à la question, et aussi la réponse au site pour quiconque s'interroge à ce sujet. –

+1

alors répondez à votre propre question. Vous pourriez obtenir un badge d'auto-apprenant;) –

+0

@samuelcarrijo - Je voulais dire, juste oublié. Merci pour le rappel;) –

Répondre

5

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

maintenant marquer comme une réponse, et vous obtenez un badge brillant – skaffman

+0

Je dois attendre 2 jours avant que je peux le faire;) –

Questions connexes