Mail Archive Home | fractal-commits List | June 2008 Index
| <-- Date Index --> | <-- Thread Index --> |
* 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.
--- 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 --> |
Powered by MHonArc.
Copyright © 2006-2007, OW2 Consortium | contact | webmaster.