public void Exception_On_Too_Much_Push() { StackImplementation <int> stack = new StackImplementation <int>(3); stack.Push(1); stack.Push(2); stack.Push(3); Assert.Throws <ExceededSizeException>(() => stack.Push(4)); }
public void Push() { StackImplementation <int> stack = new StackImplementation <int>(3); stack.Push(1); stack.Push(2); stack.Push(3); Assert.AreEqual(3, stack.Size); }
public void Peek_Element() { StackImplementation <int> stack = new StackImplementation <int>(3); stack.Push(1); stack.Push(2); stack.Push(3); int val = stack.Peek(); Assert.AreEqual(3, val); Assert.AreEqual(3, stack.Size); }
public void Run() { StackImplementation <int> si = new StackImplementation <int>(); si.Push(1); si.Push(2); si.Push(3); si.Push(4); Console.WriteLine("Size of the stack: {0}", si.Count); Console.WriteLine("Removing the top item from the stack: {0}", si.Pop()); Console.WriteLine("Size of the stack: {0}", si.Count); Console.WriteLine("Value of the top item from the stack: {0}", si.Peek()); }
public override int Pop() { while (!IsEmpty()) { stackImpl.Push(base.Pop()); } int ret = stackImpl.Pop(); while (!stackImpl.IsEmpty()) { Push(stackImpl.Pop()); } return(ret); }
public virtual void Push(int val) { impl.Push(val); }