public void Push_Oversized(int[] data, int size)
        {
            var stack = new Algorithms.Stacks.StackWithArrays <int>(size);

            foreach (var item in data)
            {
                stack.Push(item);
            }
        }
        public void Push(int[] data)
        {
            var stack = new Algorithms.Stacks.StackWithArrays <int>();

            foreach (var item in data)
            {
                stack.Push(item);
            }

            Assert.AreEqual(stack.Size, data.Length);
        }
        public void Pop(int[] data)
        {
            var stack = new Algorithms.Stacks.StackWithArrays <int>();

            foreach (var item in data)
            {
                stack.Push(item);
            }

            Assert.AreEqual(stack.Size, data.Length);

            var reversedResults = new int[data.Length];

            for (int i = data.Length - 1; i >= 0; i--)
            {
                reversedResults[i] = stack.Pop();
            }

            CollectionAssert.AreEqual(reversedResults, data);
        }
        public void Pop_Empty()
        {
            var stack = new Algorithms.Stacks.StackWithArrays <int>();

            stack.Pop();
        }