public void TestFilterOldEvents() { // create a profiler session and get some test events var profilerSession = new ProfilerSession(); var allEvents = ProfilerTestObjects.TestProfilerEvents; var profilerEvents = ProfilerTestObjects.TestProfilerEvents; // filter all the results from the first poll // these events happened before the profiler began profilerSession.FilterOldEvents(profilerEvents); Assert.Equal(profilerEvents.Count, 0); // add a new event var newEvent = new ProfilerEvent("new event", "1/1/2017"); allEvents.Add(newEvent); // poll all events profilerEvents.AddRange(allEvents); // filtering should leave only the new event profilerSession.FilterOldEvents(profilerEvents); Assert.Equal(profilerEvents.Count, 1); Assert.True(profilerEvents[0].Equals(newEvent)); //poll again with no new events profilerEvents.AddRange(allEvents); // filter should now filter all the events since they've been seen before profilerSession.FilterOldEvents(profilerEvents); Assert.Equal(profilerEvents.Count, 0); }
public void TestFilterOldEvents() { // create a profiler session and get some test events var profilerSession = new ProfilerSession(); var profilerEvents = ProfilerTestObjects.TestProfilerEvents; // filter old events shouldn't filter any new events var newProfilerEvents = profilerSession.FilterOldEvents(profilerEvents); Assert.Equal(profilerEvents.Count, newProfilerEvents.Count); // filter should now filter all the events since they've been seen before newProfilerEvents = profilerSession.FilterOldEvents(profilerEvents); Assert.Equal(newProfilerEvents.Count, 0); // add a new event var newEvent = new ProfilerEvent("new event", "1/1/2017"); profilerEvents.Add(newEvent); // verify we only have the new event when reprocessing the event list newProfilerEvents = profilerSession.FilterOldEvents(profilerEvents); Assert.Equal(newProfilerEvents.Count, 1); Assert.True(newProfilerEvents[0].Equals(newEvent)); // process whole list again and verify nothing new is available newProfilerEvents = profilerSession.FilterOldEvents(profilerEvents); Assert.Equal(newProfilerEvents.Count, 0); }
public void TestEventsLost() { // create a profiler session and get some test events var profilerSession = new ProfilerSession(); var profilerEvents = ProfilerTestObjects.TestProfilerEvents; // filter all the results from the first poll // these events happened before the profiler began profilerSession.FilterOldEvents(profilerEvents); Assert.Equal(profilerEvents.Count, 0); // No events should be lost Assert.False(profilerSession.EventsLost); // test all events are overwritten, but no events are lost profilerEvents.Clear(); ProfilerEvent newEvent = new ProfilerEvent("event4", "6/18/2018"); newEvent.Values.Add("event_sequence", "4"); profilerEvents.Add(newEvent); profilerSession.FilterOldEvents(profilerEvents); // should not show event loss Assert.False(profilerSession.EventsLost); // test all events are overwritten, and events are lost profilerEvents.Clear(); newEvent = new ProfilerEvent("event7", "6/18/2018"); newEvent.Values.Add("event_sequence", "7"); profilerEvents.Add(newEvent); profilerSession.FilterOldEvents(profilerEvents); // should show event loss Assert.True(profilerSession.EventsLost); //poll again with previously seen events profilerEvents.Add(newEvent); // old events were seen, no event loss occured profilerSession.FilterOldEvents(profilerEvents); Assert.False(profilerSession.EventsLost); }