diff options
author | Andy Clement <andrew.clement@gmail.com> | 2013-01-21 17:56:20 -0800 |
---|---|---|
committer | Andy Clement <andrew.clement@gmail.com> | 2013-01-21 17:56:20 -0800 |
commit | f54f44a104806b06ab72b223c55d71476c95415d (patch) | |
tree | 990b928064e6cc988086f8402c9da22681c5534c /tests/src/org | |
parent | 96ebaaed65fe5d507cae3d56126d76f217a9f13a (diff) | |
download | aspectj-f54f44a104806b06ab72b223c55d71476c95415d.tar.gz aspectj-f54f44a104806b06ab72b223c55d71476c95415d.zip |
Allow code generation hints for generated compiler names
Diffstat (limited to 'tests/src/org')
-rw-r--r-- | tests/src/org/aspectj/systemtest/ajc172/Ajc172Tests.java | 32 | ||||
-rw-r--r-- | tests/src/org/aspectj/systemtest/ajc172/ajc172.xml | 51 |
2 files changed, 83 insertions, 0 deletions
diff --git a/tests/src/org/aspectj/systemtest/ajc172/Ajc172Tests.java b/tests/src/org/aspectj/systemtest/ajc172/Ajc172Tests.java index 292efcbee..eea4030d0 100644 --- a/tests/src/org/aspectj/systemtest/ajc172/Ajc172Tests.java +++ b/tests/src/org/aspectj/systemtest/ajc172/Ajc172Tests.java @@ -14,6 +14,8 @@ import java.io.File; import junit.framework.Test; +import org.aspectj.apache.bcel.classfile.JavaClass; +import org.aspectj.apache.bcel.classfile.Method; import org.aspectj.testing.XMLBasedAjcTestCase; /** @@ -21,6 +23,36 @@ import org.aspectj.testing.XMLBasedAjcTestCase; */ public class Ajc172Tests extends org.aspectj.testing.XMLBasedAjcTestCase { + public void testIfPointcutNames_pr398246() throws Exception{ + runTest("if pointcut names"); + JavaClass jc = getClassFrom(ajc.getSandboxDirectory(),"X"); + Method m = getMethodStartsWith(jc,"ajc$if"); + assertEquals("ajc$if$andy",m.getName()); + } + + public void testIfPointcutNames_pr398246_2() throws Exception { + runTest("if pointcut names 2"); + JavaClass jc = getClassFrom(ajc.getSandboxDirectory(),"X"); + Method m = getMethodStartsWith(jc,"ajc$if"); + assertEquals("ajc$if$fred",m.getName()); + } + + // fully qualified annotation name is used + public void testIfPointcutNames_pr398246_3() throws Exception { + runTest("if pointcut names 3"); + JavaClass jc = getClassFrom(ajc.getSandboxDirectory(),"X"); + Method m = getMethodStartsWith(jc,"ajc$if"); + assertEquals("ajc$if$barney",m.getName()); + } + + // compiling a class later than the initial build - does it pick up the right if clause name? + public void testIfPointcutNames_pr398246_4() throws Exception{ + runTest("if pointcut names 4"); + JavaClass jc = getClassFrom(ajc.getSandboxDirectory(),"X"); + Method m = getMethodStartsWith(jc,"ajc$if"); + assertEquals("ajc$if$sid",m.getName()); + } + public void testOptionalAspects_pr398588() { runTest("optional aspects"); } diff --git a/tests/src/org/aspectj/systemtest/ajc172/ajc172.xml b/tests/src/org/aspectj/systemtest/ajc172/ajc172.xml index 81217b60f..7dc6ce11b 100644 --- a/tests/src/org/aspectj/systemtest/ajc172/ajc172.xml +++ b/tests/src/org/aspectj/systemtest/ajc172/ajc172.xml @@ -33,6 +33,57 @@ </stdout> </run> </ajc-test> + + <ajc-test dir="bugs172/pr398246" title="if pointcut names"> + <compile files="Code.java" options="-1.5"> + </compile> + <run class="Code" options="-1.5"> + <stdout> + <line text="advice"/> + <line text="advice"/> + </stdout> + </run> + </ajc-test> + + <ajc-test dir="bugs172/pr398246" title="if pointcut names 2"> + <compile files="Code2.java" options="-1.5"> + </compile> + <run class="Code2" options="-1.5"> + <stdout> + <line text="advice"/> + <line text="advice"/> + </stdout> + </run> + </ajc-test> + + <ajc-test dir="bugs172/pr398246" title="if pointcut names 3"> + <compile files="Code3.java" options="-1.5"> + </compile> + <run class="Code3" options="-1.5"> + <stdout> + <line text="advice"/> + <line text="advice"/> + </stdout> + </run> + </ajc-test> + + <ajc-test dir="bugs172/pr398246" title="if pointcut names 4"> + <compile files="Code4.java" options="-1.5"></compile> + <compile files="Code4.java" options="-1.5" outjar="aspects.jar"/> + <run class="Code4" options="-1.5"> + <stdout> + <line text="advice"/> + <line text="advice"/> + </stdout> + </run> + <compile files="CodeExtra4.java" aspectpath="aspects.jar" options="-1.5"></compile> + <run class="CodeExtra4" options="-1.5"> + <stdout> + <line text="advice"/> + <line text="advice"/> + </stdout> + </run> + </ajc-test> <ajc-test dir="bugs172/pr389750" title="inconsistent class file"> <compile files="Code.aj" options="-1.5"> |