summaryrefslogtreecommitdiffstats
path: root/tests/src/org
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src/org')
-rw-r--r--tests/src/org/aspectj/systemtest/ajc1810/Ajc1810Tests.java36
-rw-r--r--tests/src/org/aspectj/systemtest/ajc1810/ajc1810.xml45
2 files changed, 81 insertions, 0 deletions
diff --git a/tests/src/org/aspectj/systemtest/ajc1810/Ajc1810Tests.java b/tests/src/org/aspectj/systemtest/ajc1810/Ajc1810Tests.java
index 3cae1378c..36232a91d 100644
--- a/tests/src/org/aspectj/systemtest/ajc1810/Ajc1810Tests.java
+++ b/tests/src/org/aspectj/systemtest/ajc1810/Ajc1810Tests.java
@@ -24,6 +24,42 @@ import junit.framework.Test;
*/
public class Ajc1810Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
+ // Basic with execution(* *(@Foo (*))) && @args(ca (*))
+ public void testParamAnnoBinding_259416_1() {
+ runTest("param anno binding");
+ }
+
+ // Basic with execution(* *(..)) && args(ca (*))
+ public void testParamAnnoBinding_259416_2() {
+ runTest("param anno binding 2");
+ }
+
+ // Basic with execution(* *(..)) && args(*,ca (*))
+ public void testParamAnnoBinding_259416_3() {
+ runTest("param anno binding 3");
+ }
+
+ // Basic with execution(* *(..)) && args(*,ca (*)) where target has two parameter annotations and we match the 2nd one
+ public void testParamAnnoBinding_259416_4() {
+ runTest("param anno binding 4");
+ }
+
+ // execution(* *(..)) && args(f *,ca (*))
+
+ // args(ca1 (*),ca2 (*))
+
+ // args(ca(*))
+
+ // args(ca1 (f))
+
+ // args(ca1 ba1 (*))
+
+ // args(ca1 ba1 (f1 f2))
+
+ // args(ca1 (*), .., ca2 (*))
+
+
+
public void testBinding_500035() {
runTest("ataspectj binding");
}
diff --git a/tests/src/org/aspectj/systemtest/ajc1810/ajc1810.xml b/tests/src/org/aspectj/systemtest/ajc1810/ajc1810.xml
index 7485c1c20..75edcbc5e 100644
--- a/tests/src/org/aspectj/systemtest/ajc1810/ajc1810.xml
+++ b/tests/src/org/aspectj/systemtest/ajc1810/ajc1810.xml
@@ -2,6 +2,51 @@
<suite>
+ <ajc-test dir="bugs1810/259416" title="param anno binding">
+ <compile options="-1.8 -showWeaveInfo" files="RGB.java ColouredAnnotation.java Test1.java">
+ <message kind="weave" text="Join point 'method-execution(void Test1.coloured(java.lang.String))' in Type 'Test1' (Test1.java:5) advised by before advice from 'X' (Test1.java:10)"/>
+ </compile>
+ <run class="Test1">
+ <stdout>
+ <line text="Annotation from parameter on method execution(void Test1.coloured(String)) is @ColouredAnnotation(value=RED)"/>
+ </stdout>
+ </run>
+ </ajc-test>
+
+ <ajc-test dir="bugs1810/259416" title="param anno binding 2">
+ <compile options="-1.8 -showWeaveInfo" files="RGB.java ColouredAnnotation.java Test2.java">
+ <message kind="weave" text="Join point 'method-execution(void Test2.coloured(java.lang.String))' in Type 'Test2' (Test2.java:5) advised by before advice from 'X' (Test2.java:10)"/>
+ </compile>
+ <run class="Test2">
+ <stdout>
+ <line text="Annotation from parameter on method execution(void Test2.coloured(String)) is @ColouredAnnotation(value=GREEN)"/>
+ </stdout>
+ </run>
+ </ajc-test>
+
+ <ajc-test dir="bugs1810/259416" title="param anno binding 3">
+ <compile options="-1.8 -showWeaveInfo" files="RGB.java ColouredAnnotation.java Test3.java">
+ <message kind="weave" text="Join point 'method-execution(void Test3.coloured(int, java.lang.String))' in Type 'Test3' (Test3.java:5) advised by before advice from 'X' (Test3.java:10)"/>
+ </compile>
+ <run class="Test3">
+ <stdout>
+ <line text="Annotation from parameter on method execution(void Test3.coloured(int, String)) is @ColouredAnnotation(value=RED)"/>
+ </stdout>
+ </run>
+ </ajc-test>
+
+ <ajc-test dir="bugs1810/259416" title="param anno binding 4">
+ <compile options="-1.8 -showWeaveInfo" files="RGB.java ColouredAnnotation.java Test4.java Filler.java">
+ <message kind="weave" text="Join point 'method-execution(void Test4.coloured(int, java.lang.String))' in Type 'Test4' (Test4.java:5) advised by before advice from 'X' (Test4.java:10)"/>
+ </compile>
+ <run class="Test4">
+ <stdout>
+ <line text="Annotation from parameter on method execution(void Test4.coloured(int, String)) is @ColouredAnnotation(value=GREEN)"/>
+ </stdout>
+ </run>
+ </ajc-test>
+
+
<ajc-test dir="bugs1810/500035" title="ataspectj binding">
<compile options="-1.8" files="Code.java"/>
<run class="Code">