diff options
author | acolyer <acolyer> | 2005-07-20 12:35:59 +0000 |
---|---|---|
committer | acolyer <acolyer> | 2005-07-20 12:35:59 +0000 |
commit | 1bff115da676c633a85085d9da8e468b53f4049a (patch) | |
tree | 2255a753c29f65c96cff3a6e94c6c4d901a1c923 /weaver/testsrc | |
parent | aaa349d1543fbad515ff4fce869799fac591118d (diff) | |
download | aspectj-1bff115da676c633a85085d9da8e468b53f4049a.tar.gz aspectj-1bff115da676c633a85085d9da8e468b53f4049a.zip |
ensure that when parameterizing a member, we handle any types that are themselves parameterized (eg. a return type List<N> should turn to List<String> when parameterized with String).
Diffstat (limited to 'weaver/testsrc')
-rw-r--r-- | weaver/testsrc/org/aspectj/weaver/ParameterizedReferenceTypeTestCase.java | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/weaver/testsrc/org/aspectj/weaver/ParameterizedReferenceTypeTestCase.java b/weaver/testsrc/org/aspectj/weaver/ParameterizedReferenceTypeTestCase.java index 71a640caa..77379318d 100644 --- a/weaver/testsrc/org/aspectj/weaver/ParameterizedReferenceTypeTestCase.java +++ b/weaver/testsrc/org/aspectj/weaver/ParameterizedReferenceTypeTestCase.java @@ -58,10 +58,24 @@ public class ParameterizedReferenceTypeTestCase extends TestCase { } + public void testDeclaredMethodWithParameterizedReturnType() { + ResolvedMember[] methods = listOfString.getDeclaredMethods(); + ResolvedMember iterator = null; + for (int i = 0; i < methods.length; i++) { + if (methods[i].getName().equals("iterator")) { + iterator = methods[i]; + break; + } + } + UnresolvedType returnType = iterator.getReturnType(); + assertEquals("Pjava/util/Iterator<Ljava/lang/String;>;",returnType.getSignature()); + + } + protected void setUp() throws Exception { super.setUp(); world = new BcelWorld(); listOfString = (ReferenceType) - TypeFactory.createTypeFromSignature("Ljava/util/List<Ljava/lang/String;>;").resolve(world); + TypeFactory.createTypeFromSignature("Pjava/util/List<Ljava/lang/String;>;").resolve(world); } } |