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.

PR554.java 969B

1234567891011121314151617181920212223242526272829
  1. import org.aspectj.testing.Tester;
  2. /** @testcase PR#554 second arg in formal on shared joinpoint with pcd if() causes verify error ?? */
  3. public class PR554 {
  4. public static void main( String args[] ) {
  5. String A = makeProduct( "A", new Integer(1) );
  6. String B = makeProduct( "B", new Integer(0) );
  7. Tester.check("A".equals(A), "\"A\".equals(A): " + A);
  8. Tester.check("B".equals(B), "\"B\".equals(B): " + B);
  9. }
  10. static String makeProduct(String s, Integer i) { return null; }
  11. }
  12. aspect a {
  13. String around(String whatKind, Integer deleteMeToFixBug):
  14. args(whatKind,deleteMeToFixBug) &&
  15. call(String makeProduct(String,Integer)) &&
  16. if("A".equals(whatKind)) {
  17. return "A";
  18. }
  19. String around(String whatKind, Integer deleteMeToFixBug):
  20. args(whatKind,deleteMeToFixBug) &&
  21. call(String makeProduct(String,Integer)) &&
  22. if("B".equals(whatKind)) {
  23. return "B";
  24. }
  25. }