joined.addOp(new Invoke(-1, null, "m", "(III)V", asList(Type.INT,
Type.INT, Type.INT), false, Type.VOID));
List<Operation> operations = new Stack2Turing(root).translate();
assertEquals(2, operations.size());
MethodInvokation m1 = (MethodInvokation) operations.get(0);
MethodInvokation m2 = (MethodInvokation) operations.get(1);
assertEquals("[root{java.lang.Object}, B{java.lang.Object}, joined{java.lang.Object}]", m1
.getParameters().toString());
assertEquals("this{java.lang.Object}", m1.getMethodThis().toString());
assertEquals("[root{java.lang.Object}, A{java.lang.Object}, joined{java.lang.Object}]", m2
.getParameters().toString());
assertEquals("this{java.lang.Object}", m2.getMethodThis().toString());
}