Ejemplo n.º 1
0
        public void Calculate_WhenCorrect_Ok()
        {
            var request = MakeCorrectRequest();

            var result = _controller.Calculate(request);

            Assert.IsTrue(result.IsOk);
        }
Ejemplo n.º 2
0
        public void CalculatorController_Throw_BadRequest_ParameterIsNull()
        {
            var badRequestResult = Assert.Throws <BusinessException>(() => _calculatorController.Calculate(null));

            Assert.IsInstanceOf <BusinessException>(badRequestResult);

            var actualErrorMessage = badRequestResult.Message;

            Assert.IsTrue(Constants.CALCULATOR_PARAMETER_NULL_ERROR == actualErrorMessage, "CalculatorController_Throw_BadRequest_ParameterIsNull success");
        }
        public void Calculate_ReturnsString_Test()
        {
            _mockCalculate
            .Setup(x => x.CalculateOhmValue(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <decimal>(), It.IsAny <decimal>()))
            .Returns("Any String");

            var result = _mockCalculatorController.Calculate(_mockResistorValues);

            Assert.IsType <string>(result);
        }
Ejemplo n.º 4
0
        private decimal Calculate(string mode, decimal val1, decimal val2)
        {
            var     result      = _controller.Calculate(mode, val1, val2);
            decimal valueResult = (decimal)result.Value?.GetType().GetProperty("result")?.GetValue(result.Value, null);

            return(valueResult);
        }
Ejemplo n.º 5
0
        public void Get_Request_To_Calculate_Action_Should_Redirect_To_Index_Page()
        {
            //Arrange
            var controller = new CalculatorController();

            //Act
            var result = controller.Calculate() as RedirectToRouteResult;

            //Assert
            Assert.AreEqual("Index", result?.RouteValues["action"]);
        }
        public void CalculateGetTest()
        {
            ICalculatorService calcservice = new CalculatorService();
            // Arrange
            var controller = new CalculatorController(calcservice);

            // Act
            var result = controller.Calculate();

            // Assert
            Assert.NotNull(result);
        }
Ejemplo n.º 7
0
        public void Post_Request_With_Invalid_ViewModel_Parameters_Should_Be_Notified_To_Form_Page()
        {
            //Arrange
            var viewModel = new CalculatorViewModel();

            viewModel.Operator2 = -1;
            var controller = new CalculatorController();

            //Act
            var result = controller.Calculate(viewModel) as ViewResult;

            //Assert
            Assert.AreEqual(FormMessages.POST_REQUEST_INVALID_PARAMS, result?.ViewBag.FormMessage);
        }
Ejemplo n.º 8
0
        public void Post_Request_With_Invalid_ViewModel_Parameters_Should_Return_To_Index_Page()
        {
            //Arrange
            var viewModel = new CalculatorViewModel();

            viewModel.Operator1 = -1;
            var controller = new CalculatorController();

            //Act
            var result = controller.Calculate(viewModel) as ViewResult;

            //Assert
            Assert.AreEqual("Index", result?.ViewName);
        }
Ejemplo n.º 9
0
        public void CalculateTest()
        {
            // I can create more tests here but for demonstration, it's enough.
            CalculatorController controller = new CalculatorController(new Service.PayslipCalculatorService());

            EmployeeInfo employee = new EmployeeInfo();

            employee.AnnualSalary = 60050;
            employee.FirstName    = "David";
            employee.LastName     = "Rudd";
            employee.SuperRate    = 0.09;
            var response = controller.Calculate(3, employee) as OkObjectResult;
            var result   = response.Value as ResponseResult <PayslipInfo>;

            Assert.AreEqual("David Rudd", result.Result.Employee.FullName);
            Assert.AreEqual(5004, result.Result.GrossIncome);
            Assert.AreEqual(922, result.Result.IncomeTax);
            Assert.AreEqual(4082, result.Result.NetIncome);
            Assert.AreEqual(450, result.Result.Super);


            EmployeeInfo employee2 = new EmployeeInfo();

            employee2.AnnualSalary = 120000;
            employee2.FirstName    = "Ryan";
            employee2.LastName     = "Chen";
            employee2.SuperRate    = 0.10;
            var response2 = controller.Calculate(3, employee2) as OkObjectResult;
            var result2   = response2.Value as ResponseResult <PayslipInfo>;

            Assert.AreEqual("Ryan Chen", result2.Result.Employee.FullName);
            Assert.AreEqual(10000, result2.Result.GrossIncome);
            Assert.AreEqual(2696, result2.Result.IncomeTax);
            Assert.AreEqual(7304, result2.Result.NetIncome);
            Assert.AreEqual(1000, result2.Result.Super);
        }
        public void CalculatePostTest(string expression, double expexted)
        {
            ICalculatorService calcservice = new CalculatorService();
            // Arrange
            var controller = new CalculatorController(calcservice);

            // Act
            var result = controller.Calculate(expression);

            //Assert that a double is returned
            Assert.IsType <double>(result.Data);

            // Assert that a view is returned
            Assert.NotNull(result);
        }
        public void CalculatorIndex()
        {
            // Arrange
            var mock = new Mock <ICalculator>();

            mock.Setup(calc => calc.Calc(It.IsAny <string>())).Returns(4);

            ICalculator          calculator = mock.Object;
            CalculatorController controller = new CalculatorController(calculator);

            // Act
            ViewResult result = controller.Calculate(new MathsView()) as ViewResult;

            // Assert
            Assert.AreEqual("4", (result.Model as MathsView).Result);
        }