]> source.dussan.org Git - aspectj.git/commitdiff
more language tests
authoraclement <aclement>
Fri, 16 Dec 2011 16:54:20 +0000 (16:54 +0000)
committeraclement <aclement>
Fri, 16 Dec 2011 16:54:20 +0000 (16:54 +0000)
tests/bugs170/language/MultiCatchAspect.java [new file with mode: 0644]
tests/bugs170/language/TryResourcesAspect.java [new file with mode: 0644]
tests/src/org/aspectj/systemtest/ajc170/Ajc170Tests.java
tests/src/org/aspectj/systemtest/ajc170/ajc170.xml

diff --git a/tests/bugs170/language/MultiCatchAspect.java b/tests/bugs170/language/MultiCatchAspect.java
new file mode 100644 (file)
index 0000000..2ff882a
--- /dev/null
@@ -0,0 +1,36 @@
+public class MultiCatchAspect {
+
+       public static void main(String[] args) {
+        }
+}
+
+aspect X {
+
+       before(): execution(* main(..)) {
+               try {
+                       foo("abc");
+               } catch (ExceptionA | ExceptionB ex) {
+                       bar(ex);
+               }
+       }
+
+       public static void bar(Exception ea) {
+
+       }
+
+       public static void foo(String s) throws ExceptionA, ExceptionB {
+               if (s.equals("ta")) {
+                       throw new ExceptionA();
+               } else {
+                       throw new ExceptionB();
+               }
+       }
+}
+
+@SuppressWarnings("serial")
+class ExceptionA extends Exception {
+}
+
+@SuppressWarnings("serial")
+class ExceptionB extends Exception {
+}
diff --git a/tests/bugs170/language/TryResourcesAspect.java b/tests/bugs170/language/TryResourcesAspect.java
new file mode 100644 (file)
index 0000000..4fe59d7
--- /dev/null
@@ -0,0 +1,25 @@
+import java.io.*;
+
+public class TryResourcesAspect {
+}
+
+aspect Foo {
+  before(): execution(* *(..)) {
+    String src = "foo.txt";
+    String dest = "foocopy.txt";
+    try (
+ //     InputStream in = new FileInputStream(src);
+//      OutputStream out = new FileOutputStream(dest))
+MyCustomInputStream is = new MyCustomInputStream(src))
+      {
+         // code
+      }
+  }
+
+
+  static class MyCustomInputStream implements Closeable {
+     MyCustomInputStream(String src) {}
+     public void close() throws IOException {
+     }
+  }
+}
index 813d8444b992110b2de8251e8dbf8e297c5cc188..a6102fd08de1c06c4af23678f83e21a290ef85ae 100644 (file)
@@ -82,6 +82,10 @@ public class Ajc170Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
                runTest("multi catch with handler 1");
        }
 
+       public void testMultiCatchAspect1() {
+               runTest("multi catch aspect 1");
+       }
+
        // public void testMultiCatchWithHandler2() {
        // runTest("multi catch with handler 2");
        // }
@@ -102,6 +106,14 @@ public class Ajc170Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
                runTest("stackoverflow");
        }
 
+       // public void testTryResources1() {
+       // runTest("try resources 1");
+       // }
+       //
+       // public void testTryResources2() {
+       // runTest("try resources 2");
+       // }
+
        // ---
 
        public static Test suite() {
index 816ea2feedebcdbfbca68020add6b8dec548b1f3..8a6c34c53d9d356863e6dc199f7dac3c1c53f007 100644 (file)
        </compile>
    </ajc-test>
    
+   <ajc-test dir="bugs170/language" title="multi catch aspect 1">
+       <compile files="MultiCatchAspect.java" options="-1.7">
+       </compile>
+   </ajc-test>
+
+   <ajc-test dir="bugs170/language" title="try resources 1">
+       <compile files="TryResources.java" options="-1.7">
+       </compile>
+   </ajc-test>
+   
+   <ajc-test dir="bugs170/language" title="try resources 2">
+       <compile files="TryResourcesAspect.java" options="-1.7">
+       </compile>
+   </ajc-test>
+   
    <ajc-test dir="bugs170/language" title="multi catch with handler 2">
        <compile files="MultiCatchWithHandler2.java" options="-1.7">
        </compile>