// also test that child events aren't posted (only top-level events)
evt2 = SpeedTracerLogger.start(DevModeEventType.CLASS_BYTES_REWRITE);
evt2.end();
evt1.end();
// expect only first event
expectedEvents.add(new DevModeEvent(evt1));
expectedSessions.add(session1); // event should get "default" session
// now with session specified
evt1 = SpeedTracerLogger.start(session2, DevModeEventType.JAVA_TO_JS_CALL, "k1", "v1");
// also test that child events aren't posted (only top-level events)
evt2 = SpeedTracerLogger.start(DevModeEventType.CREATE_UI);
evt2.end();
evt1.end();
// expect only first event
expectedEvents.add(new DevModeEvent(evt1));
expectedSessions.add(session2);
evt1 = SpeedTracerLogger.start(session1, DevModeEventType.JS_TO_JAVA_CALL, "k1", "v1");
evt1.end();
expectedEvents.add(new DevModeEvent(evt1));
expectedSessions.add(session1);
// Finally, assert that the events and corresponding sessions sent to the
// notifier are exactly as expected
assertEquals("Events posted to dashboard do not match expected events!", expectedEvents,