public async Task AllMessages_GivenNullUserName_ReturnsErrorMessage() { // Arrange var expectedResult = new ServiceResponse <PagedUserMessageDto> { Success = false, Message = "Model validation errors!", Errors = new List <string> { "Name is required" } }; _messageService.Setup(x => x.GetAllMessages(It.IsAny <ReadUserMessageDto>())).ReturnsAsync(expectedResult); var controller = new MessagesController(_messageService.Object); // Act var result = await controller.AllMessages(); // Assert var apiResult = Assert.IsType <ObjectResult>(result); var model = Assert.IsAssignableFrom <ApiData <List <string> > >(apiResult.Value); Assert.False(model.Success); Assert.Equal(expectedResult.Message, model.Message); Assert.Equal(StatusCodes.Status400BadRequest, apiResult.StatusCode); Assert.NotNull(model.Data); Assert.Single(model.Data); }
public async Task AllMessages_GivenValidUserName_ReturnsSuccess( ServiceResponse <PagedUserMessageDto> expectedResult) { // Arrange _messageService.Setup(x => x.GetAllMessages(It.IsAny <ReadUserMessageDto>())).ReturnsAsync(expectedResult); var controller = new MessagesController(_messageService.Object); // Act var result = await controller.AllMessages(); // Assert var apiResult = Assert.IsType <ObjectResult>(result); var model = Assert.IsAssignableFrom <PagedApiData <UserMessageDto> >(apiResult.Value); Assert.True(model.Success); Assert.Equal(expectedResult.Message, model.Message); Assert.Equal(StatusCodes.Status200OK, apiResult.StatusCode); Assert.NotNull(model.Data); Assert.Single(model.Data); }