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.

BaseTests.java 4.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. /* *******************************************************************
  2. * Copyright (c) 2004 IBM Corporation
  3. * All rights reserved.
  4. * This program and the accompanying materials are made available
  5. * under the terms of the Eclipse Public License v1.0
  6. * which accompanies this distribution and is available at
  7. * http://www.eclipse.org/legal/epl-v10.html
  8. *
  9. * ******************************************************************/
  10. package org.aspectj.systemtest.base;
  11. import java.io.File;
  12. import junit.framework.Test;
  13. import org.aspectj.testing.XMLBasedAjcTestCase;
  14. public class BaseTests extends org.aspectj.testing.XMLBasedAjcTestCase {
  15. public static Test suite() {
  16. return XMLBasedAjcTestCase.loadSuite(BaseTests.class);
  17. }
  18. protected File getSpecFile() {
  19. return new File("../tests/src/org/aspectj/systemtest/base/baseTests.xml");
  20. }
  21. public void test001(){
  22. runTest("static and non-static before methods -- one file");
  23. }
  24. public void test002(){
  25. runTest("static and non-static before methods -- many files");
  26. }
  27. public void test003(){
  28. runTest("this redirection in non-static before methods");
  29. }
  30. public void test004(){
  31. runTest("DEPRECATED: introductions");
  32. }
  33. public void test005(){
  34. runTest("before constructors -- one file");
  35. }
  36. public void test006(){
  37. runTest("advise weaves find methods typed to builtins or non-woven classes");
  38. }
  39. public void test007(){
  40. runTest("make sure new weaves work inside of packages");
  41. }
  42. public void test008(){
  43. runTest("make sure new weaves work inside of packages (again)");
  44. }
  45. public void test009(){
  46. runTest("Inheritance of class and aspect vars in weaves");
  47. }
  48. public void test010(){
  49. runTest("Accessibility of class and aspect members from inside weaves");
  50. }
  51. public void test011(){
  52. runTest("Packaged aspects referring to packaged classes");
  53. }
  54. public void test012(){
  55. runTest("Inheritance of methods advised by aspects");
  56. }
  57. public void test013(){
  58. runTest("Inherited weaves on constructor");
  59. }
  60. public void test014(){
  61. runTest("Initializers in Aspect and Class Bodies");
  62. }
  63. public void test015(){
  64. runTest("Weaver Resolution of method names in method calls passed as args");
  65. }
  66. public void test016(){
  67. runTest("DEPRECATED: Introduce constructor with class inheritance");
  68. }
  69. public void test017(){
  70. runTest("empty and singular patterns on modifiers and throws");
  71. }
  72. public void test018(){
  73. runTest("DEPRECATED: Introduce of constructors");
  74. }
  75. public void test019(){
  76. runTest("Local declarations in advise bodies");
  77. }
  78. public void test020(){
  79. runTest("advises on introduced methods and constructors");
  80. }
  81. public void test021(){
  82. runTest("DEPRECATED: Method introduction into interface implemented by abstract class");
  83. }
  84. public void test022(){
  85. runTest("Crossing super calls in constructors");
  86. }
  87. public void test023(){
  88. runTest("empty modifier pattern");
  89. }
  90. public void test024(){
  91. runTest("Alpha conversion of argument names in designators");
  92. }
  93. public void test025(){
  94. runTest("advice uses its own formals to get actuals");
  95. }
  96. public void test026(){
  97. runTest("DEPRECATED: introduce weaves can use this");
  98. }
  99. public void test027(){
  100. runTest("DEPRECATED: introduce of abstract methods works");
  101. }
  102. public void test028(){
  103. runTest("multiple arounds successfully intercept and return own values");
  104. }
  105. public void test029(){
  106. runTest("proper matching of overloaded constructors");
  107. }
  108. public void test030(){
  109. runTest("proper handling of formals in catch advice");
  110. }
  111. public void test031(){
  112. runTest("proper values for thisJoinPoint attributes");
  113. }
  114. public void test032(){
  115. runTest("supers, supers, supers");
  116. }
  117. public void test033(){
  118. runTest("operations on private and protected aspect members (++, -- in partciular)");
  119. }
  120. public void test034(){
  121. runTest("only register things once");
  122. }
  123. public void test035(){
  124. runTest("inner aspects and around");
  125. }
  126. public void test036(){
  127. runTest("aspect inheritance and advice, introduction");
  128. }
  129. public void test037(){
  130. runTest("thisResultObject for primitives");
  131. }
  132. public void test038(){
  133. runTest("introductions calling super.");
  134. }
  135. public void test039(){
  136. runTest("allow one argument calls even when there's a comma in the arglist");
  137. }
  138. public void test040(){
  139. runTest("advice on calls to static methods even works when called on super");
  140. }
  141. }