public void CorrectlyDeleteReview() { var options = TestUtilities.GetOptions(nameof(CorrectlyDeleteReview)); int resultId = -1; var review1 = new BarReview { Id = resultId, BarId = 1, }; var review2 = new BarReview { Id = -2, BarId = 1, }; var review3 = new BarReview { Id = -3, BarId = 2, }; using (var actContext = new CocktailDB(options)) { actContext.AddAsync(review1).GetAwaiter(); actContext.AddAsync(review2).GetAwaiter(); actContext.AddAsync(review3).GetAwaiter(); actContext.SaveChangesAsync().GetAwaiter(); } using (var assertContext = new CocktailDB(options)) { var sut = new BarReviewServices(assertContext); sut.DeleteAsync(resultId).GetAwaiter(); Assert.IsFalse(assertContext.BarReviews.Contains(review1)); } }
public void ThrowWhenIdIsNotFound() { var options = TestUtilities.GetOptions(nameof(ThrowWhenIdIsNotFound)); int resultId = -1; var review1 = new BarReview { Id = resultId, BarId = 1, }; var review2 = new BarReview { Id = -2, BarId = 1, }; var review3 = new BarReview { Id = -3, BarId = 2, }; using (var actContext = new CocktailDB(options)) { actContext.AddAsync(review1).GetAwaiter(); actContext.AddAsync(review2).GetAwaiter(); actContext.AddAsync(review3).GetAwaiter(); actContext.SaveChangesAsync().GetAwaiter(); } using (var assertContext = new CocktailDB(options)) { var sut = new BarReviewServices(assertContext); Assert.ThrowsExceptionAsync <ArgumentNullException>( () => sut.DeleteAsync(int.MaxValue)); } }
public void ReturnNullWhenBarIdIsNotFound() { var options = TestUtilities.GetOptions(nameof(ReturnNullWhenBarIdIsNotFound)); var review1 = new BarReview { Id = -1, BarId = 1, }; var review2 = new BarReview { Id = -2, BarId = 1, }; var review3 = new BarReview { Id = -3, BarId = 2, }; using (var actContext = new CocktailDB(options)) { actContext.AddAsync(review1).GetAwaiter(); actContext.AddAsync(review2).GetAwaiter(); actContext.AddAsync(review3).GetAwaiter(); actContext.SaveChangesAsync().GetAwaiter(); } using (var assertContext = new CocktailDB(options)) { var sut = new BarReviewServices(assertContext); var result = sut.GetBarReviewsCollectionAsync(int.MaxValue).GetAwaiter().GetResult(); Assert.AreEqual(0, result.Count); } }
public void ThrowWhenBarIsNull() { var options = TestUtilities.GetOptions(nameof(ThrowWhenBarIsNull)); var user = new User { Id = "asd", }; using (var assertContext = new CocktailDB(options)) { var sut = new BarReviewServices(assertContext); Assert.ThrowsExceptionAsync <ArgumentNullException>(() => sut.CreateBarReviewAsync(2, "134", null, user)); } }
public void CorrectlyAddBarReview() { var options = TestUtilities.GetOptions(nameof(CorrectlyAddBarReview)); var bar = new Bar { Id = 1, }; var user = new User { Id = "asd", }; using (var assertContext = new CocktailDB(options)) { var sut = new BarReviewServices(assertContext); var review = sut.CreateBarReviewAsync(5, "1adf", bar, user).GetAwaiter().GetResult(); var result = assertContext.BarReviews.Find(review.Id); Assert.AreEqual(review, result); } }
public void ReturnNullWhenIdNotFound() { var options = TestUtilities.GetOptions(nameof(ReturnNullWhenIdNotFound)); int resultId = -1; var review = new BarReview { Id = resultId, }; using (var actContext = new CocktailDB(options)) { actContext.AddAsync(review).GetAwaiter(); actContext.SaveChangesAsync().GetAwaiter(); } using (var assertContext = new CocktailDB(options)) { var sut = new BarReviewServices(assertContext); var result = sut.GetBarReviewAsync(int.MaxValue).GetAwaiter().GetResult(); Assert.IsNull(result); } }
public void ReturnCorrectReview() { var options = TestUtilities.GetOptions(nameof(ReturnCorrectReview)); int resultId = -1; var review = new BarReview { Id = resultId, }; using (var actContext = new CocktailDB(options)) { actContext.AddAsync(review).GetAwaiter(); actContext.SaveChangesAsync().GetAwaiter(); } using (var assertContext = new CocktailDB(options)) { var sut = new BarReviewServices(assertContext); var result = sut.GetBarReviewAsync(resultId).GetAwaiter().GetResult(); Assert.IsNotNull(result); Assert.AreEqual(resultId, result.Id); } }
public void ReturnCorrectReviews() { var options = TestUtilities.GetOptions(nameof(ReturnCorrectReviews)); int resultId = 1; var review1 = new BarReview { Id = -1, BarId = 1, }; var review2 = new BarReview { Id = -2, BarId = 1, }; var review3 = new BarReview { Id = -3, BarId = 2, }; using (var actContext = new CocktailDB(options)) { actContext.AddAsync(review1).GetAwaiter(); actContext.AddAsync(review2).GetAwaiter(); actContext.AddAsync(review3).GetAwaiter(); actContext.SaveChangesAsync().GetAwaiter(); } using (var assertContext = new CocktailDB(options)) { var sut = new BarReviewServices(assertContext); var result = sut.GetBarReviewsCollectionAsync(resultId).GetAwaiter().GetResult(); Assert.IsNotNull(result); Assert.AreEqual(2, result.Count); Assert.IsTrue(result.Select(br => br.BarId).Contains(1)); } }
public async Task AddReviewAsync() { var comment = "comment"; var rating = 5; var userName = "******"; var userpassword = "******"; var roleId = 1; var barTestName = "New Bar"; var imageUrlTest = "https://www.google.bg/"; var userServicesMock = new Mock <IUserServices>(); var barReviewFactoryMock = new Mock <IBarReviewFactory>(); var addressTest = new Address { Name = "AddressTest", City = new City { Name = "SofiaTest" }, Latitude = 1.1, Longitude = 1.1 }; var barTest = new Bar { Name = barTestName, ImagePath = imageUrlTest, Address = addressTest, }; var user = new User(userName, userpassword, roleId); userServicesMock .Setup(r => r.FindUserAsync(userName)) .ReturnsAsync(user); var options = TestUtilities.GetOptions(nameof(AddReviewAsync)); using (var arrangeContext = new CocktailMagicianDb(options)) { arrangeContext.Bars.Add(barTest); arrangeContext.Users.Add(user); await arrangeContext.SaveChangesAsync(); } using (var actContext = new CocktailMagicianDb(options)) { var barFound = await actContext.Bars.Where(b => b.Name == barTest.Name).Select(b => b.Id).FirstAsync(); var userNameFound = await actContext.Users.Where(u => u.UserName == userName).Select(u => u.UserName).FirstAsync(); var userIdFound = await actContext.Users.Where(u => u.UserName == userName).Select(u => u.Id).FirstAsync(); var barReview = new BarReview { Comment = comment, Rating = rating, UserId = userIdFound, BarId = barFound }; barReviewFactoryMock .Setup(r => r.Create(comment, rating, userIdFound, barFound)) .Returns(barReview); var sut = new BarReviewServices(barReviewFactoryMock.Object, actContext); await sut.AddReviewAsync(comment, rating, userNameFound, barFound); } using (var assertContext = new CocktailMagicianDb(options)) { var barReviewTest = await assertContext.BarReviews.Include(b => b.User).FirstAsync(u => u.User == user); var userIdFound = await assertContext.Users.Where(u => u.UserName == userName).Select(u => u.Id).FirstAsync(); Assert.AreEqual(barReviewTest.User.Id, user.Id); } }
public async Task AllReviewsAsync() { var userName = "******"; var userName2 = "user"; var userpassword = "******"; var roleId = 1; var barTestName = "New Bar"; var imageUrlTest = "https://www.google.bg/"; var userServicesMock = new Mock<IUserServices>(); var barReviewFactoryMock = new Mock<IBarReviewFactory>(); var addressTest = new Address { Name = "AddressTest", City = new City { Name = "SofiaTest" }, Latitude = 1.1, Longitude = 1.1 }; var barTest = new Bar { Name = barTestName, ImagePath = imageUrlTest, Address = addressTest, }; var user = new User(userName, userpassword, roleId); var user2 = new User(userName2, userpassword, roleId); var barReview1 = new BarReview { Bar = barTest, User = user }; var barReview2 = new BarReview { Bar = barTest, User = user2 }; userServicesMock .Setup(r => r.FindUserAsync(userName)) .ReturnsAsync(user); var options = TestUtilities.GetOptions(nameof(AllReviewsAsync)); using (var arrangeContext = new CocktailMagicianDb(options)) { arrangeContext.Bars.Add(barTest); arrangeContext.Users.Add(user); arrangeContext.Users.Add(user2); arrangeContext.BarReviews.Add(barReview1); arrangeContext.BarReviews.Add(barReview2); await arrangeContext.SaveChangesAsync(); } using (var actContext = new CocktailMagicianDb(options)) { var barFound = await actContext.Bars.Where(b => b.Name == barTest.Name).Select(b => b.Id).FirstAsync(); var sut = new BarReviewServices(barReviewFactoryMock.Object, actContext ); await sut.AllReviewsAsync(barFound); } using (var assertContext = new CocktailMagicianDb(options)) { Assert.AreEqual(2, assertContext.BarReviews.Count()); } }