예제 #1
0
        public void Push_on_empty_stack()
        {
            var sut = new RPNCalculator();

            Tuple <IEnumerable <int>, int> result = null;

            sut.Result += _ => result = _;
            sut.Push(1);

            Assert.AreEqual(new[] { 1 }, result.Item1);
            Assert.AreEqual(1, result.Item2);
        }
예제 #2
0
        public void Push_number_on_non_empty_stack()
        {
            var initialStack = new Stack <int>();

            initialStack.Push(1);
            var sut = new RPNCalculator(initialStack);

            Tuple <IEnumerable <int>, int> result = null;

            sut.Result += _ => result = _;
            sut.Push(2);

            Assert.AreEqual(new[] { 1, 2 }, result.Item1);
            Assert.AreEqual(2, result.Item2);
        }
예제 #3
0
        public void Push_on_empty_stack()
        {
            var sut = new RPNCalculator();

            Tuple<IEnumerable<int>, int> result = null;
            sut.Result += _ => result = _;
            sut.Push(1);

            Assert.AreEqual(new[]{1}, result.Item1);
            Assert.AreEqual(1, result.Item2);
        }
예제 #4
0
        public void Push_number_on_non_empty_stack()
        {
            var initialStack = new Stack<int>();
            initialStack.Push(1);
            var sut = new RPNCalculator(initialStack);

            Tuple<IEnumerable<int>, int> result = null;
            sut.Result += _ => result = _;
            sut.Push(2);

            Assert.AreEqual(new[] { 1, 2 }, result.Item1);
            Assert.AreEqual(2, result.Item2);
        }