Ejemplo n.º 1
0
        public void TestProcessSingleRequest1()
        {
            Stack <double> myStack = new Stack <double>();

            myStack.Push(1);
            myStack.Push(2);

            var data = A.Fake <IDataHolder <double> >();
            var calc = A.Fake <CalculatorFunctionsImpl>(options => options.CallsBaseMethods());

            A.CallTo(() => data.GetSize()).ReturnsLazily(() => myStack.Count);

            A.CallTo(() => data.RemoveElement()).ReturnsLazily(() => myStack.Pop());
            A.CallTo(() => data.InsertElement(A <double> .Ignored)).Invokes((double x) => myStack.Push(x));



            WCFCalculatorImpl service = new WCFCalculatorImpl(data, calc);

            //Act
            service.ProcessSingleRequest("*");

            //Assert
            Assert.AreEqual(1, myStack.Count);
            Assert.AreEqual(2, myStack.Peek());
        }
Ejemplo n.º 2
0
        public void TestProcessSingleRequest3()
        {
            //Arrange
            Stack <double> myStack = new Stack <double>();

            myStack.Push(1);
            myStack.Push(2);

            var data = A.Fake <IDataHolder <double> >();
            var calc = A.Fake <ICalculatorFunctions>();

            A.CallTo(() => data.GetSize()).Returns(myStack.Count);
            A.CallTo(() => data.InsertElement(A <double> .Ignored)).Invokes((double x) => myStack.Push(x));


            WCFCalculatorImpl service = new WCFCalculatorImpl(data, calc);

            //Act
            service.ProcessSingleRequest("123.45");

            //Assert
            Assert.AreEqual(3, myStack.Count);
            Assert.AreEqual(123.45, myStack.Peek());
        }
Ejemplo n.º 3
0
        public void TestProcessSingleRequest2()
        {
            Stack <double> myStack = new Stack <double>();

            myStack.Push(1);
            myStack.Push(2);

            var data = A.Fake <IDataHolder <double> >();
            var calc = A.Fake <ICalculatorFunctions>();

            A.CallTo(() => data.GetSize()).Returns(myStack.Count);
            A.CallTo(() => data.RemoveElement()).Invokes(() => myStack.Pop()).Returns(myStack.Peek());



            WCFCalculatorImpl service = new WCFCalculatorImpl(data, calc);

            //Act
            service.ProcessSingleRequest("_");

            A.CallTo(() => data.RemoveElement()).MustHaveHappenedOnceExactly();
            //Assert
            Assert.AreEqual(1, myStack.Count);
        }