public void TestRemainingCapacity() { LinkedBlockingDeque <String> q = PopulatedDeque(SIZE); for (int i = 0; i < SIZE; ++i) { Assert.AreEqual(i, q.RemainingCapacity()); Assert.AreEqual(SIZE - i, q.Size()); q.Remove(); } for (int i = 0; i < SIZE; ++i) { Assert.AreEqual(SIZE - i, q.RemainingCapacity()); Assert.AreEqual(i, q.Size()); q.Add(i.ToString()); } }
private LinkedBlockingDeque <String> PopulatedDeque(int n) { LinkedBlockingDeque <String> q = new LinkedBlockingDeque <String>(n); Assert.IsTrue(q.IsEmpty()); for (int i = 0; i < n; i++) { Assert.IsTrue(q.Offer(i.ToString())); } Assert.IsFalse(q.IsEmpty()); Assert.AreEqual(0, q.RemainingCapacity()); Assert.AreEqual(n, q.Size()); return(q); }