[jboss-cvs] JBossAS SVN: r83865 - projects/aop/trunk/asintegration-mc/src/test/java/org/jboss/test/aop/classpool/jbosscl/test.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Feb 4 14:55:26 EST 2009
Author: kabir.khan at jboss.com
Date: 2009-02-04 14:55:26 -0500 (Wed, 04 Feb 2009)
New Revision: 83865
Modified:
projects/aop/trunk/asintegration-mc/src/test/java/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithRepositoryTestCase.java
Log:
[JBAOP-666] Better tests for generating classes
Modified: projects/aop/trunk/asintegration-mc/src/test/java/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithRepositoryTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/test/java/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithRepositoryTestCase.java 2009-02-04 19:17:27 UTC (rev 83864)
+++ projects/aop/trunk/asintegration-mc/src/test/java/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithRepositoryTestCase.java 2009-02-04 19:55:26 UTC (rev 83865)
@@ -491,14 +491,15 @@
public void testSimpleGeneratingClass() throws Exception
{
+
ClassPool global = null;
try
{
+ final String classname = CLASS_A + "XYZ";
global = createClassPool("A", true, JAR_A_1);
- final String NEW_CLASS = CLASS_A + "XYZ";
- CtClass newCtClass = global.makeClass(NEW_CLASS);
+ CtClass newCtClass = global.makeClass(classname);
Class<?> newClass = newCtClass.toClass();
- Class<?> foundClass = global.getClassLoader().loadClass(NEW_CLASS);
+ Class<?> foundClass = global.getClassLoader().loadClass(classname);
assertSame(newClass, foundClass);
}
finally
@@ -506,25 +507,29 @@
unregisterClassPool(global);
}
}
-
- public void testSimpleGeneratingClassAndFindInSameDomain() throws Exception
+
+ public void testGeneratingClassAndFindInSameDomain() throws Exception
{
ClassPool globalA = null;
ClassPool globalB = null;
try
{
- //Created class must be in one of the packages the loader handles
- //http://www.jboss.com/index.html?module=bb&op=viewtopic&t=147105
- final String NEW_CLASS = PACKAGE_A + ".NewClass";
-
+ final String classnameA = PACKAGE_A + ".NewClassA";
+ final String classnameB = PACKAGE_B + ".NewClassB";
globalA = createClassPool("A", true, JAR_A_1);
globalB = createClassPool("B", true, JAR_B_1);
- CtClass newCtClass = globalA.makeClass(NEW_CLASS);
- Class<?> newClass = newCtClass.toClass();
- Class<?> foundClassA = globalA.getClassLoader().loadClass(NEW_CLASS);
- Class<?> foundClassB = globalB.getClassLoader().loadClass(NEW_CLASS);
- assertSame(newClass, foundClassA);
- assertSame(newClass, foundClassB);
+
+ CtClass newCtClassA = globalA.makeClass(classnameA);
+ Class<?> newClassA = newCtClassA.toClass();
+ assertSame(globalA.getClassLoader(), newClassA.getClassLoader());
+ assertSame(newClassA, globalA.getClassLoader().loadClass(classnameA));
+ assertSame(newClassA, globalB.getClassLoader().loadClass(classnameA));
+
+ CtClass newCtClassB = globalB.makeClass(classnameB);
+ Class<?> newClassB = newCtClassB.toClass();
+ assertSame(globalB.getClassLoader(), newClassB.getClassLoader());
+ assertSame(newClassB, globalA.getClassLoader().loadClass(classnameB));
+ assertSame(newClassB, globalB.getClassLoader().loadClass(classnameB));
}
finally
{
@@ -532,7 +537,7 @@
unregisterClassPool(globalB);
}
}
-
+
public void testGeneratingCrossDomainClassHierarchy() throws Exception
{
ClassPool global = null;
@@ -540,40 +545,37 @@
ClassPool child2 = null;
try
{
- //Created class must be in one of the packages the loader handles
- //http://www.jboss.com/index.html?module=bb&op=viewtopic&t=147105
- final String PARENT = PACKAGE_A + ".Parent";
- final String CHILD = PACKAGE_C + ".Child";
-
+ final String parentName = PACKAGE_A + ".Parent";
+ final String childName = PACKAGE_C + ".Child";
global = createClassPool("A", true, JAR_A_1);
child1 = createChildDomainParentLastClassPool("C1", "C1", true, JAR_B_1);
child2 = createChildDomainParentLastClassPool("C2", "C2", "C1", true, JAR_C_1);
- assertCannotLoadCtClass(global, PARENT);
- assertCannotLoadCtClass(child1, PARENT);
- assertCannotLoadCtClass(child2, PARENT);
- assertCannotLoadCtClass(child2, CHILD);
+ assertCannotLoadCtClass(global, parentName);
+ assertCannotLoadCtClass(child1, parentName);
+ assertCannotLoadCtClass(child2, parentName);
+ assertCannotLoadCtClass(child2, childName);
- CtClass parentClass = global.makeClass(PARENT);
+ CtClass parentClass = global.makeClass(parentName);
- CtClass childClass = child2.makeClass(CHILD);
+ CtClass childClass = child2.makeClass(childName);
childClass.setSuperclass(parentClass);
- CtClass parentFromGlobal = global.get(PARENT);
+ CtClass parentFromGlobal = global.get(parentName);
assertSame(global, parentFromGlobal.getClassPool());
assertSame(parentClass, parentFromGlobal);
- CtClass childFromChild2 = child2.get(CHILD);
+ CtClass childFromChild2 = child2.get(childName);
assertSame(child2, childFromChild2.getClassPool());
assertSame(childClass, childFromChild2);
- assertCannotLoadCtClass(global, CHILD);
- assertCannotLoadCtClass(child1, CHILD);
+ assertCannotLoadCtClass(global, childName);
+ assertCannotLoadCtClass(child1, childName);
CtClass parentFromChildA = childClass.getSuperclass();
assertSame(parentClass, parentFromChildA);
- CtClass parentFromChildB = child2.get(PARENT);
+ CtClass parentFromChildB = child2.get(parentName);
assertSame(parentClass, parentFromChildB);
Class<?> parentClazz = parentClass.toClass();
@@ -582,13 +584,13 @@
Class<?> childClazz = childClass.toClass();
assertSame(child2.getClassLoader(), childClazz.getClassLoader());
- Class<?> parentClazzFromParent = global.getClassLoader().loadClass(PARENT);
+ Class<?> parentClazzFromParent = global.getClassLoader().loadClass(parentName);
assertSame(parentClazz, parentClazzFromParent);
- Class<?> parentClazzFromChild = child2.getClassLoader().loadClass(PARENT);
+ Class<?> parentClazzFromChild = child2.getClassLoader().loadClass(parentName);
assertSame(parentClazz, parentClazzFromChild);
- Class<?> childClazzFromChild = child2.getClassLoader().loadClass(CHILD);
+ Class<?> childClazzFromChild = child2.getClassLoader().loadClass(childName);
assertSame(childClazz, childClazzFromChild);
}
finally
@@ -601,47 +603,43 @@
}
}
-
- public void testGeneratingClassInDelegatingPool() throws Exception
+ public void testGeneratingClassInMyPackagesInDelegatingPool() throws Exception
{
ClassPool globalA = null;
ClassPool globalB = null;
ClassPool child = null;
try
{
- //Created class must be in one of the packages the loader handles
- //http://www.jboss.com/index.html?module=bb&op=viewtopic&t=147105
- final String A_CLASS = PACKAGE_A + ".AClazz";
- final String B_CLASS = PACKAGE_B + ".BClazz";
-
+ final String aClassName = PACKAGE_A + ".Parent";
+ final String bClassName = PACKAGE_B + ".BClazz";
globalA = createClassPool("A", true, JAR_A_1);
globalB = createClassPool("B", true, JAR_B_1);
child = createChildURLClassPool(globalA, JAR_C_1);
- assertCannotLoadCtClass(globalA, A_CLASS);
- assertCannotLoadCtClass(globalB, A_CLASS);
- assertCannotLoadCtClass(child, A_CLASS);
- assertCannotLoadCtClass(globalA, B_CLASS);
- assertCannotLoadCtClass(globalB, B_CLASS);
- assertCannotLoadCtClass(child, B_CLASS);
+ assertCannotLoadCtClass(globalA, aClassName);
+ assertCannotLoadCtClass(globalB, aClassName);
+ assertCannotLoadCtClass(child, aClassName);
+ assertCannotLoadCtClass(globalA, bClassName);
+ assertCannotLoadCtClass(globalB, bClassName);
+ assertCannotLoadCtClass(child, bClassName);
- CtClass a = globalA.makeClass(A_CLASS);
- CtClass b = globalB.makeClass(B_CLASS);
+ CtClass a = globalA.makeClass(aClassName);
+ CtClass b = globalB.makeClass(bClassName);
- CtClass aFromA = globalA.get(A_CLASS);
+ CtClass aFromA = globalA.get(aClassName);
assertSame(a, aFromA);
assertSame(globalA, aFromA.getClassPool());
- CtClass aFromB = globalB.get(A_CLASS);
+ CtClass aFromB = globalB.get(aClassName);
assertSame(a, aFromB);
- CtClass bFromA = globalA.get(B_CLASS);
+ CtClass bFromA = globalA.get(bClassName);
assertSame(b, bFromA);
assertSame(globalB, bFromA.getClassPool());
- CtClass bFromB = globalB.get(B_CLASS);
+ CtClass bFromB = globalB.get(bClassName);
assertSame(b, bFromB);
- CtClass aFromChild = child.get(A_CLASS);
+ CtClass aFromChild = child.get(aClassName);
assertSame(a, aFromChild);
- CtClass bFromChild = child.get(B_CLASS);
+ CtClass bFromChild = child.get(bClassName);
assertSame(b, bFromChild);
Class<?> clazzA = a.toClass();
@@ -650,18 +648,18 @@
Class<?> clazzB = b.toClass();
assertSame(globalB.getClassLoader(), clazzB.getClassLoader());
- Class<?> clazzAFromA = globalA.getClassLoader().loadClass(A_CLASS);
+ Class<?> clazzAFromA = globalA.getClassLoader().loadClass(aClassName);
assertSame(clazzA, clazzAFromA);
- Class<?> clazzAFromB = globalB.getClassLoader().loadClass(A_CLASS);
+ Class<?> clazzAFromB = globalB.getClassLoader().loadClass(aClassName);
assertSame(clazzA, clazzAFromB);
- Class<?> clazzAFromChild = child.getClassLoader().loadClass(A_CLASS);
+ Class<?> clazzAFromChild = child.getClassLoader().loadClass(aClassName);
assertSame(clazzA, clazzAFromChild);
- Class<?> clazzBFromA = globalA.getClassLoader().loadClass(B_CLASS);
+ Class<?> clazzBFromA = globalA.getClassLoader().loadClass(bClassName);
assertSame(clazzB, clazzBFromA);
- Class<?> clazzBFromB = globalB.getClassLoader().loadClass(B_CLASS);
+ Class<?> clazzBFromB = globalB.getClassLoader().loadClass(bClassName);
assertSame(clazzB, clazzBFromB);
- Class<?> clazzBFromChild = child.getClassLoader().loadClass(B_CLASS);
+ Class<?> clazzBFromChild = child.getClassLoader().loadClass(bClassName);
assertSame(clazzB, clazzBFromChild);
}
finally
@@ -722,7 +720,7 @@
assertSame(b.getClassPool(), bArray.getClassPool());
}
- public void testClassLoaderlWithParentClassLoader() throws Exception
+ public void testClassLoaderWithParentClassLoader() throws Exception
{
ClassPool parent = createChildURLClassPool(null, JAR_B_1);
ClassPool global = null;
More information about the jboss-cvs-commits
mailing list