From 69e24e90d4fee7115ecbc8c7786915b1f741471b Mon Sep 17 00:00:00 2001 From: aclement Date: Tue, 23 May 2006 07:55:53 +0000 Subject: fix for 142466 --- tests/bugs152/pr142466/AbstractMethods.aj | 31 ++++++++++++++++++++++ .../pr142466/AtAspectTestConcreteMethods.java | 6 +++++ tests/bugs152/pr142466/ConcreteMethods.aj | 8 ++++++ tests/bugs152/pr142466/HelloWorld.java | 11 ++++++++ tests/bugs152/pr142466/aop-tracing.xml | 10 +++++++ tests/bugs152/pr142466/case2/AbstractMethods.aj | 31 ++++++++++++++++++++++ .../case2/AtAspectTestConcreteMethods.java | 6 +++++ tests/bugs152/pr142466/case2/ConcreteMethods.aj | 7 +++++ tests/bugs152/pr142466/case2/HelloWorld.java | 11 ++++++++ tests/bugs152/pr142466/case2/aop-tracing.xml | 10 +++++++ .../org/aspectj/systemtest/ajc152/Ajc152Tests.java | 2 ++ tests/src/org/aspectj/systemtest/ajc152/ajc152.xml | 27 +++++++++++++++++++ 12 files changed, 160 insertions(+) create mode 100644 tests/bugs152/pr142466/AbstractMethods.aj create mode 100644 tests/bugs152/pr142466/AtAspectTestConcreteMethods.java create mode 100644 tests/bugs152/pr142466/ConcreteMethods.aj create mode 100644 tests/bugs152/pr142466/HelloWorld.java create mode 100644 tests/bugs152/pr142466/aop-tracing.xml create mode 100644 tests/bugs152/pr142466/case2/AbstractMethods.aj create mode 100644 tests/bugs152/pr142466/case2/AtAspectTestConcreteMethods.java create mode 100644 tests/bugs152/pr142466/case2/ConcreteMethods.aj create mode 100644 tests/bugs152/pr142466/case2/HelloWorld.java create mode 100644 tests/bugs152/pr142466/case2/aop-tracing.xml (limited to 'tests') diff --git a/tests/bugs152/pr142466/AbstractMethods.aj b/tests/bugs152/pr142466/AbstractMethods.aj new file mode 100644 index 000000000..f252d8838 --- /dev/null +++ b/tests/bugs152/pr142466/AbstractMethods.aj @@ -0,0 +1,31 @@ +import org.aspectj.lang.annotation.*; + + +@Aspect +public abstract class AbstractMethods { + + @Pointcut + protected abstract void tracingScope(); + + @Before("tracingScope()") + public void doit() { + test(); + System.out.println("advice running"); + } + protected abstract void test(); +} + +/* +public abstract aspect AbstractMethods { + + protected abstract pointcut tracingScope (); + + before () : tracingScope () { + test(); + System.out.println("advice running"); + } + + protected abstract void test (); +// protected void test () {} +} +*/ diff --git a/tests/bugs152/pr142466/AtAspectTestConcreteMethods.java b/tests/bugs152/pr142466/AtAspectTestConcreteMethods.java new file mode 100644 index 000000000..90e4cc34e --- /dev/null +++ b/tests/bugs152/pr142466/AtAspectTestConcreteMethods.java @@ -0,0 +1,6 @@ +import org.aspectj.lang.annotation.Aspect; + +@Aspect +public class AtAspectTestConcreteMethods extends ConcreteMethods { + +} diff --git a/tests/bugs152/pr142466/ConcreteMethods.aj b/tests/bugs152/pr142466/ConcreteMethods.aj new file mode 100644 index 000000000..cd2dd1eca --- /dev/null +++ b/tests/bugs152/pr142466/ConcreteMethods.aj @@ -0,0 +1,8 @@ + + +public abstract aspect ConcreteMethods extends AbstractMethods { + + protected void test () {} + public abstract void foo(int i) ; + +} diff --git a/tests/bugs152/pr142466/HelloWorld.java b/tests/bugs152/pr142466/HelloWorld.java new file mode 100644 index 000000000..f741a2c0e --- /dev/null +++ b/tests/bugs152/pr142466/HelloWorld.java @@ -0,0 +1,11 @@ +public class HelloWorld { + + public static void main(String[] args) { + new HelloWorld().println(); + } + + public void println() { + System.out.print("Hello World!"); + } + +} diff --git a/tests/bugs152/pr142466/aop-tracing.xml b/tests/bugs152/pr142466/aop-tracing.xml new file mode 100644 index 000000000..2c805137b --- /dev/null +++ b/tests/bugs152/pr142466/aop-tracing.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/tests/bugs152/pr142466/case2/AbstractMethods.aj b/tests/bugs152/pr142466/case2/AbstractMethods.aj new file mode 100644 index 000000000..f252d8838 --- /dev/null +++ b/tests/bugs152/pr142466/case2/AbstractMethods.aj @@ -0,0 +1,31 @@ +import org.aspectj.lang.annotation.*; + + +@Aspect +public abstract class AbstractMethods { + + @Pointcut + protected abstract void tracingScope(); + + @Before("tracingScope()") + public void doit() { + test(); + System.out.println("advice running"); + } + protected abstract void test(); +} + +/* +public abstract aspect AbstractMethods { + + protected abstract pointcut tracingScope (); + + before () : tracingScope () { + test(); + System.out.println("advice running"); + } + + protected abstract void test (); +// protected void test () {} +} +*/ diff --git a/tests/bugs152/pr142466/case2/AtAspectTestConcreteMethods.java b/tests/bugs152/pr142466/case2/AtAspectTestConcreteMethods.java new file mode 100644 index 000000000..90e4cc34e --- /dev/null +++ b/tests/bugs152/pr142466/case2/AtAspectTestConcreteMethods.java @@ -0,0 +1,6 @@ +import org.aspectj.lang.annotation.Aspect; + +@Aspect +public class AtAspectTestConcreteMethods extends ConcreteMethods { + +} diff --git a/tests/bugs152/pr142466/case2/ConcreteMethods.aj b/tests/bugs152/pr142466/case2/ConcreteMethods.aj new file mode 100644 index 000000000..cdce053b3 --- /dev/null +++ b/tests/bugs152/pr142466/case2/ConcreteMethods.aj @@ -0,0 +1,7 @@ + + +public abstract aspect ConcreteMethods extends AbstractMethods { + +// protected void test () {} + +} diff --git a/tests/bugs152/pr142466/case2/HelloWorld.java b/tests/bugs152/pr142466/case2/HelloWorld.java new file mode 100644 index 000000000..f741a2c0e --- /dev/null +++ b/tests/bugs152/pr142466/case2/HelloWorld.java @@ -0,0 +1,11 @@ +public class HelloWorld { + + public static void main(String[] args) { + new HelloWorld().println(); + } + + public void println() { + System.out.print("Hello World!"); + } + +} diff --git a/tests/bugs152/pr142466/case2/aop-tracing.xml b/tests/bugs152/pr142466/case2/aop-tracing.xml new file mode 100644 index 000000000..2c805137b --- /dev/null +++ b/tests/bugs152/pr142466/case2/aop-tracing.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/tests/src/org/aspectj/systemtest/ajc152/Ajc152Tests.java b/tests/src/org/aspectj/systemtest/ajc152/Ajc152Tests.java index 126c8e887..1105d8235 100644 --- a/tests/src/org/aspectj/systemtest/ajc152/Ajc152Tests.java +++ b/tests/src/org/aspectj/systemtest/ajc152/Ajc152Tests.java @@ -17,6 +17,8 @@ import org.aspectj.testing.XMLBasedAjcTestCase; public class Ajc152Tests extends org.aspectj.testing.XMLBasedAjcTestCase { + public void testConcretizingAbstractMethods_pr142466() { runTest("aop.xml aspect inheriting but not concretizing abstract method");} + public void testConcretizingAbstractMethods_pr142466_2() { runTest("aop.xml aspect inheriting but not concretizing abstract method - 2");} public void testComplexGenericDecl_pr137568() { runTest("complicated generics declaration");} public void testItdOnInnerTypeOfGenericType_pr132349() { runTest("ITD on inner type of generic type");} public void testItdOnInnerTypeOfGenericType_pr132349_2() { runTest("ITD on inner type of generic type - 2");} diff --git a/tests/src/org/aspectj/systemtest/ajc152/ajc152.xml b/tests/src/org/aspectj/systemtest/ajc152/ajc152.xml index aaa4a7c07..64857100d 100644 --- a/tests/src/org/aspectj/systemtest/ajc152/ajc152.xml +++ b/tests/src/org/aspectj/systemtest/ajc152/ajc152.xml @@ -287,6 +287,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + -- cgit v1.2.3