public void MoneyConvertor_WithValidModel_ShouldReturnOkObjectResult() { //Arrange var mockUrlLogic = new Mock <IMoneyConvertor>(); var controller = new MoneyConvertorController(mockUrlLogic.Object); var model = new MoneyConvertorModel(); //Act IActionResult actionResult = controller.MoneyConvertor(model); //Assert Assert.IsInstanceOf <OkObjectResult>(actionResult); }
public void MoneyConvertor_WithInvalidModel_ShouldReturnBadRequestObjectResult() { //Arrange var mockUrlLogic = new Mock <IMoneyConvertor>(); var controller = new MoneyConvertorController(mockUrlLogic.Object); controller.ModelState.AddModelError("", ""); var model = new MoneyConvertorModel() { Money = 1 }; //Act IActionResult actionResult = controller.MoneyConvertor(model); //Assert Assert.IsInstanceOf <BadRequestObjectResult>(actionResult); }
public void MoneyConvertor_WithValidModel_ShouldCallLogic() { //Arrange var mockUrlLogic = new Mock <IMoneyConvertor>(); var controller = new MoneyConvertorController(mockUrlLogic.Object); var model = new MoneyConvertorModel() { Money = 1 }; //Act IActionResult actionResult = controller.MoneyConvertor(model); //Assert mockUrlLogic.Verify( x => x.BuildMoneyString(It.IsAny <MoneyConvertorModel>()), "A valid model should call the logic"); }
public void MoneyConvertor_WithInvalidModel_ShouldNotCallLogic() { //Arrange var mockUrlLogic = new Mock <IMoneyConvertor>(); var controller = new MoneyConvertorController(mockUrlLogic.Object); controller.ModelState.AddModelError("", ""); var model = new MoneyConvertorModel() { Money = 1 }; //Act IActionResult actionResult = controller.MoneyConvertor(model); //Assert mockUrlLogic.Verify( x => x.BuildMoneyString(It.IsAny <MoneyConvertorModel>()), Times.Never, "An Invalid model should not make call to logic"); }