Пример #1
0
        public void Calculate_FromInvalidFile()
        {
            //arrange
            var calculator = new FileCalculator(new FileProcessor());

            //act
            calculator.Calculate(_testFileName);
        }
Пример #2
0
        public void Calculate_FromValidFileInvalidCalculation()
        {
            //arrange
            string[] input = { @"1+x+4" };
            processorMock.Setup(x => x.GetContent(_testFileName)).Returns(input);
            string[] actualResult = null;
            processorMock.Setup(x => x.WriteContent(It.IsAny <string>())).Callback((string[] output) =>
            {
                actualResult = output;
            });
            var calculator = new FileCalculator(processorMock.Object);

            //act
            calculator.Calculate(_testFileName);

            //assert
            Assert.AreEqual($"1+x+4 = {_errorMessage}", actualResult[0]);
        }
Пример #3
0
        public void Calculate_FromValidFileDivisionByZero()
        {
            //arrange
            string[] input = { @"5/0" };
            processorMock.Setup(x => x.GetContent(_testFileName)).Returns(input);
            string[] actualResult = null;
            processorMock.Setup(x => x.WriteContent(It.IsAny <string>())).Callback((string[] output) =>
            {
                actualResult = output;
            });
            var calculator = new FileCalculator(processorMock.Object);

            //act
            calculator.Calculate(_testFileName);

            //assert
            Assert.AreEqual("5/0 = Division by zero", actualResult[0]);
        }
Пример #4
0
        public void Calculate_FromValidFileValidMultiLineCalculation()
        {
            //arrange
            string[] input = { @"2+15/3+4*2", @"1+2*(3+2)" };
            processorMock.Setup(x => x.GetContent(_testFileName)).Returns(input);
            string[] actualResult = null;
            processorMock.Setup(x => x.WriteContent(It.IsAny <string[]>())).Callback((string[] output) =>
            {
                actualResult = output;
            });
            var calculator = new FileCalculator(processorMock.Object);

            //act
            calculator.Calculate(_testFileName);

            //assert
            Assert.AreEqual("2+15/3+4*2 = 15", actualResult[0]);
            Assert.AreEqual("1+2*(3+2) = 11", actualResult[1]);
        }