space.registerExpression("* test.ExpressionTest.get(..)", "", "pc2", PointcutType.EXECUTION);
space.registerExpression("* test.ExpressionTest.suite(..)", "", "pc3", PointcutType.EXECUTION);
Expression root = space.createExpression("pc1 && !(pc2 || pc3)");
ClassMetaData classMetaData1 = ReflectionMetaDataMaker.createClassMetaData(ExpressionTest.class);
MethodMetaData methodMetaData1 = ReflectionMetaDataMaker.createMethodMetaData(
ExpressionTest.class.getDeclaredMethod("set", new Class[]{})
);
MethodMetaData methodMetaData2 = ReflectionMetaDataMaker.createMethodMetaData(
ExpressionTest.class.getDeclaredMethod("get", new Class[]{})
);
MethodMetaData methodMetaData3 = ReflectionMetaDataMaker.createMethodMetaData(
ExpressionTest.class.getDeclaredMethod("suite", new Class[]{})
);
assertTrue(root.match(classMetaData1));
assertTrue(root.match(classMetaData1, methodMetaData1));