dispatcher.dispatchedEvents.size());
assertEquals("first event must be a AgentCalledEvent",
AgentCalledEvent.class, dispatcher.dispatchedEvents.get(0).getClass());
AgentCalledEvent event = (AgentCalledEvent) dispatcher.dispatchedEvents.get(0);
assertEquals("Returned event is of wrong type", AgentCalledEvent.class, event.getClass());
assertEquals("Property variables[var1] is not set correctly", "val1", event.getVariables().get("var1"));
assertEquals("Property variables[var2] is not set correctly", "val2", event.getVariables().get("var2"));
assertEquals("Invalid size of variables property", 2, event.getVariables().size());
assertEquals("second event must be an DisconnectEvent",
DisconnectEvent.class, dispatcher.dispatchedEvents.get(1).getClass());
}