startContainer(beanClasses, beanXmls);
TransactionInterceptor.ECHO = false;
TransactionInterceptor.count = 0;
TransactionalChildBean child = getInstance(TransactionalChildBean.class);
Assert.assertNotNull(child);
Assert.assertEquals(0, TransactionInterceptor.count);
Assert.assertEquals("21", child.doHalf());
Assert.assertTrue(TransactionInterceptor.ECHO);
Assert.assertEquals(1, TransactionInterceptor.count);
TransactionInterceptor.ECHO = false;
TransactionInterceptor.count = 0;
Assert.assertEquals("42", child.doBase());
Assert.assertTrue(TransactionInterceptor.ECHO);
Assert.assertEquals(1, TransactionInterceptor.count);
Assert.assertEquals(3, child.methodWithVarAargs("A", "B", "C"));
Assert.assertEquals(1, child.methodWithVarAargs("A"));
Method[] methods = child.getClass().getDeclaredMethods();
for (Method method : methods)
{
if (method.getName().equals("methodWithVarAargs"))
{
Assert.assertTrue(method.isVarArgs());