public void ReturnTheCountOfNotDeletedReviewsByTheGivenUserIdAndSearch(int expectedCountForUser) { // Arrange var userId = this.Fixture.Create <string>(); var allReviews = new List <BeerReview>(); var expectedSearch = Guid.NewGuid().ToString(); // Add random reviews which should not be counted for (var i = 0; i < expectedCountForUser * 2; i++) { var review = this.Fixture.Create <BeerReview>(); allReviews.Add(review); } // Add the reviews which should be counted for (var i = 0; i < expectedCountForUser; i++) { var userReview = this.Fixture.Create <BeerReview>(); userReview.ApplicationUserId = userId; userReview.IsDeleted = false; if (i % 3 == 0) { // When name contains search userReview.Beer.Name = "dsadsa" + expectedSearch + "54***dasj"; } else if (i % 3 == 1) { // When brewery name contains search userReview.Beer.Brewery.Name = "dsadsa" + expectedSearch + "54***dasj"; } else { // When place contains search userReview.Place = "dsadsa" + expectedSearch + "54***dasj"; } allReviews.Add(userReview); } // Add deleted reviews which should not be counted for (var i = 0; i < expectedCountForUser / 2; i++) { var userReview = this.Fixture.Create <BeerReview>(); userReview.ApplicationUserId = userId; userReview.IsDeleted = true; allReviews.Add(userReview); } var mockedRepository = new Mock <IEfRepository <BeerReview> >(); mockedRepository.Setup(r => r.All) .Returns(allReviews.AsQueryable); var beerReviewService = new BeerReviewService(mockedRepository.Object); // Act var actualCount = beerReviewService.CountUserReviews(userId, expectedSearch); // Assert Assert.AreEqual(expectedCountForUser, actualCount); }
public void Call_RepositoryGetByIdMethodOnceWithCorrectParams() { var id = this.Fixture.Create <string>(); var repository = new Mock <IRepository <BeerReview> >(); var reviewService = new BeerReviewService(repository.Object); reviewService.GetById(id); repository.Verify(r => r.GetById(id), Times.Once); }
public void Call_RepositorySaveChangesMethodOnceAndReturnItsValue() { var expected = new Mock <IDataModifiedResult>(); var review = new BeerReview(); var repository = new Mock <IRepository <BeerReview> >(); repository.Setup(r => r.SaveChanges()) .Returns(expected.Object); var reviewService = new BeerReviewService(repository.Object); var actual = reviewService.UpdateReview(review); repository.Verify(r => r.SaveChanges(), Times.Once); Assert.AreSame(expected.Object, actual); }
public void ReturnResultFrom_RepositoryGetByIdMethod() { var id = this.Fixture.Create <string>(); var expected = new BeerReview(); var repository = new Mock <IRepository <BeerReview> >(); repository.Setup(r => r.GetById(It.IsAny <object>())) .Returns(expected); var reviewService = new BeerReviewService(repository.Object); var actual = reviewService.GetById(id); Assert.AreSame(expected, actual); }
public void Call_RepositoryUpdateMethodOnceWithCorrectParams() { // Arrange var id = this.Fixture.Create <string>(); var review = new BeerReview(); var repository = new Mock <IEfRepository <BeerReview> >(); repository.Setup(r => r.GetById(id)) .Returns(review); var reviewService = new BeerReviewService(repository.Object); // Act reviewService.UpdateReview(review); // Assert repository.Verify(r => r.Update(review), Times.Once); }
public void SetIsDeletedPropertyToTrue() { var id = this.Fixture.Create <string>(); var review = new BeerReview { IsDeleted = false }; var repository = new Mock <IRepository <BeerReview> >(); repository.Setup(r => r.GetById(id)) .Returns(review); var reviewService = new BeerReviewService(repository.Object); reviewService.DeleteReview(id); Assert.IsTrue(review.IsDeleted); }
public void ReturnTheCountOfNotDeletedReviewsByTheGivenUserId(int expectedCountForUser) { // Arrange var userId = this.Fixture.Create <string>(); var allReviews = new List <BeerReview>(); // Add random reviews which should not be counted for (var i = 0; i < expectedCountForUser * 2; i++) { var review = this.Fixture.Create <BeerReview>(); allReviews.Add(review); } // Add the reviews which should be counted for (var i = 0; i < expectedCountForUser; i++) { var userReview = this.Fixture.Create <BeerReview>(); userReview.ApplicationUserId = userId; userReview.IsDeleted = false; allReviews.Add(userReview); } // Add deleted reviews which should not be counted for (var i = 0; i < expectedCountForUser / 2; i++) { var userReview = this.Fixture.Create <BeerReview>(); userReview.ApplicationUserId = userId; userReview.IsDeleted = true; allReviews.Add(userReview); } var mockedRepository = new Mock <IEfRepository <BeerReview> >(); mockedRepository.Setup(r => r.All) .Returns(allReviews.AsQueryable); var beerReviewService = new BeerReviewService(mockedRepository.Object); // Act var actualCount = beerReviewService.CountUserReviews(userId); // Assert Assert.AreEqual(expectedCountForUser, actualCount); }
public void Call_RepositorySaveChangesMethodOnceAndReturnItsValue() { var expected = new Mock <IDataModifiedResult>(); var id = this.Fixture.Create <string>(); var review = new BeerReview { IsDeleted = false }; var repository = new Mock <IRepository <BeerReview> >(); repository.Setup(r => r.GetById(id)) .Returns(review); repository.Setup(r => r.SaveChanges()) .Returns(expected.Object); var reviewService = new BeerReviewService(repository.Object); var result = reviewService.DeleteReview(id); Assert.AreSame(expected.Object, result); repository.Verify(r => r.SaveChanges(), Times.Once); }