]> source.dussan.org Git - aspectj.git/commitdiff
testcode for 169432 and 209051
authoraclement <aclement>
Thu, 8 Nov 2007 09:00:23 +0000 (09:00 +0000)
committeraclement <aclement>
Thu, 8 Nov 2007 09:00:23 +0000 (09:00 +0000)
tests/src/org/aspectj/systemtest/ajc154/Ajc154Tests.java
tests/src/org/aspectj/systemtest/ajc154/ajc154.xml

index bb2691711051bcebf9fab25fd8fef16baa95519b..731c8777a94143ba47f3e7df17b02dc4a0c34fe9 100644 (file)
@@ -45,7 +45,10 @@ public class Ajc154Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
 //             runTest("new pointcut designators in a reference pointcut");
 //     }
 
-       //public void testDecpProblemWhenTargetAlreadyImplements_pr169432() { runTest("declare parents problem when target already implements interface");}
+       //public void testAsteriskInAtPointcut_pr209051() { runTest("asterisk in at aj pointcut");}
+       public void testDecpProblemWhenTargetAlreadyImplements_pr169432_1() { runTest("declare parents problem when target already implements interface - 1");}
+       public void testDecpProblemWhenTargetAlreadyImplements_pr169432_2() { runTest("declare parents problem when target already implements interface - 2");}
+       public void testDecpProblemWhenTargetAlreadyImplements_pr169432_3() { runTest("declare parents problem when target already implements interface - 3");}
        
        public void testVariousLtwAroundProblems_pr209019_1() { runTest("various issues with ltw and around advice - 1"); }
        public void testVariousLtwAroundProblems_pr209019_2() { runTest("various issues with ltw and around advice - 2"); }
index b929a8200684048f269ad534364aa2d16e87ac07..73ae018394497c286dcee9b06bfcc78dd2e03b87 100644 (file)
@@ -3,6 +3,15 @@
 <!-- AspectJ v1.6.0 Tests -->
 <suite>
 
+   <ajc-test dir="bugs154/pr209051" title="asterisk in at aj pointcut">
+     <compile options="-1.5" files="Bug.java"/>
+     <run class="Bug">
+       <stdout>
+         <line text="x"/>
+       </stdout>
+     </run>
+   </ajc-test>
+
    <!-- very basic with all code style, should be fine -->
    <ajc-test dir="bugs154/pr209019/case1" title="various issues with ltw and around advice - 1">
      <compile options="-1.5" files="A.java,DurationMethod.java,AbstractDurationMethod.java,Runner.java"/>
      </run>
    </ajc-test>
    
-   
-
-
-   <ajc-test dir="bugs154/pr169432" title="declare parents problem when target already implements interface">
+   <!-- just checking the new syntax compiles OK -->
+   <ajc-test dir="bugs154/pr169432/case1" title="declare parents problem when target already implements interface - 1">
      <compile options="-1.5" files="NonMarkerInterface.java,ClassThatAlreadyIncludesRequiredMethods.java,DeclareParentsForNonMarkerInterfaceToAClassThatAlreadyIncludeRequiredMethods.java"/>
    </ajc-test>
    
+   <!-- now violate the rules, the types matching the pattern do not implement the interface -->
+   <ajc-test dir="bugs154/pr169432/case2" title="declare parents problem when target already implements interface - 2">
+    <compile options="-1.5" files="A.java">
+       <message kind="error" line="20" text="@DeclareParents: No defaultImpl was specified but the type 'C1' does not implement the method 'int m()' defined on the interface 'NonMarkerInterface'"/>
+       <message kind="error" line="24" text="@DeclareParents: No defaultImpl was specified but the type 'C2' does not implement the method 'int m()' defined on the interface 'NonMarkerInterface'"/>
+     </compile>
+   </ajc-test>
 
+   <!-- now they do, lets check they behave as expected -->   
+   <ajc-test dir="bugs154/pr169432/case3" title="declare parents problem when target already implements interface - 3">
+     <compile options="-1.5" files="A.java"/>
+     <run class="A">
+        <stdout>
+            <line text="C1.m() returns 1"/>
+            <line text="C2.m() returns 2"/>
+        </stdout>
+     </run>
+   </ajc-test>
 
    <ajc-test dir="bugs154/pr202088" title="abstract annotation style pointcut with context">
      <compile options="-1.5" files="Bug.java"/>