Index: ReflectionBasedReferenceTypeDelegateTest.java =================================================================== RCS file: /home/technology/org.aspectj/modules/weaver/testsrc/org/aspectj/weaver/reflect/ReflectionBasedReferenceTypeDelegateTest.java,v retrieving revision 1.1 diff -u -r1.1 ReflectionBasedReferenceTypeDelegateTest.java --- ReflectionBasedReferenceTypeDelegateTest.java 21 Sep 2005 15:08:46 -0000 1.1 +++ ReflectionBasedReferenceTypeDelegateTest.java 23 Nov 2005 03:27:36 -0000 @@ -11,6 +11,9 @@ * ******************************************************************/ package org.aspectj.weaver.reflect; + +import java.util.Collection; + import org.aspectj.weaver.ResolvedMember; import org.aspectj.weaver.ResolvedType; import org.aspectj.weaver.UnresolvedType; @@ -20,8 +23,11 @@ public class ReflectionBasedReferenceTypeDelegateTest extends TestCase { - private World world; + protected ReflectionWorld world; private ResolvedType objectType; + private ResolvedType classType; + private ResolvedType enumType; + public void testIsAspect() { assertFalse(objectType.isAspect()); @@ -92,25 +98,43 @@ assertEquals(world.resolve("reflect.tests.C"),d.getSuperclass()); } + + protected int findMethod(String name, ResolvedMember[] methods) { + for (int i=0; i -1); + + assertEquals(world.resolve("java.lang.String"),methods[idx].getReturnType()); + assertEquals(1, methods[idx].getParameterTypes().length); + assertEquals(objectType,methods[idx].getParameterTypes()[0]); + assertEquals(1,methods[idx].getExceptions().length); + assertEquals(world.resolve("java.lang.Exception"),methods[idx].getExceptions()[0]); + int baridx = findMethod("bar", methods); + int initidx = findMethod("init", methods); + assertTrue(baridx > -1); + assertTrue(initidx > -1); + assertTrue(baridx != initidx && baridx != idx && idx <= 2 && initidx <= 2 && baridx <= 2); ResolvedType d = world.resolve("reflect.tests.D"); methods = d.getDeclaredMethods(); assertEquals(2,methods.length); + + methods = classType.getDeclaredMethods(); + assertEquals(Class.class.getDeclaredMethods().length + Class.class.getDeclaredConstructors().length, methods.length); } public void testGetDeclaredFields() {