[jboss-cvs] JBossAS SVN: r73518 - in projects/aop/trunk/aop/src: test/org/jboss/test/aop/pointcut and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue May 20 07:36:11 EDT 2008
Author: kabir.khan at jboss.com
Date: 2008-05-20 07:36:11 -0400 (Tue, 20 May 2008)
New Revision: 73518
Modified:
projects/aop/trunk/aop/src/main/org/jboss/aop/pointcut/PointcutStats.java
projects/aop/trunk/aop/src/test/org/jboss/test/aop/pointcut/PointcutTestCase.java
Log:
[JBAOP-579] Check that named pointcuts work
Modified: projects/aop/trunk/aop/src/main/org/jboss/aop/pointcut/PointcutStats.java
===================================================================
--- projects/aop/trunk/aop/src/main/org/jboss/aop/pointcut/PointcutStats.java 2008-05-20 11:19:15 UTC (rev 73517)
+++ projects/aop/trunk/aop/src/main/org/jboss/aop/pointcut/PointcutStats.java 2008-05-20 11:36:11 UTC (rev 73518)
@@ -227,7 +227,11 @@
if (stats != null)
{
execution |= stats.isExecution();
+ methodExecution |= stats.isMethodExecution();
+ constructorExecution |= stats.isConstructorExecution();
call |= stats.isCall();
+ methodCall |= stats.isMethodCall();
+ constructorCall |= stats.isConstructorCall();
within |= stats.isWithin();
get |= stats.isGet();
set |= stats.isSet();
Modified: projects/aop/trunk/aop/src/test/org/jboss/test/aop/pointcut/PointcutTestCase.java
===================================================================
--- projects/aop/trunk/aop/src/test/org/jboss/test/aop/pointcut/PointcutTestCase.java 2008-05-20 11:19:15 UTC (rev 73517)
+++ projects/aop/trunk/aop/src/test/org/jboss/test/aop/pointcut/PointcutTestCase.java 2008-05-20 11:36:11 UTC (rev 73518)
@@ -392,6 +392,25 @@
createAndCheckPointcut("all(org.acme.Class)", true, true, true, true, false, false, false, false);
createAndCheckPointcut("call(org.acme.Class->new()) AND withincode(* org.acme.Class->method())", false, false, false, false, false, false, true, true);
createAndCheckPointcut("execution(org.acme.Class->new()) OR field(* org.acme.Class->fld)", false, true, true, true, false, false, false, false);
+
+ //Check that named pointcuts work
+ AspectManager manager = AspectManager.instance();
+ PointcutExpression pointcut1 = new PointcutExpression("METHOD", "execution(void org.acme.Class->method())");
+ manager.addPointcut(pointcut1);
+ PointcutExpression pointcut2 = new PointcutExpression("CONSTRUCTOR", "execution(org.acme.Class->new())");
+ manager.addPointcut(pointcut2);
+ PointcutExpression pointcut3 = new PointcutExpression("COMPOSITION", "METHOD OR CONSTRUCTOR");
+ manager.addPointcut(pointcut3);
+ PointcutStats stats = pointcut3.getStats();
+ assertTrue(stats.isMethodExecution());
+ assertTrue(stats.isConstructorExecution());
+ assertFalse(stats.isGet());
+ assertFalse(stats.isSet());
+ assertFalse(stats.isMethodCall());
+ assertFalse(stats.isConstructorCall());
+ assertFalse(stats.isConstruction());
+ assertFalse(stats.isWithincode());
+
}
private void createAndCheckPointcut(
More information about the jboss-cvs-commits
mailing list