aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authoraclement <aclement>2008-09-29 19:16:22 +0000
committeraclement <aclement>2008-09-29 19:16:22 +0000
commit3fffdb9f5afd0f4b674c2942872663366738260b (patch)
tree1a06d653e8cdf009694979d5839d949324e847b2 /tests
parent556feee2eeb05b1ef9d3e56324ae39db6e6c1598 (diff)
downloadaspectj-3fffdb9f5afd0f4b674c2942872663366738260b.tar.gz
aspectj-3fffdb9f5afd0f4b674c2942872663366738260b.zip
247683: test and fix: annotations on array delegates
Diffstat (limited to 'tests')
-rw-r--r--tests/bugs162/pr247683/A.java12
-rw-r--r--tests/src/org/aspectj/systemtest/ajc162/Ajc162Tests.java33
-rw-r--r--tests/src/org/aspectj/systemtest/ajc162/ajc162.xml17
3 files changed, 50 insertions, 12 deletions
diff --git a/tests/bugs162/pr247683/A.java b/tests/bugs162/pr247683/A.java
new file mode 100644
index 000000000..e930893ca
--- /dev/null
+++ b/tests/bugs162/pr247683/A.java
@@ -0,0 +1,12 @@
+import java.lang.annotation.*;
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface I {}
+
+aspect X {
+ declare warning: execution(* *(@(@I *) *)): "";
+}
+
+public class A {
+ public void foo(@I boolean[] bs) {}
+}
diff --git a/tests/src/org/aspectj/systemtest/ajc162/Ajc162Tests.java b/tests/src/org/aspectj/systemtest/ajc162/Ajc162Tests.java
index 268e2224f..5ac0d8a10 100644
--- a/tests/src/org/aspectj/systemtest/ajc162/Ajc162Tests.java
+++ b/tests/src/org/aspectj/systemtest/ajc162/Ajc162Tests.java
@@ -11,11 +11,9 @@
package org.aspectj.systemtest.ajc162;
import java.io.File;
-import java.io.PrintWriter;
import junit.framework.Test;
-import org.aspectj.asm.AsmManager;
import org.aspectj.testing.XMLBasedAjcTestCase;
public class Ajc162Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
@@ -43,19 +41,19 @@ public class Ajc162Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
// what I want for the hid is:
// <somethingIndicatingBinary>"[Asp.class}Asp&before"
-/*
- public void testBinaryAspectModeling() throws Exception {
- runTest("binary aspects model");
- AsmManager.dumptree(AsmManager.getDefault().getHierarchy().getRoot(), 0);
- PrintWriter pw = new PrintWriter(System.out);
- AsmManager.getDefault().dumprels(pw);
- pw.flush();
- }
-*/
+ /*
+ * public void testBinaryAspectModeling() throws Exception { runTest("binary aspects model");
+ * AsmManager.dumptree(AsmManager.getDefault().getHierarchy().getRoot(), 0); PrintWriter pw = new PrintWriter(System.out);
+ * AsmManager.getDefault().dumprels(pw); pw.flush(); }
+ */
public void testPerClause() {
runTest("ltw perclause");
}
+ public void testNullDelegateForArray_pr247683() {
+ runTest("null delegate for array");
+ }
+
public void testPerClause2() {
runTest("ltw perclause - 2");
}
@@ -167,7 +165,18 @@ public class Ajc162Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
}
// public void testParamAnnosPipelining_pr241847() { runTest("param annos pipelining");}
- // public void testParamAnnoInner_pr241861() { runTest("param annotation inner class"); }
+ // public void testParamAnnoInner_pr241861() {
+ // runTest("param annotation inner class");
+ // }
+ //
+ // public void testParamAnnoInner_pr241861_2() {
+ // runTest("param annotation inner class - 2");
+ // }
+ //
+ // public void testParamAnnoInner_pr241861_3() {
+ // runTest("param annotation inner class - 3");
+ // }
+
public void testAnnotationDecp_pr239441() {
runTest("annotation decp");
}
diff --git a/tests/src/org/aspectj/systemtest/ajc162/ajc162.xml b/tests/src/org/aspectj/systemtest/ajc162/ajc162.xml
index c1054ee34..bc1b177ed 100644
--- a/tests/src/org/aspectj/systemtest/ajc162/ajc162.xml
+++ b/tests/src/org/aspectj/systemtest/ajc162/ajc162.xml
@@ -3,6 +3,11 @@
<!-- AspectJ v1.6.2 Tests -->
<suite>
+
+ <ajc-test dir="bugs162/pr247683" title="null delegate for array">
+ <compile options="-1.5" files="A.java"/>
+ </ajc-test>
+
<ajc-test dir="bugs162/IntoBinary" title="binary aspects model">
<compile options="-1.5 -emacssym" files="Clazz.java" aspectpath="binaryaspect.jar"/>
</ajc-test>
@@ -240,6 +245,18 @@
</compile>
</ajc-test>
+ <ajc-test dir="bugs162/pr241861" title="param annotation inner class - 2">
+ <compile files="X.java" options="-1.5 -showWeaveInfo">
+ <message kind="weave" text="fubar"/>
+ </compile>
+ </ajc-test>
+
+ <ajc-test dir="bugs162/pr241861" title="param annotation inner class - 3">
+ <compile files="Y.java" options="-1.5 -showWeaveInfo">
+ <message kind="weave" text="fubar"/>
+ </compile>
+ </ajc-test>
+
<ajc-test dir="bugs162/pr240693" title="privileged generics">
<compile files="PayloadClass.java SomeInterface.java GenericClassInAdvice.java" options="-1.5">
</compile>