public async Task GetWishlistAsync_shouldReturnBadRequest_WhenCustomerIdNotProvided() { //Arrange int id = 0; var sut = new WishlistController(_wishlistService); //Act var result = await sut.GetWishlistAsync(id); //Assert Assert.Equal((int)HttpStatusCode.BadRequest, (result.Result as ObjectResult).StatusCode); }
public async Task GetWishlistAsync_shouldReturnNotFound_WhenItIsNotPossibleToGet() { //Arrange int id = 1; List <WishListProduct> notFound = null; _wishlistService.GetCustomerWishlistAsync(id).Returns(notFound); var sut = new WishlistController(_wishlistService); //Act var result = await sut.GetWishlistAsync(id); //Assert Assert.Equal((int)HttpStatusCode.NotFound, (result.Result as StatusCodeResult).StatusCode); }
public async Task GetWishlistAsync_shouldReturnOk_WhenItIsPossibleToGet() { //Arrange int id = 1; List <WishListProduct> existingList = new List <WishListProduct>() { new WishListProduct() }; _wishlistService.GetCustomerWishlistAsync(id).Returns(existingList); var sut = new WishlistController(_wishlistService); //Act var result = await sut.GetWishlistAsync(id); //Assert Assert.Equal((int)HttpStatusCode.OK, (result.Result as ObjectResult).StatusCode); }
public async Task GetWishlistAsync_shouldReturnVlidBody_WhenItIsPossibleToGet() { //Arrange int id = 1; var productId = "1bf0f365-fbdd-4e21-9786-da459d78dd1f"; var url = "http://images.luizalabs.com/123.png"; var wishlistProduct = new WishListProduct() { Id = 1, ProductId = productId, Image = url, Price = "30.00", Title = "Product123" }; List <WishListProduct> existingList = new List <WishListProduct>() { wishlistProduct }; _wishlistService.GetCustomerWishlistAsync(id).Returns(existingList); var sut = new WishlistController(_wishlistService); //Act var result = await sut.GetWishlistAsync(id); //Assert Assert.Equal((int)HttpStatusCode.OK, (result.Result as ObjectResult).StatusCode); var json = JsonConvert.SerializeObject((result.Result as ObjectResult).Value); var expected = "[" + "{" + $"\"productId\":\"{productId}\"," + "\"price\":\"30.00\"," + $"\"image\":\"{url}\"," + "\"title\":\"Product123\"" + "}" + "]"; Assert.Equal(expected, json, ignoreCase: true, ignoreLineEndingDifferences: true, ignoreWhiteSpaceDifferences: true); }