diff options
author | aclement <aclement> | 2008-06-03 04:38:40 +0000 |
---|---|---|
committer | aclement <aclement> | 2008-06-03 04:38:40 +0000 |
commit | e7a6acd6d481f219ba4f87ec1a2cfa29e5aa9fd5 (patch) | |
tree | 81a8d348332bb4a5d8b6b9a07f7c926da0d8b2b2 /tests | |
parent | 239e51fe25f1b88118b77cd1717bac336d536248 (diff) | |
download | aspectj-e7a6acd6d481f219ba4f87ec1a2cfa29e5aa9fd5.tar.gz aspectj-e7a6acd6d481f219ba4f87ec1a2cfa29e5aa9fd5.zip |
235204: test
Diffstat (limited to 'tests')
-rw-r--r-- | tests/bugs161/pr235204/RecursiveCatcher.java | 21 | ||||
-rw-r--r-- | tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java | 23 | ||||
-rw-r--r-- | tests/src/org/aspectj/systemtest/ajc161/ajc161.xml | 5 |
3 files changed, 48 insertions, 1 deletions
diff --git a/tests/bugs161/pr235204/RecursiveCatcher.java b/tests/bugs161/pr235204/RecursiveCatcher.java new file mode 100644 index 000000000..4a3bebd31 --- /dev/null +++ b/tests/bugs161/pr235204/RecursiveCatcher.java @@ -0,0 +1,21 @@ + +package recursivepackage; + +public aspect RecursiveCatcher { + + pointcut recur() : + call(public void + *.recursiveCall(int)); + + + before(): recur() { + // empty + } + + + public void recursiveCall(int i) { // marker is here + recursiveCall(i); // marker should be here + } + +} + diff --git a/tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java b/tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java index e36773624..d03eebb5b 100644 --- a/tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java +++ b/tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java @@ -11,15 +11,36 @@ package org.aspectj.systemtest.ajc161; import java.io.File; +import java.util.Iterator; +import java.util.Set; import junit.framework.Test; +import org.aspectj.asm.AsmManager; +import org.aspectj.asm.IRelationshipMap; import org.aspectj.testing.XMLBasedAjcTestCase; public class Ajc161Tests extends org.aspectj.testing.XMLBasedAjcTestCase { // AspectJ1.6.1 - public void testITDPrecedence_pr233838_1() { runTest("itd precedence - 1"); } + public void testIncorrectRelationship_pr235204() { + runTest("incorrect call relationship"); + IRelationshipMap irm = AsmManager.getDefault().getRelationshipMap(); + Set entries = irm.getEntries(); + String gotit = ""; + for (Iterator iterator = entries.iterator(); iterator.hasNext();) { + Object object = (Object) iterator.next(); + gotit = (String) object; + break; + } + if (gotit.indexOf("method-call") == -1) { + String expected = "<recursivepackage{RecursiveCatcher.java}RecursiveCatcher~recursiveCall~I?method-call(void recursivepackage.RecursiveCatcher.recursiveCall(int))"; + fail("Expected '" + expected + "' but got '" + gotit + "'"); + } + } + + public void testITDPrecedence_pr233838_1() { + runTest("itd precedence - 1"); } public void testITDPrecedence_pr233838_2() { runTest("itd precedence - 2"); } public void testGetFieldGenerics_pr227401() { runTest("getfield problem with generics");} public void testGenericAbstractAspects_pr231478() { runTest("generic abstract aspects"); } diff --git a/tests/src/org/aspectj/systemtest/ajc161/ajc161.xml b/tests/src/org/aspectj/systemtest/ajc161/ajc161.xml index d75609647..8a48e58c5 100644 --- a/tests/src/org/aspectj/systemtest/ajc161/ajc161.xml +++ b/tests/src/org/aspectj/systemtest/ajc161/ajc161.xml @@ -3,6 +3,11 @@ <!-- AspectJ v1.6.1 Tests --> <suite> + + <ajc-test dir="bugs161/pr235204" title="incorrect call relationship"> + <compile files="RecursiveCatcher.java" options="-1.5 -emacssym"/> + </ajc-test> + <ajc-test dir="bugs161/pr233838" title="itd precedence - 1"> <compile files="Z.java" options="-1.5"/> <run class="Z"> |