public void given_an_unexpected_exception_thrown_when_GetProcessData_controller_method_is_called_then_controller_returns_correct_error_message() { //arrange string expectedErrorMessage = "An error has occured while processing the request - "; var randomExpectedError = ErrorThrowerHelper.GenerateError(); try // throw random error { throw randomExpectedError; } catch (Exception ex) //catch the expected error message { expectedErrorMessage += (ex.Message + " " + ex.InnerException); } _mockUsecase.Setup(x => x.ExecuteGet(It.IsAny <GetProcessDataRequest>())).Throws(randomExpectedError); _mockValidatorGet.Setup(x => x.Validate(It.IsAny <GetProcessDataRequest>())).Returns(new FV.ValidationResult()); //act var controllerResponse = _processDataController.GetProcessData(new GetProcessDataRequest()); var result = controllerResponse as ObjectResult; var resultContent = result.Value as string; //assert Assert.NotNull(controllerResponse); Assert.NotNull(result); Assert.NotNull(resultContent); Assert.AreEqual(expectedErrorMessage, result.Value); }
public void given_an_unexpected_error_would_be_thrown_when_GetProcessImage_controller_method_is_called_then_it_returns_a_correctly_formatted_error_message_that_is_based_of_exception() { //arrange string expectedErrorMessage = "An error has occured while processing the request - "; var randomExpectedError = ErrorThrowerHelper.GenerateError(); try // throw random error { throw randomExpectedError; } catch (Exception ex) //catch the expected error message { expectedErrorMessage += (ex.Message + " " + ex.InnerException); } _mockUsecase.Setup(x => x.ExecuteGet(It.IsAny <GetProcessImageRequest>())).Throws(randomExpectedError); _mockGetValidator.Setup(x => x.Validate(It.IsAny <GetProcessImageRequest>())).Returns(new FV.ValidationResult()); //validation successful //act var controllerResponse = _processImageController.GetProcessImage(new GetProcessImageRequest()); var result = controllerResponse as ObjectResult; var resultContent = result.Value as string; //unwrap the error message from controller response. //assert Assert.NotNull(controllerResponse); Assert.NotNull(result); Assert.NotNull(resultContent); Assert.AreEqual(expectedErrorMessage, result.Value); //assert if the error message matches what controller wrapped up }
public void given_an_unexpected_error_would_be_thrown_when_GetProcessImage_controller_method_is_called_then_it_returns_500_status_code() { //arrange var expectedStatusCode = 500; var randomExpectedError = ErrorThrowerHelper.GenerateError(); _mockUsecase.Setup(x => x.ExecuteGet(It.IsAny <GetProcessImageRequest>())).Throws(randomExpectedError); // throw random test error (triangulation) _mockGetValidator.Setup(x => x.Validate(It.IsAny <GetProcessImageRequest>())).Returns(new FV.ValidationResult()); //validation successful //act var controllerResponse = _processImageController.GetProcessImage(new GetProcessImageRequest()); var result = controllerResponse as ObjectResult; //assert Assert.NotNull(controllerResponse); Assert.NotNull(result); Assert.AreEqual(expectedStatusCode, result.StatusCode); }
public void given_an_unexpected_exception_thrown_when_GetProcessData_controller_method_is_called_then_controller_returns_500_status_code_response() { //Arrange GetProcessDataRequest request = new GetProcessDataRequest() { processRef = faker.Random.Guid().ToString() }; var randomExpectedError = ErrorThrowerHelper.GenerateError(); _mockUsecase.Setup(x => x.ExecuteGet(It.IsAny <GetProcessDataRequest>())).Throws(randomExpectedError); _mockValidatorGet.Setup(x => x.Validate(It.IsAny <GetProcessDataRequest>())).Returns(new FV.ValidationResult()); //Act var actualResult = _processDataController.GetProcessData(request); var result = (ObjectResult)actualResult; //Assert Assert.NotNull(actualResult); Assert.NotNull(result); Assert.AreEqual(500, result.StatusCode); }