Переглянути джерело

testcode for 125699 and 125810 from matthew. test for 125699 commented out.

tags/POST_MEMORY_CHANGES
aclement 18 роки тому
джерело
коміт
1d41626c3d

+ 7
- 0
tests/bugs151/pr125699/AtTestTracing.java Переглянути файл

@@ -0,0 +1,7 @@
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;

@Aspect
public class AtTestTracing extends Tracing {

}

+ 2
- 0
tests/bugs151/pr125699/TestTracing.aj Переглянути файл

@@ -0,0 +1,2 @@
public aspect TestTracing extends Tracing {
}

+ 16
- 0
tests/bugs151/pr125699/Tracing.aj Переглянути файл

@@ -0,0 +1,16 @@
public abstract aspect Tracing {
before (Object obj) : execution(* *(..)) && this(obj) {
System.out.println(thisJoinPoint);
}
// before (Object obj) : execution(* *(..)) && this(obj) {
before () : execution(* *(..)) {
System.out.println(thisJoinPointStaticPart);
}
// before (Object obj) : execution(* *(..)) && this(obj) {
before () : execution(* *(..)) && this(Object) {
System.out.println(thisEnclosingJoinPointStaticPart);
}
}

+ 5
- 0
tests/bugs151/pr125810/SubAspect.aj Переглянути файл

@@ -0,0 +1,5 @@
public aspect SubAspect extends SuperAspect {

// protected pointcut scope();

}

+ 6
- 0
tests/bugs151/pr125810/SubAtAspect.java Переглянути файл

@@ -0,0 +1,6 @@
import org.aspectj.lang.annotation.Aspect;

@Aspect
public class SubAtAspect extends SuperAspect {

}

+ 4
- 0
tests/bugs151/pr125810/SuperAspect.aj Переглянути файл

@@ -0,0 +1,4 @@
public abstract aspect SuperAspect {

protected abstract pointcut scope ();
}

+ 11
- 0
tests/src/org/aspectj/systemtest/ajc151/Ajc151Tests.java Переглянути файл

@@ -71,6 +71,17 @@ public class Ajc151Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
assertFalse("printParameters method should have arguments",pe2.getParameterTypes().isEmpty());
}
/*
* @AspectJ bugs and enhancements
*/
// public void testAtAspectInheritsAdviceWithTJPAndThis_pr125699 () {
// runTest("inherit adivce with this() and thisJoinPoint");
// }
public void testAtAspectInheritsAbstractPointcut_pr125810 () {
runTest("warning when inherited pointcut not made concrete");
}
/*
* Load-time weaving bugs and enhancements
*/

+ 13
- 0
tests/src/org/aspectj/systemtest/ajc151/ajc151.xml Переглянути файл

@@ -124,6 +124,19 @@
<compile files="AbstractMethods.aj, ConcreteMethods.aj"/>
<run class="HelloWorld" ltw="aop-tracing.xml"/>
</ajc-test>
<ajc-test dir="bugs151/pr125699" title="inherit adivce with this() and thisJoinPoint">
<compile files="Tracing.aj, TestTracing.aj, AtTestTracing.java" options="-1.5"/>
</ajc-test>
<ajc-test dir="bugs151/pr125810" title="warning when inherited pointcut not made concrete">
<compile files="SuperAspect.aj, SubAspect.aj, SubAtAspect.java" options="-1.5">
<message kind="error" line="3" text="inherited abstract pointcut SuperAspect.scope() is not made concrete in SubAspect"/>
<message kind="error" line="1" text="inherited abstract pointcut SuperAspect.scope() is not made concrete in SubAspect"/>
<message kind="error" line="3" text="inherited abstract pointcut SuperAspect.scope() is not made concrete in SubAtAspect"/>
<message kind="error" line="4" text="inherited abstract pointcut SuperAspect.scope() is not made concrete in SubAtAspect"/>
</compile>
</ajc-test>

<!-- New features down here... when they arent big enough to have their own test file -->

Завантаження…
Відмінити
Зберегти