public void _3_3_SetOfStacks_WithTooManyPops_ShouldThrowException() { SetOfStacks setOfStacks = new SetOfStacks(2); setOfStacks.Push(1); setOfStacks.Push(2); setOfStacks.Push(3); Assert.AreEqual(3, setOfStacks.Pop()); Assert.AreEqual(2, setOfStacks.Pop()); Assert.AreEqual(1, setOfStacks.Pop()); Assert.AreEqual(1, setOfStacks.StackCount); Assert.Throws <Exception>(() => setOfStacks.Pop()); }
public void _3_3_SetOfStacks_WithLargeThreshold_MaintainOneStack() { SetOfStacks setOfStacks = new SetOfStacks(20); setOfStacks.Push(1); setOfStacks.Push(2); setOfStacks.Push(3); setOfStacks.Push(4); setOfStacks.Push(5); setOfStacks.Push(6); setOfStacks.Push(7); setOfStacks.Push(8); setOfStacks.Push(9); setOfStacks.Push(10); Assert.AreEqual(1, setOfStacks.StackCount); }
public void _3_3_SetOfStacks_WithValidPushes_ShouldCreate3StacksTotal() { SetOfStacks setOfStacks = new SetOfStacks(2); setOfStacks.Push(1); setOfStacks.Push(2); setOfStacks.Push(3); setOfStacks.Push(4); setOfStacks.Push(5); setOfStacks.Push(6); Assert.AreEqual(3, setOfStacks.StackCount); }