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.

overweaving.xml 7.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. <!DOCTYPE suite SYSTEM "../tests/ajcTestSuite.dtd"[]>
  2. <suite>
  3. <ajc-test dir="features167/overweaving/getset" title="getset - 1">
  4. <compile files="A.aj B.aj Class1.java Class2.java" options="-1.5"/>
  5. <run class="Class1">
  6. <stdout>
  7. <line text="B:set(String Class1.message)"/>
  8. <line text="A:get(PrintStream java.lang.System.out)"/>
  9. <line text="A:get(String Class1.message)"/>
  10. <line text="Class1.main"/>
  11. </stdout>
  12. </run>
  13. <run class="Class2">
  14. <stdout>
  15. <line text="B:set(String Class2.message)"/>
  16. <line text="A:get(PrintStream java.lang.System.out)"/>
  17. <line text="A:get(String Class2.message)"/>
  18. <line text="Class2.main"/>
  19. </stdout>
  20. </run>
  21. </ajc-test>
  22. <ajc-test dir="features167/overweaving/getset" title="getset - 2">
  23. <compile files="A.aj Class1.java" options="-1.5"/>
  24. <compile files="B.aj" options="-1.5 -Xlint:ignore"/>
  25. <compile files="Class2.java" options="-1.5 -Xlint:ignore"/>
  26. <run class="Class1" ltw="aop.xml">
  27. <stdout>
  28. <!-- should be advised by both, but was *already* advised by A during first weave -->
  29. <line text="B:set(String Class1.message)"/>
  30. <line text="A:get(PrintStream java.lang.System.out)"/>
  31. <line text="A:get(String Class1.message)"/>
  32. <line text="Class1.main"/>
  33. </stdout>
  34. </run>
  35. <run class="Class2" ltw="aop.xml">
  36. <stdout>
  37. <line text="B:set(String Class2.message)"/>
  38. <line text="A:get(PrintStream java.lang.System.out)"/>
  39. <line text="A:get(String Class2.message)"/>
  40. <line text="Class2.main"/>
  41. </stdout>
  42. </run>
  43. </ajc-test>
  44. <ajc-test dir="features167/overweaving/getsetTJP" title="getset - tjp - 1">
  45. <compile files="A.aj Class1.java" options="-1.5"/>
  46. <compile files="B.aj" options="-1.5 -Xlint:ignore"/>
  47. <compile files="Class2.java" options="-1.5 -Xlint:ignore"/>
  48. <run class="Class1" ltw="aop.xml">
  49. <stdout>
  50. <!-- should be advised by both, but was *already* advised by A during first weave -->
  51. <line text="B:set(String Class1.message)"/>
  52. <line text="A:get(PrintStream java.lang.System.out)"/>
  53. <line text="A:get(String Class1.message)"/>
  54. <line text="Class1.main"/>
  55. </stdout>
  56. </run>
  57. <run class="Class2" ltw="aop.xml">
  58. <stdout>
  59. <line text="B:set(String Class2.message)"/>
  60. <line text="A:get(PrintStream java.lang.System.out)"/>
  61. <line text="A:get(String Class2.message)"/>
  62. <line text="Class2.main"/>
  63. </stdout>
  64. </run>
  65. </ajc-test>
  66. <ajc-test dir="features167/overweaving/calls" title="calls - 1">
  67. <compile files="A.aj B.aj Class1.java Class2.java" options="-1.5"/>
  68. <run class="Class1">
  69. <stdout>
  70. <line text="B:call(void java.io.PrintStream.println(String))"/>
  71. <line text="A:call(void java.io.PrintStream.println(String))"/>
  72. <line text="Class1.main"/>
  73. </stdout>
  74. </run>
  75. <run class="Class2">
  76. <stdout>
  77. <line text="B:call(void java.io.PrintStream.println(String))"/>
  78. <line text="A:call(void java.io.PrintStream.println(String))"/>
  79. <line text="Class2.main"/>
  80. </stdout>
  81. </run>
  82. </ajc-test>
  83. <ajc-test dir="features167/overweaving/calls" title="calls - 2">
  84. <compile files="A.aj Class1.java" options="-1.5"/>
  85. <compile files="B.aj" options="-1.5 -Xlint:ignore"/>
  86. <compile files="Class2.java" options="-1.5 -Xlint:ignore"/>
  87. <run class="Class1" ltw="aop.xml">
  88. <stdout>
  89. <!-- should be advised by both, but was *already* advised by A during first weave -->
  90. <line text="A:call(void java.io.PrintStream.println(String))"/>
  91. <line text="B:call(void java.io.PrintStream.println(String))"/>
  92. <line text="Class1.main"/>
  93. </stdout>
  94. </run>
  95. <run class="Class2" ltw="aop.xml">
  96. <stdout>
  97. <line text="B:call(void java.io.PrintStream.println(String))"/>
  98. <line text="A:call(void java.io.PrintStream.println(String))"/>
  99. <line text="Class2.main"/>
  100. </stdout>
  101. </run>
  102. </ajc-test>
  103. <ajc-test dir="features167/overweaving/callsTJP" title="calls - tjp - 1">
  104. <compile files="A.aj Class1.java" options="-1.5"/>
  105. <compile files="B.aj" options="-1.5 -Xlint:ignore"/>
  106. <compile files="Class2.java" options="-1.5 -Xlint:ignore"/>
  107. <run class="Class1" ltw="aop.xml">
  108. <stdout>
  109. <!-- should be advised by both, but was *already* advised by A during first weave -->
  110. <line text="A:call(void java.io.PrintStream.println(String))"/>
  111. <line text="B:call(void java.io.PrintStream.println(String))"/>
  112. <line text="Class1.main"/>
  113. </stdout>
  114. </run>
  115. <run class="Class2" ltw="aop.xml">
  116. <stdout>
  117. <line text="B:call(void java.io.PrintStream.println(String))"/>
  118. <line text="A:call(void java.io.PrintStream.println(String))"/>
  119. <line text="Class2.main"/>
  120. </stdout>
  121. </run>
  122. </ajc-test>
  123. <ajc-test dir="features167/overweaving/messy2" title="really messy">
  124. <compile files="A.aj Class1.java" options="-1.5"/>
  125. <compile files="B.aj" options="-1.5 -Xlint:ignore"/>
  126. <compile files="Class2.java" options="-1.5 -Xlint:ignore"/>
  127. <run class="Class1" ltw="aop.xml">
  128. <stdout>
  129. <!-- should be advised by both, but was *already* advised by A during first weave -->
  130. <line text="B:execution(void Class1.main(String[]))"/>
  131. <line text="A:execution(void Class1.main(String[]))"/>
  132. <line text="Class1.main"/>
  133. </stdout>
  134. </run>
  135. <run class="Class2" ltw="aop.xml">
  136. <stdout>
  137. <line text="B:execution(void Class2.main(String[]))"/>
  138. <line text="A:execution(void Class2.main(String[]))"/>
  139. <line text="Class2.main"/>
  140. </stdout>
  141. </run>
  142. </ajc-test>
  143. <ajc-test dir="features167/overweaving" title="simple">
  144. <compile files="A.aj C.java" options="-1.5"/>
  145. <compile files="X.aj" options="-1.5 -Xlint:ignore"/>
  146. <run class="com.andy.C" ltw="aop.xml">
  147. <stdout>
  148. <line text="AspectX&gt;&gt;execution(void com.andy.C.main(String[]))"/>
  149. <line text="AspectA&gt;&gt;execution(void com.andy.C.main(String[]))"/>
  150. <line text="AspectX&gt;&gt;execution(void com.andy.C.run())"/>
  151. <line text="hello andy"/>
  152. </stdout>
  153. </run>
  154. </ajc-test>
  155. <ajc-test dir="features167/overweaving/messy" title="messy">
  156. <compile files="A.aj C.java" options="-1.5"/>
  157. <compile files="X.aj" options="-1.5 -Xlint:ignore"/>
  158. <run class="com.andy.C" ltw="aop.xml">
  159. <stdout>
  160. <line text="X:execution(void com.andy.C.main(String[]))"/>
  161. <line text="A:execution(void com.andy.C.main(String[]))"/>
  162. <line text="X:execution(void com.andy.C.run())"/>
  163. <line text="hello andy"/>
  164. </stdout>
  165. </run>
  166. </ajc-test>
  167. <ajc-test dir="features167/overweaving/cflow" title="cflow">
  168. <compile files="A.aj C.java" options="-1.5"/>
  169. <compile files="X.aj" options="-1.5 -Xlint:ignore"/>
  170. <run class="com.andy.C" ltw="aop.xml">
  171. <stdout>
  172. <line text="X:execution(void com.andy.C.main(String[]))"/>
  173. <line text="A:execution(void com.andy.C.main(String[]))"/>
  174. <line text="X:execution(void com.andy.C.run())"/>
  175. <line text="hello andy"/>
  176. </stdout>
  177. </run>
  178. </ajc-test>
  179. </suite>