diff options
author | Andy Clement <aclement@vmware.com> | 2012-02-15 14:25:02 -0800 |
---|---|---|
committer | Andy Clement <aclement@vmware.com> | 2012-02-15 14:25:02 -0800 |
commit | 89756cdfe58319d4e8e29b88de6fd8810d84244d (patch) | |
tree | 64e1a37d47f3e81b0aa4fd0e3772ac87cb41aabc /tests/src | |
parent | f66393ae36fc65882be9810d0c8100aee7739521 (diff) | |
download | aspectj-89756cdfe58319d4e8e29b88de6fd8810d84244d.tar.gz aspectj-89756cdfe58319d4e8e29b88de6fd8810d84244d.zip |
371684 - wildcard generics unpacking
Diffstat (limited to 'tests/src')
-rw-r--r-- | tests/src/org/aspectj/systemtest/ajc170/Ajc170Tests.java | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/src/org/aspectj/systemtest/ajc170/Ajc170Tests.java b/tests/src/org/aspectj/systemtest/ajc170/Ajc170Tests.java index a6102fd08..4e40d4162 100644 --- a/tests/src/org/aspectj/systemtest/ajc170/Ajc170Tests.java +++ b/tests/src/org/aspectj/systemtest/ajc170/Ajc170Tests.java @@ -11,16 +11,55 @@ package org.aspectj.systemtest.ajc170; import java.io.File; +import java.util.List; import junit.framework.Test; +import org.aspectj.apache.bcel.util.ClassPath; import org.aspectj.testing.XMLBasedAjcTestCase; +import org.aspectj.weaver.CrosscuttingMembers; +import org.aspectj.weaver.ReferenceType; +import org.aspectj.weaver.ResolvedMember; +import org.aspectj.weaver.ResolvedType; +import org.aspectj.weaver.TypeFactory; +import org.aspectj.weaver.TypeVariable; +import org.aspectj.weaver.UnresolvedType; +import org.aspectj.weaver.World; +import org.aspectj.weaver.bcel.BcelWorld; /** * @author Andy Clement */ public class Ajc170Tests extends org.aspectj.testing.XMLBasedAjcTestCase { + public void testGenericsWithTwoTypeParamsOneWildcard() { + UnresolvedType ut; + + ut = TypeFactory.createTypeFromSignature("LFoo<**>;"); + assertEquals(2,ut.getTypeParameters().length); + + ut = TypeFactory.createTypeFromSignature("LFoo<***>;"); + assertEquals(3,ut.getTypeParameters().length); + + ut = TypeFactory.createTypeFromSignature("LFoo<TP;*+Ljava/lang/String;>;"); + assertEquals(2,ut.getTypeParameters().length); + + ut = TypeFactory.createTypeFromSignature("LFoo<*+Ljava/lang/String;TP;>;"); + assertEquals(2,ut.getTypeParameters().length); + + ut = TypeFactory.createTypeFromSignature("LFoo<*+Ljava/lang/String;TP;>;"); + assertEquals(2,ut.getTypeParameters().length); + + ut = TypeFactory.createTypeFromSignature("LFoo<*TT;>;"); + assertEquals(2,ut.getTypeParameters().length); + + ut = TypeFactory.createTypeFromSignature("LFoo<[I>;"); + assertEquals(1,ut.getTypeParameters().length); + + ut = TypeFactory.createTypeFromSignature("LFoo<[I[Z>;"); + assertEquals(2,ut.getTypeParameters().length); + } + public void testPerThis() { runTest("perthis"); } |