aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authoraclement <aclement>2004-08-13 14:48:43 +0000
committeraclement <aclement>2004-08-13 14:48:43 +0000
commit98c78c9c39384fa1c4734097308e5b38f1f83072 (patch)
tree867979cccda29de754d6c2d4eff87d95e0e7cf14 /tests
parent04e658c273b4bb0ecab65ab3b847c15f5b483988 (diff)
downloadaspectj-98c78c9c39384fa1c4734097308e5b38f1f83072.tar.gz
aspectj-98c78c9c39384fa1c4734097308e5b38f1f83072.zip
Fix and tests for Bugzilla Bug 71372
NoSuchMethodError calling private method from around advice in inner aspect
Diffstat (limited to 'tests')
-rw-r--r--tests/src/org/aspectj/systemtest/ajc121/Ajc121Tests.java30
-rw-r--r--tests/src/org/aspectj/systemtest/ajc121/ajc121-tests.xml27
2 files changed, 55 insertions, 2 deletions
diff --git a/tests/src/org/aspectj/systemtest/ajc121/Ajc121Tests.java b/tests/src/org/aspectj/systemtest/ajc121/Ajc121Tests.java
index 0e5654ec6..1d7964940 100644
--- a/tests/src/org/aspectj/systemtest/ajc121/Ajc121Tests.java
+++ b/tests/src/org/aspectj/systemtest/ajc121/Ajc121Tests.java
@@ -180,7 +180,35 @@ public class Ajc121Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
public void test034_scopeForITDS_pr61768() {
runTest("scope for inter-type methods");
- }
+ }
+
+ public void test035_innerAspectCallsPrivateMethod_pr71372() {
+ runTest("NoSuchMethodError calling private method from around advice in inner aspect");
+ String s = getLastRunResult().getStdErr();
+ assertTrue("Expected ':before:around' but got "+s,
+ s.equals(":before:around"));
+ }
+
+ public void test036_innerAspectCallsPrivateMethod_pr71372_2() {
+ runTest("NoSuchMethodError calling private method from around advice in inner aspect (2)");
+ String s = getLastRunResult().getStdErr();
+ assertTrue("Expected ':before:around' but got "+s,
+ s.equals(":before:around"));
+ }
+
+ public void test037_innerAspectCallsPrivateMethod_pr71372_3() {
+ runTest("NoSuchMethodError calling private method from around advice in inner aspect (3)");
+ String s = getLastRunResult().getStdErr();
+ assertTrue("Expected ':before:around' but got "+s,
+ s.equals(":before:around"));
+ }
+
+ public void test038_innerAspectCallsPrivateMethod_pr71372_4() {
+ runTest("NoSuchMethodError calling private method from around advice in inner aspect (4)");
+ String s = getLastRunResult().getStdErr();
+ assertTrue("Expected ':before:around' but got "+s,
+ s.equals(":before:around"));
+ }
}
diff --git a/tests/src/org/aspectj/systemtest/ajc121/ajc121-tests.xml b/tests/src/org/aspectj/systemtest/ajc121/ajc121-tests.xml
index c11ce0228..1ebf21c7a 100644
--- a/tests/src/org/aspectj/systemtest/ajc121/ajc121-tests.xml
+++ b/tests/src/org/aspectj/systemtest/ajc121/ajc121-tests.xml
@@ -279,4 +279,29 @@
<compile files="PR61768.java">
<message kind="error" line="37" text="No enclosing instance of type Aspect is accessible"/>
</compile>
- </ajc-test> \ No newline at end of file
+ </ajc-test>
+
+ <ajc-test dir="bugs/doYouHaveVisiblePrivates" pr="71372"
+ title="NoSuchMethodError calling private method from around advice in inner aspect">
+ <compile files="PrivateCall.java"/>
+ <run class="PrivateCall"/>
+ </ajc-test>
+
+ <ajc-test dir="bugs/doYouHaveVisiblePrivates" pr="71372"
+ title="NoSuchMethodError calling private method from around advice in inner aspect (2)">
+ <compile files="PrivateCall2.java,PrivateCall3.java"/>
+ <run class="def.PrivateCall3"/>
+ </ajc-test>
+
+ <ajc-test dir="bugs/doYouHaveVisiblePrivates" pr="71372"
+ title="NoSuchMethodError calling private method from around advice in inner aspect (3)">
+ <compile files="PrivateCallInstance.java"/>
+ <run class="PrivateCallInstance"/>
+ </ajc-test>
+
+ <ajc-test dir="bugs/doYouHaveVisiblePrivates" pr="71372"
+ title="NoSuchMethodError calling private method from around advice in inner aspect (4)">
+ <compile files="PrivateCall_Instance_Package1.java,PrivateCall_Instance_Package2.java"/>
+ <run class="def.PrivateCall_Instance_Package2"/>
+ </ajc-test>
+