[jboss-svn-commits] JBL Code SVN: r11665 - in labs/jbossrules/trunk: drools-compiler/src/test/java/org/drools/integrationtests and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu May 3 21:35:33 EDT 2007
Author: tirelli
Date: 2007-05-03 21:35:33 -0400 (Thu, 03 May 2007)
New Revision: 11665
Added:
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_contains_in_array.drl
Modified:
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/Primitives.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ValueType.java
Log:
JBRULES-805: fixing array verification
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/Primitives.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/Primitives.java 2007-05-04 01:28:42 UTC (rev 11664)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/Primitives.java 2007-05-04 01:35:33 UTC (rev 11665)
@@ -30,6 +30,7 @@
private float doublePrimitive;
private Object[] arrayAttribute;
private int[] primitiveArrayAttribute;
+ private String[] stringArray;
public boolean isBooleanPrimitive() {
return this.booleanPrimitive;
@@ -117,4 +118,12 @@
this.primitiveArrayAttribute = primitiveArrayAttribute;
}
+ public String[] getStringArray() {
+ return stringArray;
+ }
+
+ public void setStringArray(String[] stringArray) {
+ this.stringArray = stringArray;
+ }
+
}
\ 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 2007-05-04 01:28:42 UTC (rev 11664)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java 2007-05-04 01:35:33 UTC (rev 11665)
@@ -2513,4 +2513,31 @@
list.get( 1 ) );
}
+ public void testContainsInArray() throws Exception {
+ final PackageBuilder builder = new PackageBuilder();
+ builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "test_contains_in_array.drl" ) ) );
+ final Package pkg = builder.getPackage();
+
+ final RuleBase ruleBase = getRuleBase();
+ ruleBase.addPackage( pkg );
+ final WorkingMemory workingMemory = ruleBase.newStatefulSession();
+
+ final List list = new ArrayList();
+ workingMemory.setGlobal( "list",
+ list );
+
+ final Primitives p = new Primitives( );
+ p.setStringArray( new String[] { "test1", "test3" } );
+ workingMemory.assertObject( p );
+
+ workingMemory.fireAllRules();
+
+ assertEquals( 2,
+ list.size() );
+
+ assertEquals( "ok1",
+ list.get( 0 ) );
+ assertEquals( "ok2",
+ list.get( 1 ) );
+ }
}
\ No newline at end of file
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_contains_in_array.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_contains_in_array.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_contains_in_array.drl 2007-05-04 01:35:33 UTC (rev 11665)
@@ -0,0 +1,18 @@
+package org.drools;
+
+global java.util.List list;
+
+rule "contains in array"
+ salience 10
+ when
+ Primitives( stringArray contains "test1" )
+ then
+ list.add( "ok1" );
+end
+
+rule "excludes in array"
+ when
+ Primitives( stringArray excludes "test2" )
+ then
+ list.add( "ok2" );
+end
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ValueType.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ValueType.java 2007-05-04 01:28:42 UTC (rev 11664)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/ValueType.java 2007-05-04 01:35:33 UTC (rev 11665)
@@ -208,7 +208,7 @@
return ValueType.DATE_TYPE;
} else if ( clazz == java.util.Date.class ) {
return ValueType.DATE_TYPE;
- } else if ( clazz.isAssignableFrom( Object[].class ) ) {
+ } else if ( clazz.isArray() ) {
return ValueType.ARRAY_TYPE;
} else if ( clazz == BigDecimal.class ) {
return ValueType.BIG_DECIMAL_TYPE;
More information about the jboss-svn-commits
mailing list