private async Task TestGetProductByIdNotExists(ProductReadItemDto retrievedProduct) { var getProductResponse = await _testHostFixture.Client.GetAsync($"{baseUrl}/{retrievedProduct.ProductId}"); Assert.False(getProductResponse.IsSuccessStatusCode); Assert.Equal(HttpStatusCode.NotFound, getProductResponse.StatusCode); }
private async Task TestDeleteProductById(ProductReadItemDto createdProduct) { var deleteProductResponse = await _testHostFixture.Client.DeleteAsync( $"{baseUrl}/{createdProduct.ProductId}"); deleteProductResponse.EnsureSuccessStatusCode(); Assert.Equal(HttpStatusCode.NoContent, deleteProductResponse.StatusCode); }
private async Task TestUpdateProduct(ProductReadItemDto createdProduct, ProductReadItemDto retrievedProduct) { var updateProductResponse = await _testHostFixture.Client.PutAsJsonAsync( $"{baseUrl}/{createdProduct.ProductId}", retrievedProduct); updateProductResponse.EnsureSuccessStatusCode(); var updatedProduct = JsonConvert.DeserializeObject <ProductReadItemDto>( await updateProductResponse.Content.ReadAsStringAsync()); Assert.Equal(HttpStatusCode.OK, updateProductResponse.StatusCode); Assert.Equal(retrievedProduct.ProductId, updatedProduct.ProductId); AssertProductsEquality(updatedProduct, retrievedProduct); }
private async Task <ProductReadItemDto> TestGetProductById(ProductReadItemDto createdProduct) { var getProductResponse = await _testHostFixture.Client.GetAsync($"{baseUrl}/{createdProduct.ProductId}"); getProductResponse.EnsureSuccessStatusCode(); var getProduct = JsonConvert.DeserializeObject <ProductReadItemDto>( await getProductResponse.Content.ReadAsStringAsync()); Assert.Equal(HttpStatusCode.OK, getProductResponse.StatusCode); Assert.Equal(createdProduct.ProductId, getProduct.ProductId); AssertProductsEquality(createdProduct, getProduct); return(getProduct); }
private static void AssertProductsEquality(ProductWriteItemDto expectedProduct, ProductReadItemDto actualProduct) { Assert.Equal(expectedProduct.ProductName, actualProduct.ProductName); Assert.Equal(expectedProduct.QuantityPerUnit, actualProduct.QuantityPerUnit); Assert.Equal(expectedProduct.ReorderLevel, actualProduct.ReorderLevel); Assert.Equal(expectedProduct.SelectedCategoryId, actualProduct.SelectedCategoryId); Assert.Equal(expectedProduct.SelectedSupplierId, actualProduct.SelectedSupplierId); Assert.Equal(expectedProduct.UnitPrice, actualProduct.UnitPrice); Assert.Equal(expectedProduct.UnitsInStock, actualProduct.UnitsInStock); Assert.Equal(expectedProduct.UnitsOnOrder, actualProduct.UnitsOnOrder); }