[jboss-svn-commits] JBL Code SVN: r28549 - in labs/jbossrules/trunk/drools-compiler/src/test: java/org/drools/integrationtests and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Jul 28 18:13:17 EDT 2009
Author: tirelli
Date: 2009-07-28 18:13:16 -0400 (Tue, 28 Jul 2009)
New Revision: 28549
Added:
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_ConstraintConnectorOr.drl
Modified:
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/Person.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
Log:
Adding integration test
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/Person.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/Person.java 2009-07-28 22:09:11 UTC (rev 28548)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/Person.java 2009-07-28 22:13:16 UTC (rev 28549)
@@ -24,39 +24,40 @@
private char sex;
private boolean alive;
+ private boolean happy;
private String status;
private Cheese cheese;
- private List<Address> addresses = new ArrayList<Address>();
+ private List<Address> addresses = new ArrayList<Address>();
-// public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
-// name = (String)in.readObject();
-// likes = (String)in.readObject();
-// age = in.readInt();
-// bigDecimal = (BigDecimal)in.readObject();
-// bigInteger = (BigInteger)in.readObject();
-// hair = (String)in.readObject();
-// sex = in.readChar();
-// alive = in.readBoolean();
-// status = (String)in.readObject();
-// cheese = (Cheese)in.readObject();
-// addresses = (List)in.readObject();
-// }
-//
-// public void writeExternal(ObjectOutput out) throws IOException {
-// out.writeObject(name);
-// out.writeObject(likes);
-// out.writeObject(bigDecimal);
-// out.writeObject(bigInteger);
-// out.writeObject(hair);
-// out.writeChar(sex);
-// out.writeBoolean(alive);
-// out.writeObject(status);
-// out.writeObject(cheese);
-// out.writeObject(addresses);
-// }
+ // public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+ // name = (String)in.readObject();
+ // likes = (String)in.readObject();
+ // age = in.readInt();
+ // bigDecimal = (BigDecimal)in.readObject();
+ // bigInteger = (BigInteger)in.readObject();
+ // hair = (String)in.readObject();
+ // sex = in.readChar();
+ // alive = in.readBoolean();
+ // status = (String)in.readObject();
+ // cheese = (Cheese)in.readObject();
+ // addresses = (List)in.readObject();
+ // }
+ //
+ // public void writeExternal(ObjectOutput out) throws IOException {
+ // out.writeObject(name);
+ // out.writeObject(likes);
+ // out.writeObject(bigDecimal);
+ // out.writeObject(bigInteger);
+ // out.writeObject(hair);
+ // out.writeChar(sex);
+ // out.writeBoolean(alive);
+ // out.writeObject(status);
+ // out.writeObject(cheese);
+ // out.writeObject(addresses);
+ // }
public Person() {
@@ -82,8 +83,8 @@
public void setAddresses(List<Address> addresses) {
this.addresses = addresses;
}
-
- public void addAddress( Address address ) {
+
+ public void addAddress(Address address) {
this.addresses.add( address );
}
@@ -271,4 +272,12 @@
this.cheese = cheese;
}
+ public boolean isHappy() {
+ return happy;
+ }
+
+ public void setHappy(boolean happy) {
+ this.happy = happy;
+ }
+
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java 2009-07-28 22:09:11 UTC (rev 28548)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java 2009-07-28 22:13:16 UTC (rev 28549)
@@ -4392,6 +4392,48 @@
results.get( 3 ) );
}
+ public void testConstraintConnectorOr() throws Exception {
+ final KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
+ kbuilder.add( ResourceFactory.newInputStreamResource( getClass().getResourceAsStream( "test_ConstraintConnectorOr.drl" ) ),
+ ResourceType.DRL );
+ assertFalse( kbuilder.getErrors().toString(), kbuilder.hasErrors() );
+
+ KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
+ kbase.addKnowledgePackages( kbuilder.getKnowledgePackages() );
+
+ StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
+ List<Person> results = new ArrayList<Person>();
+ ksession.setGlobal( "results", results );
+
+ final Person mark = new Person( "Mark" );
+ mark.setAlive( true );
+ mark.setHappy( true );
+
+ final Person bush = new Person( "Bush" );
+ bush.setAlive( true );
+ bush.setHappy( false );
+
+ final Person conan = new Person( "Conan" );
+ conan.setAlive( false );
+ conan.setHappy( true );
+
+ final Person nero = new Person( "Nero" );
+ nero.setAlive( false );
+ nero.setHappy( false );
+
+ ksession.insert( mark );
+ ksession.insert( bush );
+ ksession.insert( conan );
+ ksession.insert( nero );
+
+ ksession.fireAllRules();
+
+ assertEquals( 3, results.size() );
+ assertTrue( results.contains( mark ) );
+ assertTrue( results.contains( bush ) );
+ assertTrue( results.contains( conan ) );
+ }
+
public void testMatchesNotMatchesCheese() throws Exception {
final PackageBuilder builder = new PackageBuilder();
builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "test_MatchesNotMatches.drl" ) ) );
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_ConstraintConnectorOr.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_ConstraintConnectorOr.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_ConstraintConnectorOr.drl 2009-07-28 22:13:16 UTC (rev 28549)
@@ -0,0 +1,10 @@
+package org.drools
+
+global java.util.List results
+
+rule "Simple || operator"
+ when
+ $person : Person( alive == true || happy == true )
+ then
+ results.add( $person );
+end
More information about the jboss-svn-commits
mailing list