[jboss-svn-commits] JBL Code SVN: r9455 - in labs/jbossrules/trunk/drools-core/src/test/java/org: codehaus and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Feb 12 15:22:18 EST 2007


Author: tirelli
Date: 2007-02-12 15:22:18 -0500 (Mon, 12 Feb 2007)
New Revision: 9455

Added:
   labs/jbossrules/trunk/drools-core/src/test/java/org/codehaus/
   labs/jbossrules/trunk/drools-core/src/test/java/org/codehaus/jfdi/
   labs/jbossrules/trunk/drools-core/src/test/java/org/codehaus/jfdi/interpreter/
   labs/jbossrules/trunk/drools-core/src/test/java/org/codehaus/jfdi/interpreter/ClassTypeResolverTest.java
Log:
JBRULES-659: adding test case for class type resolver as contributed by Frederic Burlet

Added: labs/jbossrules/trunk/drools-core/src/test/java/org/codehaus/jfdi/interpreter/ClassTypeResolverTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/codehaus/jfdi/interpreter/ClassTypeResolverTest.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/codehaus/jfdi/interpreter/ClassTypeResolverTest.java	2007-02-12 20:22:18 UTC (rev 9455)
@@ -0,0 +1,114 @@
+/**
+ * 
+ */
+package org.codehaus.jfdi.interpreter;
+
+import java.util.ArrayList;
+
+import junit.framework.TestCase;
+
+import org.drools.Cheese;
+
+/**
+ * @author fburlet
+ *
+ */
+public class ClassTypeResolverTest extends TestCase {
+    
+    public void testResolvePrimtiveTypes() throws Exception {
+        ClassTypeResolver resolver = new ClassTypeResolver();
+        assertEquals(boolean.class, resolver.resolveType("boolean"));
+        assertEquals(double.class, resolver.resolveType("double"));
+        assertEquals(float.class, resolver.resolveType("float"));
+        assertEquals(int.class, resolver.resolveType("int"));
+        assertEquals(char.class, resolver.resolveType("char"));
+        assertEquals(long.class, resolver.resolveType("long"));
+        assertEquals(byte.class, resolver.resolveType("byte"));
+        assertEquals(short.class, resolver.resolveType("short"));
+    }
+    
+    public void testResolveArrayOfPrimitiveTypes() throws Exception {
+        ClassTypeResolver resolver = new ClassTypeResolver();
+        assertEquals(boolean[].class, resolver.resolveType("boolean[]"));
+        assertEquals(double[].class, resolver.resolveType("double[]"));
+        assertEquals(float[].class, resolver.resolveType("float[]"));
+        assertEquals(int[].class, resolver.resolveType("int[]"));
+        assertEquals(char[].class, resolver.resolveType("char[]"));
+        assertEquals(long[].class, resolver.resolveType("long[]"));
+        assertEquals(byte[].class, resolver.resolveType("byte[]"));
+        assertEquals(short[].class, resolver.resolveType("short[]"));
+    }
+    
+    public void testResolveMultidimensionnalArrayOfPrimitiveTypes() throws Exception {
+        ClassTypeResolver resolver = new ClassTypeResolver(); 
+        assertEquals(int[][].class, resolver.resolveType("int[][]"));
+        assertEquals(int[][][].class, resolver.resolveType("int[][][]"));
+        assertEquals(int[][][][].class, resolver.resolveType("int[][][][]"));
+    }
+    
+    public void testResolveObjectNotFromImport() throws Exception {
+        ClassTypeResolver resolver = new ClassTypeResolver();
+        assertEquals(String.class, resolver.resolveType("String"));
+        assertEquals(String.class, resolver.resolveType("java.lang.String"));
+        try {
+            assertEquals(Cheese.class, resolver.resolveType("Cheese"));
+            fail("Should raise a ClassNotFoundException");
+        } catch ( ClassNotFoundException e ) {
+            // success
+        }
+        assertEquals(Cheese.class, resolver.resolveType("org.drools.Cheese"));
+    }
+    
+    public void testResolveObjectFromImport() throws Exception {
+        ClassTypeResolver resolver = new ClassTypeResolver(new ArrayList());
+        resolver.addImport("org.drools.Cheese");
+        assertEquals(String.class, resolver.resolveType("String"));
+        assertEquals(String.class, resolver.resolveType("java.lang.String"));
+        assertEquals(Cheese.class, resolver.resolveType("Cheese"));
+        assertEquals(Cheese.class, resolver.resolveType("org.drools.Cheese"));
+    }
+    
+    public void testResolveArrayOfObjectsNotFromImport() throws Exception {
+        ClassTypeResolver resolver = new ClassTypeResolver();
+        assertEquals(String[].class, resolver.resolveType("String[]"));
+        assertEquals(String[].class, resolver.resolveType("java.lang.String[]"));
+        try {
+            assertEquals(Cheese[].class, resolver.resolveType("Cheese[]"));
+            fail("Should raise a ClassNotFoundException");
+        } catch ( ClassNotFoundException e ) {
+            // success
+        }
+        assertEquals(Cheese[].class, resolver.resolveType("org.drools.Cheese[]"));
+    }
+    
+    public void testResolveArrayOfObjectsFromImport() throws Exception {
+        ClassTypeResolver resolver = new ClassTypeResolver(new ArrayList());
+        resolver.addImport("org.drools.Cheese");
+        assertEquals(String[].class, resolver.resolveType("String[]"));
+        assertEquals(String[].class, resolver.resolveType("java.lang.String[]"));
+        assertEquals(Cheese[].class, resolver.resolveType("Cheese[]"));
+        assertEquals(Cheese[].class, resolver.resolveType("org.drools.Cheese[]"));
+    }
+    
+    public void testResolveMultidimensionnalArrayOfObjectsNotFromImport() throws Exception {
+        ClassTypeResolver resolver = new ClassTypeResolver();
+        assertEquals(String[][].class, resolver.resolveType("String[][]"));
+        assertEquals(String[][].class, resolver.resolveType("java.lang.String[][]"));
+        try {
+            assertEquals(Cheese[][].class, resolver.resolveType("Cheese[][]"));
+            fail("Should raise a ClassNotFoundException");
+        } catch ( ClassNotFoundException e ) {
+            // success
+        }
+        assertEquals(Cheese[][].class, resolver.resolveType("org.drools.Cheese[][]"));
+    }
+    
+    public void testResolveMultidimensionnalArrayOfObjectsFromImport() throws Exception {
+        ClassTypeResolver resolver = new ClassTypeResolver(new ArrayList());
+        resolver.addImport("org.drools.Cheese");
+        assertEquals(String[][].class, resolver.resolveType("String[][]"));
+        assertEquals(String[][].class, resolver.resolveType("java.lang.String[][]"));
+        assertEquals(Cheese[][].class, resolver.resolveType("Cheese[][]"));
+        assertEquals(Cheese[][].class, resolver.resolveType("org.drools.Cheese[][]"));
+    }
+}


Property changes on: labs/jbossrules/trunk/drools-core/src/test/java/org/codehaus/jfdi/interpreter/ClassTypeResolverTest.java
___________________________________________________________________
Name: svn:keywords
   + id author date revision
Name: svn:eol-style
   + native




More information about the jboss-svn-commits mailing list