]> source.dussan.org Git - aspectj.git/commitdiff
335619
authoraclement <aclement>
Mon, 31 Jan 2011 19:37:16 +0000 (19:37 +0000)
committeraclement <aclement>
Mon, 31 Jan 2011 19:37:16 +0000 (19:37 +0000)
tests/multiIncremental/PR278496_9/base/src/a/b/c/Azpect.java [new file with mode: 0644]
tests/multiIncremental/PR278496_9/base/src/a/b/c/Code.java [new file with mode: 0644]
tests/multiIncremental/PR278496_9/base/src/a/b/c/Code2.java [new file with mode: 0644]
tests/src/org/aspectj/systemtest/ajc1611/Ajc1611Tests.java
tests/src/org/aspectj/systemtest/ajc1611/ajc1611.xml
tests/src/org/aspectj/systemtest/incremental/tools/IncrementalCompilationTests.java

diff --git a/tests/multiIncremental/PR278496_9/base/src/a/b/c/Azpect.java b/tests/multiIncremental/PR278496_9/base/src/a/b/c/Azpect.java
new file mode 100644 (file)
index 0000000..559810d
--- /dev/null
@@ -0,0 +1,5 @@
+package a.b.c;
+
+public aspect Azpect {
+  before():staticinitialization(Code2) {}
+}
diff --git a/tests/multiIncremental/PR278496_9/base/src/a/b/c/Code.java b/tests/multiIncremental/PR278496_9/base/src/a/b/c/Code.java
new file mode 100644 (file)
index 0000000..d01a3b0
--- /dev/null
@@ -0,0 +1,13 @@
+package a.b.c;
+import java.util.List;
+import java.util.ArrayList;
+
+public class Code {
+  public void m() {
+    List l = new ArrayList();
+  }
+
+  static class CodeInner {
+  }
+}
+
diff --git a/tests/multiIncremental/PR278496_9/base/src/a/b/c/Code2.java b/tests/multiIncremental/PR278496_9/base/src/a/b/c/Code2.java
new file mode 100644 (file)
index 0000000..09879a9
--- /dev/null
@@ -0,0 +1,10 @@
+package a.b.c;
+import java.util.List;
+import java.util.ArrayList;
+
+public class Code2 {
+  public void m() {
+    List l = new ArrayList();
+  }
+}
+
index 0c9005e26307b576621cfd01f379eaa39ce27b96..7123f7a61d996b914d6b0701162921db040e80f2 100644 (file)
@@ -36,6 +36,18 @@ public class Ajc1611Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
        public void testDeclareField_328840() {
                runTest("pr328840");
        }
+       
+//     public void testAnnoStyleAdviceChain_333274() {
+//                     runTest("anno style advice chain");
+//     }
+//
+//     public void testAnnoStyleAdviceChain_333274_2() {
+//                     runTest("code style advice chain");
+//     }
+//     
+//     public void testAnnoStyleAdviceChain_333274_3() {
+//             runTest("code style advice chain - no inline");
+//     }
 
        // ---
 
index c378572221f9aeb9496a6d1e11ca294639aac6b7..d77ddeeb49cc950df6c6311511f1e3a340c8907a 100644 (file)
@@ -1,6 +1,56 @@
 <!DOCTYPE suite SYSTEM "../tests/ajcTestSuite.dtd"[]>
 
 <suite>
+  <ajc-test dir="bugs1611/pr333274" title="anno style advice chain">
+  <compile files="ma/Annotation1.java  ma/aspect1/Aspect1.java  ma/aspect3/Aspect3.java ma/Main.java ma/Precedence.java" options="-1.5"/>
+  <run class="ma.Main">
+  <stdout>
+  <line text="&gt;In Aspect1"/>
+  <line text="&gt;In Aspect3"/>
+  <line text="Method call"/>
+  <line text="&lt;In Aspect3"/>
+  <line text="=In Aspect1"/>
+  <line text="&gt;In Aspect3"/>
+  <line text="Method call"/>
+  <line text="&lt;In Aspect3"/>
+  <line text="&lt;In Aspect1"/>
+  </stdout>
+  </run>
+  </ajc-test>
+  
+  <ajc-test dir="bugs1611/pr333274" title="code style advice chain - no inline">
+  <compile files="ma2/Annotation1.java  ma2/aspect1/Aspect1.java  ma2/aspect3/Aspect3.java ma2/Main.java ma2/Precedence.java" options="-1.5 -XnoInline"/>
+  <run class="ma2.Main">
+  <stdout>
+  <line text="&gt;In Aspect1"/>
+  <line text="&gt;In Aspect3"/>
+  <line text="Method call"/>
+  <line text="&lt;In Aspect3"/>
+  <line text="=In Aspect1"/>
+  <line text="&gt;In Aspect3"/>
+  <line text="Method call"/>
+  <line text="&lt;In Aspect3"/>
+  <line text="&lt;In Aspect1"/>
+  </stdout>
+  </run>
+  </ajc-test>
+  
+  <ajc-test dir="bugs1611/pr333274" title="code style advice chain">
+  <compile files="ma2/Annotation1.java  ma2/aspect1/Aspect1.java  ma2/aspect3/Aspect3.java ma2/Main.java ma2/Precedence.java" options="-1.5 "/>
+  <run class="ma2.Main">
+  <stdout>
+  <line text="&gt;In Aspect1"/>
+  <line text="&gt;In Aspect3"/>
+  <line text="Method call"/>
+  <line text="&lt;In Aspect3"/>
+  <line text="=In Aspect1"/>
+  <line text="&gt;In Aspect3"/>
+  <line text="Method call"/>
+  <line text="&lt;In Aspect3"/>
+  <line text="&lt;In Aspect1"/>
+  </stdout>
+  </run>
+  </ajc-test>
 
   <ajc-test dir="bugs1611/pr328840" title="pr328840">
     <compile files="Wibble.aj" options="-1.5 -showWeaveInfo">
index 5e33fa63cce20cce23c2589b6a869e59500f43ce..29941da8ea324a5be406e35ad3669c7c406b86f4 100644 (file)
@@ -276,6 +276,21 @@ public class IncrementalCompilationTests extends AbstractMultiProjectIncremental
                IProgramElement ipe = model.findElementForHandleOrCreate("=PR278496_1<a.b.c{Code.java", false);
                assertNull(ipe);
        }
+       
+       // inner classes
+       public void testDeletion_278496_9() throws Exception {
+               String p = "PR278496_9";
+               initialiseProject(p);
+               configureNonStandardCompileOptions(p, "-Xset:minimalModel=true");
+               build(p);
+               checkWasFullBuild();
+               printModel(p);
+
+               AspectJElementHierarchy model = (AspectJElementHierarchy) getModelFor(p).getHierarchy();
+               // Node for "Code.java" should not be there:
+               IProgramElement ipe = model.findElementForHandleOrCreate("=PR278496_9<a.b.c{Code.java", false);
+               assertNull(ipe);
+       }
 
        // deleting unaffected model entries
        public void testDeletion_278496_2() throws Exception {