From: aclement Date: Tue, 6 Jul 2010 17:18:28 +0000 (+0000) Subject: 318884: incremental: member types X-Git-Tag: V1_6_10RC1~145 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=2550fb71eb0d396c7ad2b786eb6193a5de62c5f4;p=aspectj.git 318884: incremental: member types --- diff --git a/tests/multiIncremental/pr318884_7/base/src/A.java b/tests/multiIncremental/pr318884_7/base/src/A.java new file mode 100644 index 000000000..feff83aa8 --- /dev/null +++ b/tests/multiIncremental/pr318884_7/base/src/A.java @@ -0,0 +1,5 @@ +public class A { + public static void main(String []argv) { + new B.C(); + } +} diff --git a/tests/multiIncremental/pr318884_7/base/src/B.java b/tests/multiIncremental/pr318884_7/base/src/B.java new file mode 100644 index 000000000..ca746393f --- /dev/null +++ b/tests/multiIncremental/pr318884_7/base/src/B.java @@ -0,0 +1,4 @@ +public class B { + public static class C { + } +} diff --git a/tests/multiIncremental/pr318884_7/inc1/src/B.java b/tests/multiIncremental/pr318884_7/inc1/src/B.java new file mode 100644 index 000000000..66dd24ce6 --- /dev/null +++ b/tests/multiIncremental/pr318884_7/inc1/src/B.java @@ -0,0 +1,2 @@ +public class B { +} diff --git a/tests/multiIncremental/pr318884_8/base/src/A.java b/tests/multiIncremental/pr318884_8/base/src/A.java new file mode 100644 index 000000000..0abc4874a --- /dev/null +++ b/tests/multiIncremental/pr318884_8/base/src/A.java @@ -0,0 +1,5 @@ +public class A { + public static void main(String []argv) { + new B.C("abc"); + } +} diff --git a/tests/multiIncremental/pr318884_8/base/src/B.java b/tests/multiIncremental/pr318884_8/base/src/B.java new file mode 100644 index 000000000..09db9d7c0 --- /dev/null +++ b/tests/multiIncremental/pr318884_8/base/src/B.java @@ -0,0 +1,5 @@ +public class B { + public static class C { + public C(String s) {} + } +} diff --git a/tests/multiIncremental/pr318884_8/inc1/src/B.java b/tests/multiIncremental/pr318884_8/inc1/src/B.java new file mode 100644 index 000000000..ca746393f --- /dev/null +++ b/tests/multiIncremental/pr318884_8/inc1/src/B.java @@ -0,0 +1,4 @@ +public class B { + public static class C { + } +} diff --git a/tests/src/org/aspectj/systemtest/incremental/tools/IncrementalCompilationTests.java b/tests/src/org/aspectj/systemtest/incremental/tools/IncrementalCompilationTests.java index 7d6e59854..5c33c36c5 100644 --- a/tests/src/org/aspectj/systemtest/incremental/tools/IncrementalCompilationTests.java +++ b/tests/src/org/aspectj/systemtest/incremental/tools/IncrementalCompilationTests.java @@ -109,4 +109,32 @@ public class IncrementalCompilationTests extends AbstractMultiProjectIncremental assertEquals(1, getErrorMessages(p).size()); assertContains("Type mismatch: cannot convert from element type Integer to String", getErrorMessages(p).get(0)); } + + // removing static inner class + public void testInnerClassChanges_318884_7() throws Exception { + String p = "pr318884_7"; + initialiseProject(p); + build(p); + checkWasFullBuild(); + checkCompileWeaveCount(p, 2, 3); + alter(p, "inc1"); + build(p); + checkWasntFullBuild(); + assertEquals(1, getErrorMessages(p).size()); + assertContains("B.C cannot be resolved to a type", getErrorMessages(p).get(0)); + } + + // removing constructor from a static inner class + public void testInnerClassChanges_318884_8() throws Exception { + String p = "pr318884_8"; + initialiseProject(p); + build(p); + checkWasFullBuild(); + checkCompileWeaveCount(p, 2, 3); + alter(p, "inc1"); + build(p); + checkWasntFullBuild(); + assertEquals(1, getErrorMessages(p).size()); + assertContains("The constructor B.C(String) is undefined", getErrorMessages(p).get(0)); + } }