mirror of
https://github.com/eclipse-aspectj/aspectj.git
synced 2024-09-03 05:54:57 +02:00
43 lines
1.3 KiB
Java
43 lines
1.3 KiB
Java
|
|
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;
|
|
}
|
|
}
|