public async Task <ActionResult <CoctailDto> > GetCoctailById(int id) { var coctail = await _coctailRepository.GetCoctailDtoByIdAsync(id); if (coctail != null) { return(Ok(coctail)); } return(BadRequest()); }
public async Task GetCoctailDtoByIdAsync_ShouldReturnExpectedValues() { //Arrange const int id = 11000; var expectedIdResult = new CoctailDto { Id = 11000, Name = "Mojito", Category = "Cocktail", Alcoholic = "Alcoholic", Glass = "Highball glass", Instructions = "Muddle mint leaves with sugar and lime juice. Add a splash of soda water and fill the glass with cracked ice. Pour the rum and top with soda water. Garnish and serve with straw.", PhotoUrl = "https://www.thecocktaildb.com/images/media/drink/metwgh1606770327.jpg", DateModified = "2016-11-04 09:17:09", Ingradients = new List <IngredientDto> { new IngredientDto { Name = "Light rum", Measure = "2-3 oz" }, new IngredientDto { Name = "Lime", Measure = "Juice of 1" }, new IngredientDto { Name = "Sugar", Measure = "2 tsp" }, new IngredientDto { Name = "Mint", Measure = "2-4" }, new IngredientDto { Name = "Soda water", Measure = null } } }; //Act var actualIdResult = await _coctailRepository.GetCoctailDtoByIdAsync(id); //Assert Assert.Equal(expectedIdResult.Id, actualIdResult.Id); Assert.Equal(expectedIdResult.Name, actualIdResult.Name); Assert.Equal(expectedIdResult.Category, actualIdResult.Category); Assert.Equal(expectedIdResult.Alcoholic, actualIdResult.Alcoholic); Assert.Equal(expectedIdResult.Glass, actualIdResult.Glass); Assert.Equal(expectedIdResult.Instructions, actualIdResult.Instructions); Assert.Equal(expectedIdResult.PhotoUrl, actualIdResult.PhotoUrl); Assert.Equal(expectedIdResult.DateModified, actualIdResult.DateModified); for (int i = 0; i < expectedIdResult.Ingradients.Count; i++) { Assert.Equal(expectedIdResult.Ingradients[i].Name, actualIdResult.Ingradients[i].Name); Assert.Equal(expectedIdResult.Ingradients[i].Measure, actualIdResult.Ingradients[i].Measure); } }