validateMetadata(actionExecuterRegistry.getActionExecuter("exampleActionWithConstraint"), true);
}
private void validateMetadata(final ActionExecuter exampleAction, final boolean withConstraint) {
assertNotNull(exampleAction);
final ActionDefinition actionDefinition = exampleAction.getActionDefinition();
final Set<QName> applicableTypes = actionDefinition.getApplicableTypes();
assertEquals(2, applicableTypes.size());
assertEquals(true, actionDefinition.getAdhocPropertiesAllowed());
final List<ParameterDefinition> parameterDefinitions = actionDefinition.getParameterDefinitions();
assertEquals(1, parameterDefinitions.size());
final ParameterDefinition nameParameter = parameterDefinitions.get(0);
assertEquals("name", nameParameter.getName());
if (withConstraint) {