}
/** Test for proper resolution of an existing method specified as override */
public void testExplicitOverride() throws Exception
{
EntryPointResolverSet resolverSet = new LegacyEntryPointResolverSet();
Object payload = Arrays.asList(new Fruit[]{new Apple(), new Banana()});
RequestContext.setEvent(getTestEvent(payload));
final String methodName = "setFruit";
final String propertyName = MuleProperties.MULE_METHOD_PROPERTY;
RequestContext.getEventContext().getMessage().setOutboundProperty(propertyName, methodName);
FruitBowl bowl = new FruitBowl();
assertFalse(bowl.hasApple());
assertFalse(bowl.hasBanana());
resolverSet.invoke(bowl, RequestContext.getEventContext());
assertTrue(bowl.hasApple());
assertTrue(bowl.hasBanana());
}