]> source.dussan.org Git - aspectj.git/commitdiff
265693: better test
authoraclement <aclement>
Tue, 24 Mar 2009 16:50:44 +0000 (16:50 +0000)
committeraclement <aclement>
Tue, 24 Mar 2009 16:50:44 +0000 (16:50 +0000)
tests/multiIncremental/AspectPath3/base/src/Asp2.java [deleted file]
tests/multiIncremental/AspectPath3/base/src/a/b/c/Asp.java [new file with mode: 0644]
tests/multiIncremental/AspectPath3/base/src/a/b/c/C.java [new file with mode: 0644]
tests/multiIncremental/AspectPath4/base/src/a/b/c/C.java [new file with mode: 0644]
tests/src/org/aspectj/systemtest/incremental/tools/MultiProjectIncrementalTests.java

diff --git a/tests/multiIncremental/AspectPath3/base/src/Asp2.java b/tests/multiIncremental/AspectPath3/base/src/Asp2.java
deleted file mode 100644 (file)
index dcaf6ca..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-public aspect Asp2 {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- before(): execution(* fo*(..)) {}
-}
diff --git a/tests/multiIncremental/AspectPath3/base/src/a/b/c/Asp.java b/tests/multiIncremental/AspectPath3/base/src/a/b/c/Asp.java
new file mode 100644 (file)
index 0000000..b13c296
--- /dev/null
@@ -0,0 +1,7 @@
+package a.b.c;
+
+aspect Asp {
+//  before(): staticinitialization(*) {}
+
+  int C.i = 5;
+}
diff --git a/tests/multiIncremental/AspectPath3/base/src/a/b/c/C.java b/tests/multiIncremental/AspectPath3/base/src/a/b/c/C.java
new file mode 100644 (file)
index 0000000..d00e099
--- /dev/null
@@ -0,0 +1,4 @@
+package a.b.c;
+
+class C {
+}
diff --git a/tests/multiIncremental/AspectPath4/base/src/a/b/c/C.java b/tests/multiIncremental/AspectPath4/base/src/a/b/c/C.java
new file mode 100644 (file)
index 0000000..ab41297
--- /dev/null
@@ -0,0 +1,12 @@
+package a.b.c;
+import java.util.List;
+import java.lang.annotation.Retention;
+import org.aspectj.lang.annotation.Around;
+
+public class C {
+  public static void main(String []argv) {
+    new C().foo();
+  }
+
+  public void foo() {}
+}
index e3a5f3e380d23e273af486e110ab3bf3a7869bcc..f411411f4a4acdffa1caf9f2af29d26f4a7c0084 100644 (file)
@@ -976,13 +976,33 @@ public class MultiProjectIncrementalTests extends AbstractMultiProjectIncrementa
                configureAspectPath(bug2, getProjectRelativePath(bug, "bin"));
                build(bug);
                build(bug2);
-               dumptree(getModelFor(bug2).getHierarchy().getRoot(), 0);
-               PrintWriter pw = new PrintWriter(System.out);
-               getModelFor(bug2).dumprels(pw);
-               pw.flush();
+               // dumptree(getModelFor(bug2).getHierarchy().getRoot(), 0);
+               // PrintWriter pw = new PrintWriter(System.out);
+               // getModelFor(bug2).dumprels(pw);
+               // pw.flush();
                IProgramElement root = getModelFor(bug2).getHierarchy().getRoot();
-               assertEquals("=AspectPath4/binaries<pkg(Asp.class}Asp&before", findElementAtLine(root, 5).getHandleIdentifier());
-               assertEquals("=AspectPath4/binaries<(Asp2.class}Asp2&before", findElementAtLine(root, 16).getHandleIdentifier());
+               IProgramElement binariesNode = getChild(root, "binaries");
+               assertNotNull(binariesNode);
+               IProgramElement packageNode = (IProgramElement) binariesNode.getChildren().get(0);
+               assertEquals("a.b.c", packageNode.getName());
+               IProgramElement fileNode = (IProgramElement) packageNode.getChildren().get(0);
+               assertEquals(IProgramElement.Kind.FILE, fileNode.getKind());
+       }
+
+       private IProgramElement getChild(IProgramElement start, String name) {
+               if (start.getName().equals(name)) {
+                       return start;
+               }
+               List kids = start.getChildren();
+               if (kids != null) {
+                       for (int i = 0; i < kids.size(); i++) {
+                               IProgramElement found = getChild((IProgramElement) kids.get(i), name);
+                               if (found != null) {
+                                       return found;
+                               }
+                       }
+               }
+               return null;
        }
 
        public void testHandleQualification_pr265993() throws IOException {