Esempio n. 1
0
        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());
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }