public void PushTest() { ItemQueue q = new ItemQueue(); // push the capacity. for (int i = 0; i < 1000; i++) { q.Push(new Item(i)); } Assert.AreEqual(1000, q.Count); for (int v = 0; v < 1000; v++) { Assert.AreEqual(v, q.Pop().Value); } Assert.AreEqual(0, q.Count); // push the capacity. for (int i = 0; i < 1000; i++) { q.Push(new Item(999 - i)); } Assert.AreEqual(1000, q.Count); for (int v = 0; v < 1000; v++) { Assert.AreEqual(v, q.Pop().Value); } Assert.AreEqual(0, q.Count); ItemQueue r = CreateReversedQueue(new int[] { }); // push the capacity. for (int i = 0; i < 1000; i++) { r.Push(new Item(i)); } Assert.AreEqual(1000, r.Count); for (int v = 999; v >= 0; v--) { Assert.AreEqual(v, r.Pop().Value); } Assert.AreEqual(0, r.Count); }
public void CountTest() { ItemQueue q = CreateQueue(new int[] { 4, 2, 3, 1 }); Assert.AreEqual(4, q.Count); q.Pop(); Assert.AreEqual(3, q.Count); q.Push(new Item(12)); Assert.AreEqual(4, q.Count); ItemQueue e = new ItemQueue(); Assert.AreEqual(0, e.Count); e.Pop(); Assert.AreEqual(0, e.Count); }