public async Task CreateCountry_Throw_When_NameIsNull() { //Arrange var options = Utils.GetOptions(nameof(CreateCountry_Throw_When_NameIsNull)); var country = new Country { Id = Guid.NewGuid(), Name = "Bulgaria" }; var countryDTO = new CountryDTO { Name = null }; using (var arrangeContext = new CMContext(options)) { await arrangeContext.AddAsync(country); await arrangeContext.SaveChangesAsync(); } //Act,Assert using (var assertContext = new CMContext(options)) { var sut = new CountryServices(assertContext); await Assert.ThrowsExceptionAsync <ArgumentNullException>(() => sut.CreateCountry(countryDTO)); } }
public async Task <CityDTO> CreateCityAsync(CityDTO cityDTO) { var city = cityDTO.CityDTOMapToModel(); await _cmContext.AddAsync(city); await _cmContext.SaveChangesAsync(); return(cityDTO); }
public async Task BarsAvailable_Returns_OnlyExisting_Entities() { //Arrange var options = Utils.GetOptions(nameof(BarsAvailable_Returns_OnlyExisting_Entities)); var country = new Country { Id = Guid.NewGuid(), Name = "Bulgaria" }; var bar = new Bar { Id = Guid.NewGuid(), Name = "Manhattan", CountryId = country.Id, Country = country }; var bar2 = new Bar { Id = Guid.NewGuid(), Name = "The Cocktail Bar", Rating = 1, IsDeleted = true, Country = country, CountryId = country.Id, }; using (var arrangeContext = new CMContext(options)) { await arrangeContext.AddRangeAsync(bar, bar2); await arrangeContext.AddAsync(country); await arrangeContext.SaveChangesAsync(); } //Act, Assert using (var assertContext = new CMContext(options)) { var sut = new CountryServices(assertContext); var result = await sut.BarsAvailable(country.Id); Assert.AreEqual(1, result.Count); Assert.IsInstanceOfType(result, typeof(ICollection <BarDTO>)); } }
public async Task ReturntOrderedResult() { var options = TestUtilities.GetOptions(nameof(ReturntOrderedResult)); var mockIngredient = new Mock <IIngredientManager>(); var mockFactory = new Mock <ICocktailFactory>(); var cocktailOne = new Cocktail() { Name = "name", Information = "info", Picture = "picture", Rating = 4.7 }; var cocktailTwo = new Cocktail() { Name = "name", Information = "info", Picture = "picture", Rating = 4.6 }; var cocktailThree = new Cocktail() { Name = "name", Information = "info", Picture = "picture", Rating = 4.5 }; var cocktailFour = new Cocktail() { Name = "name", Information = "info", Picture = "picture", Rating = 4.4 }; var cocktailFive = new Cocktail() { Name = "name", Information = "info", Picture = "picture", Rating = 4.1 }; using (var arrangeContext = new CMContext(options)) { await arrangeContext.AddAsync(cocktailOne); await arrangeContext.AddAsync(cocktailTwo); await arrangeContext.AddAsync(cocktailThree); await arrangeContext.AddAsync(cocktailFour); await arrangeContext.AddAsync(cocktailFive); await arrangeContext.SaveChangesAsync(); } using (var assertContext = new CMContext(options)) { var sut = new CocktailManager(mockIngredient.Object, assertContext, mockFactory.Object); var result = await sut.GetTopRatedCocktails(); Assert.AreEqual(cocktailOne.Rating, result.ElementAt(0).Rating); Assert.AreEqual(cocktailTwo.Rating, result.ElementAt(1).Rating); Assert.AreEqual(cocktailThree.Rating, result.ElementAt(2).Rating); Assert.AreEqual(cocktailFour.Rating, result.ElementAt(3).Rating); } }