aboutsummaryrefslogtreecommitdiffstats
path: root/weaver/testsrc
diff options
context:
space:
mode:
authoracolyer <acolyer>2005-07-20 12:35:59 +0000
committeracolyer <acolyer>2005-07-20 12:35:59 +0000
commit1bff115da676c633a85085d9da8e468b53f4049a (patch)
tree2255a753c29f65c96cff3a6e94c6c4d901a1c923 /weaver/testsrc
parentaaa349d1543fbad515ff4fce869799fac591118d (diff)
downloadaspectj-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.java16
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);
}
}