public async void Create_Errors() { EmailControllerMockFacade mock = new EmailControllerMockFacade(); var mockResponse = new Mock <CreateResponse <ApiEmailServerResponseModel> >(null as ApiEmailServerResponseModel); var mockRecord = new ApiEmailServerResponseModel(); mockResponse.SetupGet(x => x.Success).Returns(false); mock.ServiceMock.Setup(x => x.Create(It.IsAny <ApiEmailServerRequestModel>())).Returns(Task.FromResult <CreateResponse <ApiEmailServerResponseModel> >(mockResponse.Object)); EmailController controller = new EmailController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object); controller.ControllerContext = new ControllerContext(); controller.ControllerContext.HttpContext = new DefaultHttpContext(); IActionResult response = await controller.Create(new ApiEmailServerRequestModel()); response.Should().BeOfType <ObjectResult>(); (response as ObjectResult).StatusCode.Should().Be((int)HttpStatusCode.UnprocessableEntity); mock.ServiceMock.Verify(x => x.Create(It.IsAny <ApiEmailServerRequestModel>())); }
public async Task GivenEmail_WhenCreate_ThenCreatedSuccessful() { //?Given var email = new Email(); var emailModel = new EmailModel(); _mockManager.Setup(x => x.Create(email)) .Verifiable(); _mockMapper.Setup(x => x.Map <Email>(emailModel)) .Returns(email) .Verifiable(); //?When var result = await _emailController.Create(emailModel); //?Then Assert.IsType <OkResult>(result); _mockManager.Verify(); _mockMapper.Verify(); }
public async void Create_No_Errors() { EmailControllerMockFacade mock = new EmailControllerMockFacade(); var mockResponse = ValidationResponseFactory <ApiEmailServerResponseModel> .CreateResponse(null as ApiEmailServerResponseModel); mockResponse.SetRecord(new ApiEmailServerResponseModel()); mock.ServiceMock.Setup(x => x.Create(It.IsAny <ApiEmailServerRequestModel>())).Returns(Task.FromResult <CreateResponse <ApiEmailServerResponseModel> >(mockResponse)); EmailController controller = new EmailController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object); controller.ControllerContext = new ControllerContext(); controller.ControllerContext.HttpContext = new DefaultHttpContext(); IActionResult response = await controller.Create(new ApiEmailServerRequestModel()); response.Should().BeOfType <CreatedResult>(); (response as CreatedResult).StatusCode.Should().Be((int)HttpStatusCode.Created); var createResponse = (response as CreatedResult).Value as CreateResponse <ApiEmailServerResponseModel>; createResponse.Record.Should().NotBeNull(); mock.ServiceMock.Verify(x => x.Create(It.IsAny <ApiEmailServerRequestModel>())); }