diff options
Diffstat (limited to 'tests/new/VoidAround.java')
-rw-r--r-- | tests/new/VoidAround.java | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/new/VoidAround.java b/tests/new/VoidAround.java new file mode 100644 index 000000000..6878041b1 --- /dev/null +++ b/tests/new/VoidAround.java @@ -0,0 +1,32 @@ + +import org.aspectj.testing.Tester; +import java.util.*; + +/** @testcase PR#836 void around advice without proceed */ +public class VoidAround { + + public static void main(String[] args) { + C c = new C(); + c.run(); + Object o = c.result(); + Tester.check(o == C.EXPECTED, "o: " + o); + Tester.checkAllEvents(); + } +} + +class C { + static Object EXPECTED = new Object(); + public void run() { } + public Object result() { return EXPECTED; } +} + +aspect A { + static { + Tester.expectEvent("void C.run()"); + Tester.expectEvent("Object C.result()"); + } + // no compile error expected (also note: message jp signatures are wrong?) + void around() : target(C) && call(* r*(..)) { + Tester.event(thisJoinPoint.getSignature().toString()); + } +} |