private void DrainLiveTo(int eventNumber) { while (_liveBuffer.Count > 0 && _liveBuffer.Peek().ResolvedEvent.OriginalEventNumber < eventNumber) { _liveBuffer.Dequeue(); } }
public void TestBoundedQueueAbsorb() { BoundedQueue <int> queue = new BoundedQueue <int>(Enumerable.Range(0, 10), 6, true); Assert.True(queue.Count == 6); Assert.True(queue.Peek() == 0); queue.Enqueue(7); Assert.True(queue.Count == 6); Assert.True(queue.Peek() == 1); }
public void TestBoundedQueueNoAbsorb() { BoundedQueue <int> queue = new BoundedQueue <int>(10); for (int i = 0; i < 10; i++) { Assert.False(queue.IsFull); queue.Enqueue(i); } Assert.Equal(queue.Count, 10); Assert.True(queue.Contains(5)); Assert.True(queue.IsFull); Assert.Equal(queue.Peek(), 0); Assert.Equal(queue.Dequeue(), 0); Assert.Equal(queue.Count, 9); Assert.False(queue.IsFull); }