From: aclement Date: Wed, 28 Sep 2005 09:49:10 +0000 (+0000) Subject: pr110788: testcases X-Git-Tag: preDefaultReweavable~33 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=fc51daa12dd7952e3b6a2f486e7d0162323c91b4;p=aspectj.git pr110788: testcases --- diff --git a/tests/bugs150/pr110788/Case1.java b/tests/bugs150/pr110788/Case1.java new file mode 100644 index 000000000..f5a55d2df --- /dev/null +++ b/tests/bugs150/pr110788/Case1.java @@ -0,0 +1,11 @@ +interface A {} + +interface B extends A {} + +class C implements A {} + +class D extends C {} + +aspect X { + declare parents: D implements B; // Can't do it, C implement A +} diff --git a/tests/bugs150/pr110788/Case2.java b/tests/bugs150/pr110788/Case2.java new file mode 100644 index 000000000..d995509bb --- /dev/null +++ b/tests/bugs150/pr110788/Case2.java @@ -0,0 +1,9 @@ +interface A {} + +class C implements A {} + +class D extends C {} + +aspect X { + declare parents: D implements A; // Can't do it, C implements A +} diff --git a/tests/bugs150/pr110788/Case3.java b/tests/bugs150/pr110788/Case3.java new file mode 100644 index 000000000..726ca11cf --- /dev/null +++ b/tests/bugs150/pr110788/Case3.java @@ -0,0 +1,11 @@ +interface A {} + +interface B extends A {} + +class C implements A {} + +class D extends C {} + +aspect X { + declare parents: D implements B; // Can do it, parameterizations are compatible +} diff --git a/tests/bugs150/pr110788/Case4.java b/tests/bugs150/pr110788/Case4.java new file mode 100644 index 000000000..726ca11cf --- /dev/null +++ b/tests/bugs150/pr110788/Case4.java @@ -0,0 +1,11 @@ +interface A {} + +interface B extends A {} + +class C implements A {} + +class D extends C {} + +aspect X { + declare parents: D implements B; // Can do it, parameterizations are compatible +} diff --git a/tests/src/org/aspectj/systemtest/ajc150/Ajc150Tests.java b/tests/src/org/aspectj/systemtest/ajc150/Ajc150Tests.java index af953f953..be876b1d7 100644 --- a/tests/src/org/aspectj/systemtest/ajc150/Ajc150Tests.java +++ b/tests/src/org/aspectj/systemtest/ajc150/Ajc150Tests.java @@ -25,9 +25,6 @@ import org.aspectj.asm.AsmManager; import org.aspectj.testing.XMLBasedAjcTestCase; import org.aspectj.util.LangUtil; -/** - * These are tests that will run on Java 1.4 and use the old harness format for test specification. - */ public class Ajc150Tests extends org.aspectj.testing.XMLBasedAjcTestCase { public static Test suite() { @@ -37,6 +34,11 @@ public class Ajc150Tests extends org.aspectj.testing.XMLBasedAjcTestCase { protected File getSpecFile() { return new File("../tests/src/org/aspectj/systemtest/ajc150/ajc150.xml"); } + + public void testBadDecp_pr110788_1() { runTest("bad generic decp - 1");} + public void testBadDecp_pr110788_2() { runTest("bad generic decp - 2");} + public void testBadDecp_pr110788_3() { runTest("bad generic decp - 3");} + public void testBadDecp_pr110788_4() { runTest("bad generic decp - 4");} public void test_typeProcessingOrderWhenDeclareParents() { runTest("Order of types passed to compiler determines weaving behavior"); @@ -172,10 +174,9 @@ public class Ajc150Tests extends org.aspectj.testing.XMLBasedAjcTestCase { runTest("overriding/polymorphism error on interface method introduction"); } - /** - * IfPointcut.findResidueInternal() was modified to make this test complete in a short amount - * of time - if you see it hanging, someone has messed with the optimization. - */ + + // IfPointcut.findResidueInternal() was modified to make this test complete in a short amount + // of time - if you see it hanging, someone has messed with the optimization. public void testIfEvaluationExplosion_pr94086() { runTest("Exploding compile time with if() statements in pointcut"); } diff --git a/tests/src/org/aspectj/systemtest/ajc150/ajc150.xml b/tests/src/org/aspectj/systemtest/ajc150/ajc150.xml index 38f74bea4..cfd5acd18 100644 --- a/tests/src/org/aspectj/systemtest/ajc150/ajc150.xml +++ b/tests/src/org/aspectj/systemtest/ajc150/ajc150.xml @@ -4827,4 +4827,23 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file