You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Driver.java 2.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. // operations on private && protected aspect members (++, -- in partciular)
  2. import org.aspectj.testing.Tester;
  3. public class Driver {
  4. public static void main(String[] args) { test(); }
  5. public static void test() {
  6. Foo foo = new Foo();
  7. foo.foo();
  8. Tester.checkEqual(Aspect.getPrivateAspectVar(), 23);
  9. Tester.checkEqual(Aspect.aspectOf().getPrivateAspectInstanceVar(), 23);
  10. }
  11. }
  12. class Foo {
  13. public void foo() {
  14. }
  15. }
  16. //XXX need to put some of eachobject back into this some day
  17. aspect Aspect {
  18. private static final int PRIVATEASPECTCONST = 10;
  19. private static int privateAspectVar = 20;
  20. protected static int protectedAspectVar = 40;
  21. public static int getPrivateAspectVar() {
  22. return privateAspectVar;
  23. }
  24. private int privateAspectInstanceVar = 30;
  25. protected int protectedAspectInstanceVar = 50;
  26. public int getPrivateAspectInstanceVar() {
  27. return privateAspectInstanceVar;
  28. }
  29. pointcut onFoo(): target(Foo) && call(void foo());
  30. before(): onFoo() {
  31. privateAspectVar = 21;
  32. privateAspectVar = 1 + privateAspectVar;
  33. Tester.checkEqual(privateAspectVar, 22);
  34. Tester.checkEqual(privateAspectVar += 1, 23);
  35. Tester.checkEqual(privateAspectVar++, 23);
  36. Tester.checkEqual(privateAspectVar, 24);
  37. Tester.checkEqual(privateAspectVar--, 24);
  38. Tester.checkEqual(privateAspectVar, 23);
  39. Tester.checkEqual(++privateAspectVar, 24);
  40. Tester.checkEqual(privateAspectVar, 24);
  41. Tester.checkEqual(--privateAspectVar, 23);
  42. }
  43. before(): onFoo() {
  44. privateAspectVar = 21;
  45. privateAspectVar = 1 + privateAspectVar;
  46. Tester.checkEqual(privateAspectVar, 22);
  47. Tester.checkEqual(privateAspectVar += 1, 23);
  48. Tester.checkEqual(privateAspectVar++, 23);
  49. Tester.checkEqual(privateAspectVar, 24);
  50. Tester.checkEqual(privateAspectVar--, 24);
  51. Tester.checkEqual(privateAspectVar, 23);
  52. Tester.checkEqual(++privateAspectVar, 24);
  53. Tester.checkEqual(privateAspectVar, 24);
  54. Tester.checkEqual(--privateAspectVar, 23);
  55. Tester.checkEqual(privateAspectVar, 23);
  56. privateAspectInstanceVar = 21;
  57. privateAspectInstanceVar = 1 + privateAspectInstanceVar;
  58. Tester.checkEqual(privateAspectInstanceVar, 22);
  59. Tester.checkEqual(privateAspectInstanceVar += 1, 23);
  60. Tester.checkEqual(privateAspectInstanceVar++, 23);
  61. Tester.checkEqual(privateAspectInstanceVar, 24);
  62. Tester.checkEqual(privateAspectInstanceVar--, 24);
  63. Tester.checkEqual(privateAspectInstanceVar, 23);
  64. Tester.checkEqual(++privateAspectInstanceVar, 24);
  65. Tester.checkEqual(privateAspectInstanceVar, 24);
  66. Tester.checkEqual(--privateAspectInstanceVar, 23);
  67. Tester.checkEqual(privateAspectInstanceVar, 23);
  68. }
  69. }