public async void ShouldReturnAShoppingListWhenItExists() { var shoppingList = new ShoppingList { ShoppingListId = 1, Name = "Test", CreatedAt = DateTime.UtcNow, LastUpdated = DateTime.UtcNow }; var mockRepository = new Mock <IRepository <ShoppingList> >(); mockRepository.Setup(mock => mock.FindAsync(3)) .ReturnsAsync(shoppingList); _repository = mockRepository.Object; _service = new ShoppingListService(_repository); _controller = new ShoppingListController(_service); IActionResult result = await _controller.FindShoppingListAsync(3); result.Should().BeOfType <ObjectResult>() .Which.Value.Should().BeAssignableTo <IApiResponse>() .Which.Should().Match <IApiResponse>(response => response.StatusCode == HttpStatusCode.OK && response.Message == null && response.Result != null); }
public async void ShouldReturnABadRequestResultWhenTheIdIsNull() { _repository = Mock.Of <IRepository <ShoppingList> >(); _service = new ShoppingListService(_repository); _controller = new ShoppingListController(_service); IActionResult result = await _controller.FindShoppingListAsync(null); result.Should().BeOfType <ObjectResult>() .Which.Value.Should().BeAssignableTo <IApiResponse>() .Which.Should().Match <IApiResponse>(response => response.StatusCode == HttpStatusCode.BadRequest && response.Result == null && response.Message.Equals("The shopping list you are looking for is not valid.")); }
public async void ShouldReturnANotFoundResultWhenTheShoppingListDoesNotExist() { var mockRepository = new Mock <IRepository <ShoppingList> >(); mockRepository.Setup(mock => mock.FindAsync(3)) .ReturnsAsync(value: null); _repository = mockRepository.Object; _service = new ShoppingListService(_repository); _controller = new ShoppingListController(_service); IActionResult result = await _controller.FindShoppingListAsync(3); result.Should().BeOfType <ObjectResult>() .Which.Value.Should().BeAssignableTo <IApiResponse>() .Which.Should().Match <IApiResponse>(response => response.StatusCode == HttpStatusCode.NotFound && response.Message == null && response.Result == null); }