### Eclipse Workspace Patch 1.0 #P tests Index: src/org/aspectj/systemtest/incremental/tools/MultiProjectIncrementalTests.java =================================================================== RCS file: /home/technology/org.aspectj/modules/tests/src/org/aspectj/systemtest/incremental/tools/MultiProjectIncrementalTests.java,v retrieving revision 1.64 diff -u -r1.64 MultiProjectIncrementalTests.java --- src/org/aspectj/systemtest/incremental/tools/MultiProjectIncrementalTests.java 18 Aug 2006 14:59:26 -0000 1.64 +++ src/org/aspectj/systemtest/incremental/tools/MultiProjectIncrementalTests.java 22 Aug 2006 13:14:45 -0000 @@ -1494,6 +1494,30 @@ +warnings,warnings.isEmpty()); } + public void testAdviceDidNotMatchUpdatedCorrectly_pr154690() { + initialiseProject("PR154690"); + build("PR154690"); + String expected = "advice defined in pkg.A has not been applied " + + "[Xlint:adviceDidNotMatch]"; + assertEquals("warning message should be '" + expected + "' ",expected, + ((IMessage)MyTaskListManager.getWarningMessages().get(0)) + .getMessage()); + // add the class - the advice should now match + alter("PR154690","inc1"); + build("PR154690"); + List warnings = MyTaskListManager.getWarningMessages(); + assertTrue("There should be no warnings now the advice matches:\n"+warnings, + warnings.isEmpty()); + // comment out the matching line and we should get the adviceDidNotMatch warning + alter("PR154690","inc2"); + build("PR154690"); + checkWasntFullBuild(); + warnings = MyTaskListManager.getWarningMessages(); + assertEquals("warning message should be '" + expected + "' ",expected, + ((IMessage)MyTaskListManager.getWarningMessages().get(0)) + .getMessage()); + } + // --- helper code --- /** Index: multiIncremental/PR154690/base/pkg/A.aj =================================================================== RCS file: multiIncremental/PR154690/base/pkg/A.aj diff -N multiIncremental/PR154690/base/pkg/A.aj --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ multiIncremental/PR154690/base/pkg/A.aj 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,12 @@ +package pkg; + +public aspect A { + + pointcut tracedPrint(String s): + call(void java.io.PrintStream.println(*)) + && args(s) && !within(A); + + before(String s): tracedPrint(s) { + System.out.println("got you: " + s + " ;)"); + } +} Index: multiIncremental/PR154690/inc2/pkg/C.java =================================================================== RCS file: multiIncremental/PR154690/inc2/pkg/C.java diff -N multiIncremental/PR154690/inc2/pkg/C.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ multiIncremental/PR154690/inc2/pkg/C.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,7 @@ +package pkg; + +public class C { + public static void main(String[] args) { + //System.out.println("main"); + } +} Index: multiIncremental/PR154690/inc1/pkg/C.java =================================================================== RCS file: multiIncremental/PR154690/inc1/pkg/C.java diff -N multiIncremental/PR154690/inc1/pkg/C.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ multiIncremental/PR154690/inc1/pkg/C.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,7 @@ +package pkg; + +public class C { + public static void main(String[] args) { + System.out.println("main"); + } +}