public void ReturnCorrectBeers_When_ParamsValid() { var options = Utils.GetOptions(nameof(ReturnCorrectBeers_When_ParamsValid)); var country = TestsModelsSeeder.SeedCountry(); var beerType = TestsModelsSeeder.SeedBeerType(); var brewery = TestsModelsSeeder.SeedBrewery(); var beer = TestsModelsSeeder.SeedBeer(); var beer2 = TestsModelsSeeder.SeedBeer2(); var beer3 = TestsModelsSeeder.SeedBeer3(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Countries.Add(country); arrangeContext.BeerTypes.Add(beerType); arrangeContext.Breweries.Add(brewery); arrangeContext.Add(beer); arrangeContext.Add(beer2); arrangeContext.Add(beer3); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerServices(assertContext); var result = sut.GetAllBeers().ToList(); Assert.AreEqual(3, result.Count); Assert.AreEqual(beer.Name, result[0].Name); Assert.AreEqual(beer2.Name, result[1].Name); Assert.AreEqual(beer3.Name, result[2].Name); } }
public void UpdateCorrectBeer_When_ParamsAreValid() { var options = Utils.GetOptions(nameof(UpdateCorrectBeer_When_ParamsAreValid)); var beer = TestsModelsSeeder.SeedBeer(); var beerType = TestsModelsSeeder.SeedBeerType(); var brewery = TestsModelsSeeder.SeedBrewery(); var country = TestsModelsSeeder.SeedCountry(); var beer2 = TestsModelsSeeder.SeedBeer2(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Countries.Add(country); arrangeContext.Breweries.Add(brewery); arrangeContext.BeerTypes.Add(beerType); arrangeContext.Beers.Add(beer); arrangeContext.Beers.Add(beer2); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerServices(assertContext); var act = sut.UpdateBeer(1, "NewBeerName", beer2.Type.Name, brewery.Name, 6); var result = sut.GetBeer(1); Assert.AreEqual("NewBeerName", result.Name); Assert.AreEqual(beer2.Type.Name, result.BeerType); Assert.AreEqual(brewery.Name, result.Brewery); Assert.AreEqual(6, result.AlcoholByVolume); } }
public void ThrowArgumentException_When_UpdatedBeerExists() { var options = Utils.GetOptions(nameof(ThrowArgumentException_When_UpdatedBeerExists)); var beerType = TestsModelsSeeder.SeedBeerType(); var brewery = TestsModelsSeeder.SeedBrewery(); var country = TestsModelsSeeder.SeedCountry(); var beer = TestsModelsSeeder.SeedBeer(); var beer2 = TestsModelsSeeder.SeedBeer2(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Countries.Add(country); arrangeContext.Breweries.Add(brewery); arrangeContext.BeerTypes.Add(beerType); arrangeContext.Beers.Add(beer); arrangeContext.Beers.Add(beer2); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerServices(assertContext); Assert.ThrowsException <ArgumentException>(() => sut.UpdateBeer(1, beer2.Name, beer2.Type.Name, beer2.Brewery.Name, 6)); } }
public void ReturnCorrectBeer_When_ParamsValid() { var options = Utils.GetOptions(nameof(ReturnCorrectBeer_When_ParamsValid)); var beertype = TestsModelsSeeder.SeedBeerType(); var brewery = TestsModelsSeeder.SeedBrewery(); var beerDTO = TestsModelsSeeder.SeedBeerDTO(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.BeerTypes.Add(beertype); arrangeContext.Breweries.Add(brewery); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerServices(assertContext); var act = sut.CreateBeer(beerDTO); var result = assertContext.Beers.FirstOrDefault(beer => beer.Name == beerDTO.Name); Assert.AreEqual(beerDTO.Id, result.Id); Assert.AreEqual(beerDTO.Name, result.Name); Assert.AreEqual(beerDTO.AlcoholByVolume, result.AlcoholByVolume); Assert.AreEqual(beerDTO.Brewery, result.Brewery.Name); } }
public void ThrowArgumentNullException_When_BeerMissing() { var options = Utils.GetOptions(nameof(ThrowArgumentNullException_When_BeerMissing)); using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerServices(assertContext); Assert.ThrowsException <ArgumentNullException>(() => sut.GetBeer(1)); } }
public void ReturnFalse_When_BeerToDeleteMissing() { var options = Utils.GetOptions(nameof(ReturnFalse_When_BeerToDeleteMissing)); using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerServices(assertContext); var result = sut.DeleteBeer(1); Assert.IsFalse(result); }; }
public async Task GetAll_Should_Success_Return_FirstPage() { //Arrange var client = new BreweryDbClient(Config.AppKey); var beerServices = new BeerServices(client); //Act var response = await beerServices.GetAll(); //Assert Assert.IsTrue(response.Status == "success"); Assert.IsTrue(response.CurrentPage == 1); }
public async Task GetAll_With_PageNumber_Should_Return_Right_Page() { //Arrange var client = new BreweryDbClient(Config.AppKey); var beerServices = new BeerServices(client); int pageNumber = 3; //Act var response = await beerServices.GetAll(pageNumber); //Assert Assert.IsTrue(response.Status == "success"); Assert.IsTrue(response.CurrentPage == pageNumber); }
public void ThrowArgumentException_When_BeerAlreadyExists() { var options = Utils.GetOptions(nameof(ThrowArgumentException_When_BeerAlreadyExists)); var beerDTO = TestsModelsSeeder.SeedBeerDTO(); var beer = TestsModelsSeeder.SeedBeer(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Beers.Add(beer); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerServices(assertContext); } }
public async Task GetDetailsByID_Should_Return_Correct_Beer() { //Arrange var client = new BreweryDbClient(Config.AppKey); var beerServices = new BeerServices(client); string beerId = "eqcXWb"; //Act var response = await beerServices.GetDetailsByID(beerId); var beer = response.Data; //Assert Assert.IsTrue(response.Status == "success"); Assert.IsNotNull(beer); Assert.AreEqual(beer.Id, beerId); }
public async Task Search_Should_Return_Correct_Results() { //Arrange var client = new BreweryDbClient(Config.AppKey); var beerServices = new BeerServices(client); string keyword = "london"; //Act var response = await beerServices.Search(keyword); var beers = response.Data; //Assert Assert.IsTrue(response.Status == "success"); Assert.IsTrue(response.CurrentPage == 1); Assert.IsTrue(response.NumberOfPages >= 1); Assert.IsTrue(beers.Count >= 1); }
public void ChangeCorrect_IsDelete_ToTrue() { var options = Utils.GetOptions(nameof(ChangeCorrect_IsDelete_ToTrue)); var beer = TestsModelsSeeder.SeedBeer(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Beers.Add(beer); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerServices(assertContext); var act = sut.DeleteBeer(1); Assert.IsTrue(assertContext.Beers.FirstOrDefault(beer => beer.Id == 1).IsDeleted); }; }
public void ReturnFalse_When_BeerToDelete_AlreadyDeleted() { var options = Utils.GetOptions(nameof(ReturnFalse_When_BeerToDelete_AlreadyDeleted)); var beer = TestsModelsSeeder.SeedBeer(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Beers.Add(beer); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerServices(assertContext); var act = sut.DeleteBeer(1); var result = sut.DeleteBeer(1); Assert.IsFalse(result); }; }
public BeersController(BeerServices beerServices) { _BeerServices = beerServices; }