public void ExpiredRecordsAreNotFoundByTryGetValue() { var maxIncomplete = new TimeSpan(0, 0, 5); var maxComplete = new TimeSpan(0, 0, 1); int expiredRecords = 0; var coll = new ExpiringCompositeEventCollection <int, TestCompositeEvent>(maxIncomplete, maxComplete, ec => { ++expiredRecords; }, ec => { ++expiredRecords; Assert.IsTrue(ec.IsComplete); }); var start = DateTime.Now; coll.ProcessEvent(1, CreateStartEvent(start)); coll.ProcessEvent(1, CreateEndEvent(start)); coll.Expire(start + maxComplete + new TimeSpan(0, 0, 1)); Assert.AreEqual(1, expiredRecords); TestCompositeEvent val; Assert.IsFalse(coll.TryGetValue(1, out val)); coll.ProcessEvent(2, CreateAnyEvent(start)); coll.Expire(start + maxIncomplete + new TimeSpan(0, 0, 1)); Assert.AreEqual(2, expiredRecords); Assert.IsFalse(coll.TryGetValue(2, out val)); }
public void RecordsAreFoundByTryGetValue() { var maxIncomplete = new TimeSpan(0, 0, 5); var maxComplete = new TimeSpan(0, 0, 1); var coll = new ExpiringCompositeEventCollection <int, TestCompositeEvent>(maxIncomplete, maxComplete, this.IncompleteExpiredEventHandler, this.CompleteExpiredEventHandler); var start = DateTime.Now; coll.ProcessEvent(1, CreateStartEvent(start)); TestCompositeEvent val; Assert.IsTrue(coll.TryGetValue(1, out val)); Assert.IsNotNull(val); coll.ProcessEvent(1, CreateEndEvent(start)); TestCompositeEvent val2; Assert.IsTrue(coll.TryGetValue(1, out val2)); Assert.AreSame(val, val2); }
public void RecordsAreFoundByTryGetValue() { var maxIncomplete = new TimeSpan(0, 0, 5); var maxComplete = new TimeSpan(0, 0, 1); var coll = new ExpiringCompositeEventCollection<int, TestCompositeEvent>(maxIncomplete, maxComplete, this.IncompleteExpiredEventHandler, this.CompleteExpiredEventHandler); var start = DateTime.Now; coll.ProcessEvent(1, CreateStartEvent(start)); TestCompositeEvent val; Assert.IsTrue(coll.TryGetValue(1, out val)); Assert.IsNotNull(val); coll.ProcessEvent(1, CreateEndEvent(start)); TestCompositeEvent val2; Assert.IsTrue(coll.TryGetValue(1, out val2)); Assert.AreSame(val, val2); }
public void ExpiredRecordsAreNotFoundByTryGetValue() { var maxIncomplete = new TimeSpan(0, 0, 5); var maxComplete = new TimeSpan(0, 0, 1); int expiredRecords = 0; var coll = new ExpiringCompositeEventCollection<int, TestCompositeEvent>(maxIncomplete, maxComplete, ec => { ++expiredRecords; }, ec => { ++expiredRecords; Assert.IsTrue(ec.IsComplete); }); var start = DateTime.Now; coll.ProcessEvent(1, CreateStartEvent(start)); coll.ProcessEvent(1, CreateEndEvent(start)); coll.Expire(start + maxComplete + new TimeSpan(0, 0, 1)); Assert.AreEqual(1, expiredRecords); TestCompositeEvent val; Assert.IsFalse(coll.TryGetValue(1, out val)); coll.ProcessEvent(2, CreateAnyEvent(start)); coll.Expire(start + maxIncomplete + new TimeSpan(0, 0, 1)); Assert.AreEqual(2, expiredRecords); Assert.IsFalse(coll.TryGetValue(2, out val)); }