summaryrefslogtreecommitdiffstats
path: root/tests/src/org
diff options
context:
space:
mode:
authorAndy Clement <andrew.clement@gmail.com>2013-01-21 17:56:20 -0800
committerAndy Clement <andrew.clement@gmail.com>2013-01-21 17:56:20 -0800
commitf54f44a104806b06ab72b223c55d71476c95415d (patch)
tree990b928064e6cc988086f8402c9da22681c5534c /tests/src/org
parent96ebaaed65fe5d507cae3d56126d76f217a9f13a (diff)
downloadaspectj-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.java32
-rw-r--r--tests/src/org/aspectj/systemtest/ajc172/ajc172.xml51
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">