public void ReturnCorrectReview_When_ParamsValid() { var options = Utils.GetOptions(nameof(ReturnCorrectReview_When_ParamsValid)); var review = TestsModelsSeeder.SeedReview(); var beer = TestsModelsSeeder.SeedBeer(); var user = TestsModelsSeeder.SeedUser(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Add(review); arrangeContext.Users.Add(user); arrangeContext.Beers.Add(beer); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new ReviewServices(assertContext); var result = sut.GetReview(1); Assert.AreEqual(review.Name, result.Name); Assert.AreEqual(review.Author.UserName, result.Author); Assert.AreEqual(review.Text, result.Text); Assert.AreEqual(review.Rating, result.Rating); } }
public void CreateCurrectReview_When_ParamsValid() { var options = Utils.GetOptions(nameof(CreateCurrectReview_When_ParamsValid)); var reviewDTO = TestsModelsSeeder.SeedReviewDTO(); var user = TestsModelsSeeder.SeedUser(); var targetbeer = TestsModelsSeeder.SeedBeer(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Users.Add(user); arrangeContext.Beers.Add(targetbeer); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new ReviewServices(assertContext); var act = sut.CreateReview(reviewDTO); assertContext.SaveChanges(); var result = assertContext.Reviews.ToList()[0]; Assert.AreEqual(reviewDTO.Name, result.Name); Assert.AreEqual(reviewDTO.Rating, result.Rating); Assert.AreEqual(reviewDTO.Text, result.Text); Assert.AreEqual(reviewDTO.Author, reviewDTO.Author); } }
public void ReturnCorrectList_WhenDataIsPresent() { var options = Utils.GetOptions(nameof(ReturnCorrectList_WhenDataIsPresent)); var country = TestsModelsSeeder.SeedCountry(); var brewery1 = TestsModelsSeeder.SeedBrewery(); var brewery2 = TestsModelsSeeder.SeedBrewery2(); var brewery3 = TestsModelsSeeder.SeedBrewery3(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Countries.Add(country); arrangeContext.Breweries.Add(brewery1); arrangeContext.Breweries.Add(brewery2); arrangeContext.Breweries.Add(brewery3); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BreweryServices(assertContext); var result = sut.GetAllBreweries().ToList(); Assert.AreEqual(3, result.Count); Assert.AreEqual(brewery1.Name, result[0].Name); Assert.AreEqual(brewery2.Name, result[1].Name); Assert.AreEqual(brewery3.Name, result[2].Name); } }
public void ReturnTrue_When_TypeIsDeleted() { var options = Utils.GetOptions(nameof(ReturnTrue_When_TypeIsDeleted)); var brewery = new Brewery { Id = 1, Name = "Diamond Knot Brewery", Description = "America", CountryId = 1 }; using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Breweries.Add(brewery); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BreweryService(assertContext); var result = sut.DeleteBrewery(1); Assert.IsTrue(result); } }
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 ReturnCorrectList_WhenDataIsPresent() { var options = Utils.GetOptions(nameof(ReturnCorrectList_WhenDataIsPresent)); var beerType1 = TestsModelsSeeder.SeedBeerType(); var beerType2 = TestsModelsSeeder.SeedBeerType2(); var beerType3 = TestsModelsSeeder.SeedBeerType3(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.BeerTypes.Add(beerType1); arrangeContext.BeerTypes.Add(beerType2); arrangeContext.BeerTypes.Add(beerType3); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerTypeServices(assertContext); var result = sut.GetAllBeerTypes().ToList(); Assert.AreEqual(3, result.Count); Assert.AreEqual(beerType1.Name, result[0].Name); Assert.AreEqual(beerType2.Name, result[1].Name); Assert.AreEqual(beerType3.Name, result[2].Name); } }
public void CreateBeer_Success() { //Arrange var beerDTO = new BeerDTO { BeerName = "Boliarka", BeerTypeId = 1, BreweryId = 1, AlcByVol = (double)3.2, Description = "Stava", }; var options = Utils.GetOptions(nameof(CreateBeer_Success)); //Act & Assert using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerService(assertContext); var result = sut.CreateBeer(beerDTO); Assert.AreEqual(beerDTO.BeerName, result.BeerName); Assert.AreEqual(beerDTO.BeerTypeId, result.BeerTypeId); Assert.AreEqual(beerDTO.BreweryId, result.BreweryId); Assert.AreEqual(beerDTO.AlcByVol, result.AlcByVol); Assert.AreEqual(beerDTO.Description, result.Description); } }
public void ReturnCorrectReviews_When_ParamsValid() { var options = Utils.GetOptions(nameof(ReturnCorrectReviews_When_ParamsValid)); var review = TestsModelsSeeder.SeedReview(); var review2 = TestsModelsSeeder.SeedReview2(); var review3 = TestsModelsSeeder.SeedReview3(); var beer = TestsModelsSeeder.SeedBeer(); var beer2 = TestsModelsSeeder.SeedBeer2(); var beer3 = TestsModelsSeeder.SeedBeer3(); var user = TestsModelsSeeder.SeedUser(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Reviews.Add(review); arrangeContext.Reviews.Add(review2); arrangeContext.Reviews.Add(review3); arrangeContext.Users.Add(user); arrangeContext.Beers.Add(beer); arrangeContext.Beers.Add(beer2); arrangeContext.Beers.Add(beer3); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new ReviewServices(assertContext); var result = sut.GetAllReviews().ToList(); Assert.AreEqual(3, result.Count()); Assert.AreEqual(review.Name, result[0].Name); Assert.AreEqual(review2.Name, result[1].Name); Assert.AreEqual(review3.Name, result[2].Name); } }
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 Create_Correct_User() { var options = Utils.GetOptions(nameof(Create_Correct_User)); var user = new User { Id = 1, UserName = "******", FirstName = "Boyan", LastName = "Vuchev", Email = "*****@*****.**", CreatedOn = DateTime.UtcNow }; var mockArtistMapper = new Mock <IDateTimeProvider>(); using (var arrangeContext = new BeerOverflowContext(options)) { var sut = new UserService(arrangeContext, mockArtistMapper.Object); var userDTO = new UserDTO(user.Id, user.UserName, user.FirstName, user.LastName, user.Email, user.CreatedOn); var result = sut.CreateUser(userDTO); Assert.AreEqual(user.Id, result.Id); Assert.AreEqual(user.UserName, result.Username); Assert.AreEqual(user.FirstName, result.FirstName); Assert.AreEqual(user.LastName, result.LastName); Assert.AreEqual(user.Email, result.Email); Assert.AreEqual(user.CreatedOn, result.CreatedOn); } }
public void Return_Correct_Edited_Brewery() { var options = Utils.GetOptions(nameof(Return_Correct_Edited_Brewery)); var brewery = new Brewery { Id = 1, Name = "Diamond Knot Brewery", Description = "America", CountryId = 1 }; using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Breweries.Add(brewery); arrangeContext.SaveChanges(); } var newName = "DKB"; var newDescr = "USA"; var newCountryId = 2; using (var assertContext = new BeerOverflowContext(options)) { var sut = new BreweryService(assertContext); var result = sut.UpdateBrewery(brewery.Id, newName, newDescr, newCountryId); Assert.AreEqual(brewery.Id, result.Id); Assert.AreEqual(newName, result.Name); Assert.AreEqual(newDescr, result.Description); Assert.AreEqual(newCountryId, result.CountryId); } }
public void ReturnCurrectCountries_When_ParamsValid() { var options = Utils.GetOptions(nameof(ReturnCurrectCountries_When_ParamsValid)); var country = TestsModelsSeeder.SeedCountry(); var country2 = TestsModelsSeeder.SeedCountry2(); var country3 = TestsModelsSeeder.SeedCountry3(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Countries.Add(country); arrangeContext.Countries.Add(country2); arrangeContext.Countries.Add(country3); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new CountryServices(assertContext); var result = sut.GetAllCountries().ToList(); Assert.AreEqual(3, result.Count()); Assert.AreEqual(country.Name, result[0].Name); Assert.AreEqual(country2.Name, result[1].Name); Assert.AreEqual(country3.Name, result[2].Name); } }
public void Return_Correct_Edited_Type() { var options = Utils.GetOptions(nameof(Return_Correct_Edited_Type)); var beerType = new BeerType { Id = 1, Description = "Type of beer conditioned at low temperatures.", Type = "Lager", }; using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.BeerTypes.Add(beerType); arrangeContext.SaveChanges(); } var newType = "Lageerr"; var newDescr = "Updated"; using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerTypesService(assertContext); var result = sut.UpdateBeerType(beerType.Id, newType, newDescr); Assert.AreEqual(beerType.Id, result.Id); Assert.AreEqual(newType, result.Type); Assert.AreEqual(newDescr, result.Description); } }
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 ReturnTrue_When_UserIsDeleted() { var options = Utils.GetOptions(nameof(ReturnTrue_When_UserIsDeleted)); var user = new User { Id = 1, UserName = "******", FirstName = "Boyan", LastName = "Vuchev", Email = "*****@*****.**", CreatedOn = DateTime.UtcNow }; var mockArtistMapper = new Mock <IDateTimeProvider>(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Users.Add(user); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new UserService(assertContext, mockArtistMapper.Object); var result = sut.DeleteUser(1); Assert.IsTrue(result); } }
public void Return_Correct_Edited_User() { var options = Utils.GetOptions(nameof(Return_Correct_Edited_User)); var user = new User { Id = 1, UserName = "******", FirstName = "Boyan", LastName = "Vuchev", Email = "*****@*****.**", CreatedOn = DateTime.UtcNow }; var mockArtistMapper = new Mock <IDateTimeProvider>(); var username = "******"; var newEmail = "*****@*****.**"; using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Users.Add(user); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new UserService(assertContext, mockArtistMapper.Object); var result = sut.UpdateUser(user.Id, username, user.FirstName, user.LastName, newEmail); Assert.AreEqual(user.Id, result.Id); Assert.AreEqual(username, result.Username); Assert.AreEqual(newEmail, result.Email); } }
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 ReturnCorrectList_WhenDataIsPresent() { var options = Utils.GetOptions(nameof(ReturnCorrectList_WhenDataIsPresent)); var userRole = TestsModelsSeeder.SeedUserRole(); var user1 = TestsModelsSeeder.SeedUser(); var user2 = TestsModelsSeeder.SeedUser2(); var user3 = TestsModelsSeeder.SeedUser3(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Roles.Add(userRole); arrangeContext.Users.Add(user1); arrangeContext.Users.Add(user2); arrangeContext.Users.Add(user3); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new UserServices(assertContext); var result = sut.GetAllUsers().ToList(); Assert.AreEqual(3, result.Count); Assert.AreEqual(user1.UserName, result[0].UserName); Assert.AreEqual(user2.UserName, result[1].UserName); Assert.AreEqual(user3.UserName, result[2].UserName); } }
public BeersController(BeerOverflowContext context, IBeerService beerService, IReviewService reviewService, UserManager <User> userManager, IHostingEnvironment env) { _context = context; this.beerService = beerService; this.reviewService = reviewService; this._userManager = userManager; _env = env; }
public void ThrowArgumentNullException_When_ReviewMissing() { var options = Utils.GetOptions(nameof(ThrowArgumentNullException_When_ReviewMissing)); using (var assertContext = new BeerOverflowContext(options)) { var sut = new ReviewServices(assertContext); Assert.ThrowsException <ArgumentNullException>(() => sut.GetReview(1)); } }
public void Throw_WhenIdIsInvalid() { var options = Utils.GetOptions(nameof(Throw_WhenIdIsInvalid)); using (var assertContext = new BeerOverflowContext(options)) { var sut = new UserServices(assertContext); Assert.ThrowsException <ArgumentNullException>(() => sut.GetUser(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 void Throw_When_BreweryNotFound() { var options = Utils.GetOptions(nameof(Throw_When_BreweryNotFound)); using (var assertContext = new BeerOverflowContext(options)) { var sut = new BreweryService(assertContext); Assert.ThrowsException <ArgumentNullException>(() => sut.DeleteBrewery(1)); } }
public void ReturnFalse_When_ParamsNotValid() { var options = Utils.GetOptions(nameof(ReturnFalse_When_ParamsNotValid)); using (var assertContext = new BeerOverflowContext(options)) { var sut = new ReviewServices(assertContext); var result = sut.DeleteReview(1); Assert.IsFalse(result); } }
public void Throw_When_UserNotFound() { var options = Utils.GetOptions(nameof(Throw_When_UserNotFound)); var mockArtistMapper = new Mock <IDateTimeProvider>(); using (var assertContext = new BeerOverflowContext(options)) { var sut = new UserService(assertContext, mockArtistMapper.Object); Assert.ThrowsException <ArgumentNullException>(() => sut.DeleteUser(1)); } }
public void Throw_When_BreweryNotFound() { var options = Utils.GetOptions(nameof(Throw_When_BreweryNotFound)); using (var assertContext = new BeerOverflowContext(options)) { var sut = new BreweryService(assertContext); var newName = "DKB"; var newDescr = "USA"; var newCountryId = 2; Assert.ThrowsException <ArgumentNullException>(() => sut.UpdateBrewery(1, newName, newDescr, newCountryId)); } }
public void ReturnCorrectBeerType_WhenParamsAreValid() { var options = Utils.GetOptions(nameof(ReturnCorrectBeerType_WhenParamsAreValid)); var beerTypeDTO = TestsModelsSeeder.SeedBeerTypeDTO(); using (var assertContext = new BeerOverflowContext(options)) { var sut = new BeerTypeServices(assertContext); var act = sut.CreateBeerType(beerTypeDTO); var result = assertContext.BeerTypes.FirstOrDefault(beerType => beerType.Name == beerTypeDTO.Name); Assert.AreEqual(beerTypeDTO.Id, result.Id); Assert.AreEqual(beerTypeDTO.Name, result.Name); } }
public void Return_Correct_Breweries() { var options = Utils.GetOptions(nameof(Return_Correct_Breweries)); var country = new Country { Id = 1, Name = "America" }; var brewery = new Brewery { Id = 1, Name = "Diamond Knot Brewery", Description = "America", CountryId = 1, Country = country }; var brewery2 = new Brewery { Id = 2, Name = "Anheuser-Busch", Description = "American brewery", CountryId = 1, Country = country }; using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Breweries.Add(brewery); arrangeContext.Breweries.Add(brewery2); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new BreweryService(assertContext); var result = sut.GetAllBreweries().First(); Assert.AreEqual(brewery.Id, result.Id); Assert.AreEqual(brewery.Name, result.Name); Assert.AreEqual(brewery.Description, result.Description); Assert.AreEqual(brewery.CountryId, result.CountryId); Assert.AreEqual(brewery.Country.Name, result.Country); } }
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 void ThrowArgumentException_When_TargetBeerNotValid() { var options = Utils.GetOptions(nameof(ThrowArgumentException_When_TargetBeerNotValid)); var user = TestsModelsSeeder.SeedUser(); var reviewDTO = TestsModelsSeeder.SeedReviewDTO(); using (var arrangeContext = new BeerOverflowContext(options)) { arrangeContext.Users.Add(user); arrangeContext.SaveChanges(); } using (var assertContext = new BeerOverflowContext(options)) { var sut = new ReviewServices(assertContext); Assert.ThrowsException <ArgumentNullException>(() => sut.CreateReview(reviewDTO)); } }