public void QueueShouldUseFifo() { var queue = new BoundedQueue <int>(null); var enqueueResult1 = queue.TryEnqueue(1); var enqueueResult2 = queue.TryEnqueue(2); var enqueueResult3 = queue.TryEnqueue(3); var dequeueResult1 = queue.TryDequeue(out var dequeueItem1); var dequeueResult2 = queue.TryDequeue(out var dequeueItem2); var dequeueResult3 = queue.TryDequeue(out var dequeueItem3); enqueueResult1.ShouldBeTrue(); enqueueResult2.ShouldBeTrue(); enqueueResult3.ShouldBeTrue(); dequeueResult1.ShouldBeTrue(); dequeueResult2.ShouldBeTrue(); dequeueResult3.ShouldBeTrue(); dequeueItem1.ShouldBe(1); dequeueItem2.ShouldBe(2); dequeueItem3.ShouldBe(3); }