final Date[] invocationArgs = {new Date(System.currentTimeMillis())};
testedService.beforeCompletion();
testedService.invokeMe(invocationArgs[0]);
testedService.afterCompletion(true);
final Operation op = getLastEntered();
assertNotNull("No operation extracted", op);
assertEquals("Mismatched " + annClass.getSimpleName() + " EJB operation type(s)", Ejb3LocalServiceDefinitions.TYPE, op.getType());
// see JoinPointBreakDownSourceCodeLocationFinalizer#populateOperation
assertEquals("Mismatched " + annClass.getSimpleName() + " class name", testedServiceClass.getName(), op.get(OperationFields.CLASS_NAME, String.class));
assertEquals("Mismatched " + annClass.getSimpleName() + " invocation method", "invokeMe", op.get("methodName", String.class));
final OperationList argsList = op.get(OperationFields.ARGUMENTS, OperationList.class);
assertNotNull("Missing " + annClass.getSimpleName() + " invocation arguments", argsList);
assertEquals("Mismatched " + annClass.getSimpleName() + " num. of invocation arguments", invocationArgs.length, argsList.size());
for (int aIndex = 0; aIndex < invocationArgs.length; aIndex++) {
final Object expArg = invocationArgs[aIndex], actArg = argsList.get(aIndex);