assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(validateMethod));
}
public void testInstallsValidateMethodSomeArgsFacetAndRemovesMethod() {
final ActionValidationFacetViaValidateMethodFacetFactory facetFactory = new ActionValidationFacetViaValidateMethodFacetFactory();
facetFactory.setSpecificationLookup(reflector);
reflector.setLoadSpecificationStringReturn(voidSpec);
class Customer {
@SuppressWarnings("unused")
public void someAction(final int x, final int y) {
}
@SuppressWarnings("unused")
public String validateSomeAction(final int x, final int y) {
return null;
}
}
final Method actionMethod = findMethod(Customer.class, "someAction", new Class[] { int.class, int.class });
final Method validateMethod = findMethod(Customer.class, "validateSomeAction", new Class[] { int.class, int.class });
facetFactory.process(new ProcessMethodContext(Customer.class, null, null, actionMethod, methodRemover, facetedMethod));
final Facet facet = facetedMethod.getFacet(ActionValidationFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof ActionValidationFacetViaMethod);
final ActionValidationFacetViaMethod actionValidationFacetViaMethod = (ActionValidationFacetViaMethod) facet;