aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authoraclement <aclement>2009-09-04 17:39:50 +0000
committeraclement <aclement>2009-09-04 17:39:50 +0000
commitb58e76c68d96811cbe9b1d4f8c0e245a81d66e5a (patch)
treeb9781a1e1a8d6f03f04af2682d8d6498179f06a0 /tests
parentb29f8393e988bbfb4db28c5051bf036ef6551aa2 (diff)
downloadaspectj-b58e76c68d96811cbe9b1d4f8c0e245a81d66e5a.tar.gz
aspectj-b58e76c68d96811cbe9b1d4f8c0e245a81d66e5a.zip
288635: cce munger
Diffstat (limited to 'tests')
-rw-r--r--tests/bugs166/pr288635/org/tests/atann/AddAnnotations.aj7
-rw-r--r--tests/bugs166/pr288635/org/tests/atann/AddITDDoMethod.aj9
-rw-r--r--tests/bugs166/pr288635/org/tests/atann/InterceptTraceds.aj13
-rw-r--r--tests/bugs166/pr288635/org/tests/atann/TestClass.java21
-rw-r--r--tests/bugs166/pr288635/org/tests/atann/Traced.java14
-rw-r--r--tests/src/org/aspectj/systemtest/ajc166/Ajc166Tests.java16
-rw-r--r--tests/src/org/aspectj/systemtest/ajc166/ajc166.xml21
7 files changed, 101 insertions, 0 deletions
diff --git a/tests/bugs166/pr288635/org/tests/atann/AddAnnotations.aj b/tests/bugs166/pr288635/org/tests/atann/AddAnnotations.aj
new file mode 100644
index 000000000..a43a6d7b6
--- /dev/null
+++ b/tests/bugs166/pr288635/org/tests/atann/AddAnnotations.aj
@@ -0,0 +1,7 @@
+package org.tests.atann;
+
+public aspect AddAnnotations {
+
+ declare @method : public int *do*(..) : @Traced;
+
+}
diff --git a/tests/bugs166/pr288635/org/tests/atann/AddITDDoMethod.aj b/tests/bugs166/pr288635/org/tests/atann/AddITDDoMethod.aj
new file mode 100644
index 000000000..7202a15bf
--- /dev/null
+++ b/tests/bugs166/pr288635/org/tests/atann/AddITDDoMethod.aj
@@ -0,0 +1,9 @@
+package org.tests.atann;
+
+public aspect AddITDDoMethod {
+
+ public int TestClass.doAnother() {
+ return 2;
+ }
+
+}
diff --git a/tests/bugs166/pr288635/org/tests/atann/InterceptTraceds.aj b/tests/bugs166/pr288635/org/tests/atann/InterceptTraceds.aj
new file mode 100644
index 000000000..77eed521e
--- /dev/null
+++ b/tests/bugs166/pr288635/org/tests/atann/InterceptTraceds.aj
@@ -0,0 +1,13 @@
+package org.tests.atann;
+
+public aspect InterceptTraceds {
+
+ before(Traced t) : execution(@Traced * *.*(..)) && @annotation(t) {
+ if (t != null) {
+ System.out.println("Executing " + thisJoinPoint + " on level " + t.level());
+ } else {
+ System.out.println("Annotation was null on " + thisJoinPoint);
+ }
+ }
+
+}
diff --git a/tests/bugs166/pr288635/org/tests/atann/TestClass.java b/tests/bugs166/pr288635/org/tests/atann/TestClass.java
new file mode 100644
index 000000000..f7265f792
--- /dev/null
+++ b/tests/bugs166/pr288635/org/tests/atann/TestClass.java
@@ -0,0 +1,21 @@
+package org.tests.atann;
+
+public class TestClass {
+
+ @Traced
+ public String doAnnotated() {
+ return "annotated";
+ }
+
+ public int doITDAnnotation() {
+ return 1;
+ }
+
+ public static void main(String[] args) {
+ TestClass tc = new TestClass();
+ tc.doAnnotated();
+ tc.doITDAnnotation();
+ tc.doAnother();
+ }
+
+}
diff --git a/tests/bugs166/pr288635/org/tests/atann/Traced.java b/tests/bugs166/pr288635/org/tests/atann/Traced.java
new file mode 100644
index 000000000..77fd94afe
--- /dev/null
+++ b/tests/bugs166/pr288635/org/tests/atann/Traced.java
@@ -0,0 +1,14 @@
+package org.tests.atann;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.METHOD)
+public @interface Traced {
+
+ String level() default "debug";
+
+}
diff --git a/tests/src/org/aspectj/systemtest/ajc166/Ajc166Tests.java b/tests/src/org/aspectj/systemtest/ajc166/Ajc166Tests.java
index 901ea840b..62355aa4b 100644
--- a/tests/src/org/aspectj/systemtest/ajc166/Ajc166Tests.java
+++ b/tests/src/org/aspectj/systemtest/ajc166/Ajc166Tests.java
@@ -18,6 +18,22 @@ import org.aspectj.testing.XMLBasedAjcTestCase;
public class Ajc166Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
+ public void testMungerCCE_288635() {
+ runTest("munger cce");
+ }
+
+ // public void testNPEonBadAspectDecl_286375() {
+ // runTest("npe on bad aspect decl");
+ // }
+ //
+ // public void testAnnoModifierOrdering_287597_1() {
+ // runTest("anno modifier ordering - 1");
+ // }
+ //
+ // public void testDeclareAnnoCompoundExpression_287613() {
+ // runTest("dec anno compound expressions");
+ // }
+
public void testHasMember_284862() {
runTest("npe hasmember");
}
diff --git a/tests/src/org/aspectj/systemtest/ajc166/ajc166.xml b/tests/src/org/aspectj/systemtest/ajc166/ajc166.xml
index 2ff98c6ab..bb873164e 100644
--- a/tests/src/org/aspectj/systemtest/ajc166/ajc166.xml
+++ b/tests/src/org/aspectj/systemtest/ajc166/ajc166.xml
@@ -1,7 +1,28 @@
<!DOCTYPE suite SYSTEM "../tests/ajcTestSuite.dtd"[]>
<suite>
+
+ <ajc-test dir="bugs166/pr288635" title="munger cce">
+ <compile files="org/tests/atann/AddAnnotations.aj org/tests/atann/AddITDDoMethod.aj org/tests/atann/InterceptTraceds.aj org/tests/atann/TestClass.java org/tests/atann/Traced.java" options="-1.5"/>
+ <run class="org.tests.atann.TestClass"/>
+ </ajc-test>
+
+ <ajc-test dir="bugs166/pr286375" title="npe on bad aspect decl">
+ <compile files="DatabaseOperationMonitor.java" options="-1.5" outjar="wibble.jar"/>
+ <compile files="" inpath="wibble.jar" options="-1.5"/>
+ </ajc-test>
+
+ <ajc-test dir="bugs166/pr287597" title="anno modifier ordering - 1">
+ <compile files="A.java" options="-1.5 -showWeaveInfo">
+ <message kind="weave" text="foo"/>
+ </compile>
+ </ajc-test>
+
+ <ajc-test dir="bugs166/pr287613" title="dec anno compound expressions">
+ <compile files="DeclareAnnot.java" options="-1.5"/>
+ </ajc-test>
+
<ajc-test dir="bugs166/pr284862" title="npe hasmember">
<compile files="InterfaceToAdd.java AnnotatedMethodImpl.aj AspectToMatch.aj AnnotatedMethodInterface.java Entity.java EntityClass.java PresentAnnotation.java SearchAnnotation.java" options="-1.5 -XhasMember"/>
</ajc-test>