EventSource eventSource2 = new EventSource("bar", eventDefinition, resource);
report = stripLimitWarningEvents(report);
addEvent(report, "foo", "second", eventSource); // OVER MAX SO THIS NEVER MAKES IT!
addEvent(report, "foo", "third", eventSource); // STILL OVER MAX SO THIS NEVER MAKES IT EITHER!
addEvent(report, "bar", "first", eventSource2); // WE ARE OVER THE TOTAL MAX, SO THIS NEVER MAKES IT EITHER!
report.addLimitWarningEvents();
allEvents = report.getEvents();
assert allEvents.size() == 2; // both are here, the second one just has a single limit warning event
assert allEvents.get(eventSource).size() == 2;
assert allEvents.containsKey(eventSource2) == true; // even though the "real" event never made it, we have a limit warn event
assert allEvents.get(eventSource2).size() == 1; // this isn't the "real" bar event, its the limit warn event