aboutsummaryrefslogtreecommitdiffstats
path: root/tests/new/innerAspectAccess/Driver.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/new/innerAspectAccess/Driver.java')
-rw-r--r--tests/new/innerAspectAccess/Driver.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/new/innerAspectAccess/Driver.java b/tests/new/innerAspectAccess/Driver.java
new file mode 100644
index 000000000..e77b66e2e
--- /dev/null
+++ b/tests/new/innerAspectAccess/Driver.java
@@ -0,0 +1,40 @@
+import org.aspectj.testing.Tester;
+
+// PR#211
+
+public class Driver {
+ public static String s = "s";
+
+ public static void main(String[] args) { test(); }
+
+ public static void test() {
+ doIt();
+ Tester.checkEqual(s, "s:a:b", "both advice worked");
+ }
+
+ public static String doIt() {
+ return s;
+ }
+}
+
+aspect Outer {
+ static int N = 10;
+
+ pointcut staticMeth(): within(Driver) && execution(String doIt());
+
+ static aspect Inner {
+ static void foo() {
+ int i = N;
+ }
+
+ before(): staticMeth() {
+ Driver.s += ":b";
+ }
+
+ pointcut innerPoints(): within(Driver) && execution(void test());
+ }
+
+ before(): Outer.Inner.innerPoints() {
+ Driver.s += ":a";
+ }
+}