}
public void testRemoveMethodsRetainOverrideIsNull()
{
// Override
RemoveMethodsMetaData overrideRemoveMethods = new RemoveMethodsMetaData();
RemoveMethodMetaData overrideRemoveMethod = new RemoveMethodMetaData();
overrideRemoveMethod.setId("overrideId");
NamedMethodMetaData overrideNamedMethod = new NamedMethodMetaData();
overrideNamedMethod.setMethodName("overrideMethodName");
overrideRemoveMethod.setBeanMethod(overrideNamedMethod);
overrideRemoveMethods.add(overrideRemoveMethod);
JBossSessionBeanMetaData override = new JBossSessionBeanMetaData();
override.setRemoveMethods(overrideRemoveMethods);
override.setName("overrideName");
// Original
RemoveMethodsMetaData originalRemoveMethods = new RemoveMethodsMetaData();
RemoveMethodMetaData originalRemoveMethod = new RemoveMethodMetaData();
originalRemoveMethod.setId("originalId");
originalRemoveMethod.setRetainIfException(true);
NamedMethodMetaData originalNamedMethod = new NamedMethodMetaData();
originalNamedMethod.setMethodName("overrideMethodName");
originalNamedMethod.setId("originalId");
originalRemoveMethod.setBeanMethod(originalNamedMethod);
originalRemoveMethods.add(originalRemoveMethod);
JBossSessionBeanMetaData original = new JBossSessionBeanMetaData();
original.setRemoveMethods(originalRemoveMethods);
// Merged
JBossSessionBeanMetaData merged = new JBossSessionBeanMetaData();
merged.merge(override, original);
RemoveMethodsMetaData removeMethods = merged.getRemoveMethods();
assertNotNull(removeMethods);
RemoveMethodMetaData removeMethod = removeMethods.get(0);
assertNotNull(removeMethod);
assertEquals("overrideId", removeMethod.getId());
assertTrue(removeMethod.isRetainIfException());
NamedMethodMetaData namedMethod = removeMethod.getBeanMethod();
assertNotNull(namedMethod);