OW2 Consortium
Search OW2 Mail Archive: 

Advanced Search - Powered by Google


Mail Archive Home | fractal-commits List | June 2008 Index

<--  Date Index  --> <--  Thread Index  -->

[fractal-commits] [8004] sandbox/merle/fractal-generics/java/src/test/java/org/objectweb/ fractal/java/TestForName.java:* Add test_valid_class_name_4 and test_bad_generic_parameter_2 methods


Title: [8004] sandbox/merle/fractal-generics/java/src/test/java/org/objectweb/fractal/java/TestForName.java: * Add test_valid_class_name_4 and test_bad_generic_parameter_2 methods
Revision
8004
Author
merle
Date
2008-06-30 17:55:25 +0200 (Mon, 30 Jun 2008)

Log Message

* Add test_valid_class_name_4 and test_bad_generic_parameter_2 methods
  to check if recursive generic parameters are supported.
  Thanks to Denis Conan for pointing this bug out.

* Add new testValidClassName and testInvalidClassName methods to factorize tests.

Modified Paths

Diff

Modified: sandbox/merle/fractal-generics/java/src/test/java/org/objectweb/fractal/java/TestForName.java (8003 => 8004)


--- sandbox/merle/fractal-generics/java/src/test/java/org/objectweb/fractal/java/TestForName.java	2008-06-30 15:54:14 UTC (rev 8003)
+++ sandbox/merle/fractal-generics/java/src/test/java/org/objectweb/fractal/java/TestForName.java	2008-06-30 15:55:25 UTC (rev 8004)
@@ -39,55 +39,49 @@
 
 public class TestForName extends TestCase {
 
-  public void test_valid_class_name_1 () {
+  protected void testValidClassName(final String className) {
     try {
-      Type t = JavaClass.forName("java.lang.Object");
-    } catch(ClassNotFoundException exc) {
-      fail(); // as java.lang.Object must be found.
-    }
+      Type t = JavaClass.forName(className);
+	} catch(ClassNotFoundException exc) {
+	  fail(); // as className must be found!
+	}
   }
 
+  public void test_valid_class_name_1 () {
+    testValidClassName("java.lang.Object");
+  }
+
   public void test_valid_class_name_2 () {
-    try {
-      Type t = JavaClass.forName("java.util.List");
-    } catch(ClassNotFoundException exc) {
-      fail(); // as java.util.List must be found.
-    }
+    testValidClassName("java.util.List");
   }
 
   public void test_valid_class_name_3 () {
-    try {
-      Type t = JavaClass.forName("java.util.List<java.lang.String>");
-    } catch(ClassNotFoundException exc) {
-      fail(); // as both classes must be found.
-    }
+    testValidClassName("java.util.List<java.lang.String>");
   }
 
-  public void test_invalid_class_name_1 () {
+  public void test_valid_class_name_4 () {
+	testValidClassName("org.objectweb.fractal.java.IntegerChunk");
+  }
+
+  protected void testInvalidClassName (final String className) {
     try {
-      Type t = JavaClass.forName("NotExistingClass");
-      fail(); // as NotExistingClass can not be found.
+      Type t = JavaClass.forName(className);
+      fail(); // as className can not be found!
     } catch(ClassNotFoundException exc) {
       // this is ok.
     }
   }
 
+  public void test_invalid_class_name_1 () {
+    testInvalidClassName("NotExistingClass");
+  }
+
   public void test_invalid_class_name_2 () {
-    try {
-      Type t = JavaClass.forName("java.util.List<NotExistingClass>");
-      fail(); // as NotExistingClass can not be found.
-    } catch(ClassNotFoundException exc) {
-      // this is ok.
-    }
+    testInvalidClassName("java.util.List<NotExistingClass>");
   }
 
   public void test_invalid_class_name_3 () {
-    try {
-      Type t = JavaClass.forName("NotExistingClass<java.lang.Object>");
-      fail(); // as NotExistingClass can not be found.
-    } catch(ClassNotFoundException exc) {
-      // this is ok.
-    }
+    testInvalidClassName("NotExistingClass<java.lang.Object>");
   }
 
   public void test_invalid_class_name_4 () {
@@ -125,4 +119,16 @@
       // this is ok.
     }
   }
+
+  public void test_bad_generic_parameter_2 () {
+    try {
+      Type t = JavaClass.forName("org.objectweb.fractal.java.AbstractChunk<java.lang.Object>");
+      fail(); // as AbstractChunk requires a sub type of AbstractChunk.
+    } catch(ClassNotFoundException exc) {
+      // this is ok.
+    }
+  }
 }
+
+abstract class AbstractChunk<T extends AbstractChunk<T>> {}
+class IntegerChunk extends AbstractChunk<IntegerChunk> {}


<--  Date Index  --> <--  Thread Index  -->

Reply via email to:

Powered by MHonArc.

Copyright © 2006-2007, OW2 Consortium | contact | webmaster.