123456789101112131415161718192021222324252627282930313233343536373839404142 |
-
- import org.aspectj.testing.Tester;
- import org.aspectj.testing.Tester;
-
- public class Common {
- public static String[] SIGNALS = new String[] { };
- public static final void expect(String[] args) {
- for (int i = 0; i < args.length; i++) {
- expect(args[i]);
- }
- }
- public static final void expect(String s) { Tester.expectEvent(s); }
- public static final void signal(String s) { Tester.event(s); }
- public static final void fail(String s) { Tester.check(false, s); }
- public static final void check() { Tester.checkAllEvents(); }
- public static final void joinWith(Thread thread) {
- if (null == thread) {
- Common.fail("null thread");
- }
- try { thread.join(); }
- catch (InterruptedException e) {
- Common.fail("Interrupted");
- }
- }
- }
-
- class Target {
- public static void main (String[] args) {
- Common.expect(Target.SIGNALS);
- Common.expect(Aspect.SIGNALS);
- int result = new Target().targetMethod();
- if (1 != result) Common.fail("1 != result: " + result);
- Common.check();
- }
- pointcut pointcutTarget() : call(int Target.targetMethod());
- public static String[] SIGNALS = new String[]
- { "targetMethod()" };
- public int targetMethod() {
- Common.signal(SIGNALS[0]);
- return 1;
- }
- }
|