public void Invoke_DeleteTweetTag_In_tweetTagService_When_Provided_Correct_Parameters_And_Tweet_Has_Tags() { //Arrange var fakeUserTweetSetvice = Mock.Of <IUserTweetService>(); var fakeUserFolloweeService = Mock.Of <IUserFolloweeService>(); var fakeUnit = new Mock <IUnitOfWork>(); var fakeFolloweeService = Mock.Of <IFolloweeService>(); var fakeTweetService = Mock.Of <ITweetService>(); var fakeTweetTagService = new Mock <ITweetTagService>(); var fakeAdminUserService = Mock.Of <IAdminUserService>(); var sut = new CascadeDeleteService(fakeUserTweetSetvice, fakeUserFolloweeService, fakeUnit.Object, fakeFolloweeService, fakeTweetService, fakeTweetTagService.Object, fakeAdminUserService); var fakeTweetTagRepo = new Mock <IGenericRepository <TweetTag> >(); var tweetTag = new TweetTag { TweetId = "123", TagId = 2 }; var tweetTags = new List <TweetTag> { tweetTag }; fakeTweetTagRepo.Setup(r => r.All).Returns(tweetTags.AsQueryable()); fakeUnit.Setup(u => u.TweetTags).Returns(fakeTweetTagRepo.Object); //Act sut.DeleteEntitiesOfTweet("123"); //Assert fakeTweetTagService.Verify(v => v.DeleteTweetTag(It.IsAny <int>(), It.IsAny <string>()), Times.Once); }
public void Invoke_Delete_In_TweetService_When_Provided_Correct_Parameters_And_No_User_Saved_Tweet() { //Arrange var fakeUserTweetSetvice = new Mock <IUserTweetService>(); var fakeUserFolloweeService = Mock.Of <IUserFolloweeService>(); var fakeUnit = new Mock <IUnitOfWork>(); var fakeFolloweeService = Mock.Of <IFolloweeService>(); var fakeTweetService = new Mock <ITweetService>(); var fakeTweetTagService = Mock.Of <ITweetTagService>(); var fakeAdminUserService = Mock.Of <IAdminUserService>(); var sut = new CascadeDeleteService(fakeUserTweetSetvice.Object, fakeUserFolloweeService, fakeUnit.Object, fakeFolloweeService, fakeTweetService.Object, fakeTweetTagService, fakeAdminUserService); var fakeTweetTagRepo = new Mock <IGenericRepository <TweetTag> >(); var tweetTags = new List <TweetTag>(); fakeTweetTagRepo.Setup(r => r.All).Returns(tweetTags.AsQueryable()); fakeUnit.Setup(u => u.TweetTags).Returns(fakeTweetTagRepo.Object); fakeUserTweetSetvice.Setup(s => s.AnyUserSavedThisTweetById(It.IsAny <string>())).Returns(false); //Act sut.DeleteUserTweetAndEntities("123", "456"); //Assert fakeTweetService.Verify(v => v.Delete(It.IsAny <string>()), Times.Once); }
public void Invoke_AnyUserSavedThisFolloweeById_In_userFolloweeService_When_Provided_Correct_Parameters() { //Arrange var fakeUserTweetSetvice = Mock.Of <IUserTweetService>(); var fakeUserFolloweeService = new Mock <IUserFolloweeService>(); var fakeUnit = new Mock <IUnitOfWork>(); var fakeFolloweeService = Mock.Of <IFolloweeService>(); var fakeTweetService = Mock.Of <ITweetService>(); var fakeTweetTagService = Mock.Of <ITweetTagService>(); var fakeAdminUserService = Mock.Of <IAdminUserService>(); var sut = new CascadeDeleteService(fakeUserTweetSetvice, fakeUserFolloweeService.Object, fakeUnit.Object, fakeFolloweeService, fakeTweetService, fakeTweetTagService, fakeAdminUserService); var fakeUserFolloweeRepo = new Mock <IGenericRepository <UserFollowee> >(); var fakeUserTweetRepo = new Mock <IGenericRepository <UserTweet> >(); var userFollowees = new List <UserFollowee>(); var userTweets = new List <UserTweet>(); fakeUserFolloweeRepo.Setup(r => r.All).Returns(userFollowees.AsQueryable()); fakeUserTweetRepo.Setup(r => r.All).Returns(userTweets.AsQueryable()); fakeUnit.Setup(u => u.UserFollowees).Returns(fakeUserFolloweeRepo.Object); fakeUnit.Setup(u => u.UserTweets).Returns(fakeUserTweetRepo.Object); fakeUserFolloweeService.Setup(s => s.AnyUserSavedThisFolloweeById(It.IsAny <string>())).Verifiable(); //Act sut.DeleteUserFolloweeAndEntries("123", "456"); //Assert fakeUserFolloweeService.Verify(v => v.AnyUserSavedThisFolloweeById(It.IsAny <string>()), Times.Once); }
public void Throw_Argument_Null_When_TweetId_Is_Null() { //Arrange var fakeUserTweetSetvice = Mock.Of <IUserTweetService>(); var fakeUserFolloweeService = Mock.Of <IUserFolloweeService>(); var fakeUnit = Mock.Of <IUnitOfWork>(); var fakeFolloweeService = Mock.Of <IFolloweeService>(); var fakeTweetService = Mock.Of <ITweetService>(); var fakeTweetTagService = Mock.Of <ITweetTagService>(); var fakeAdminUserService = Mock.Of <IAdminUserService>(); var sut = new CascadeDeleteService(fakeUserTweetSetvice, fakeUserFolloweeService, fakeUnit, fakeFolloweeService, fakeTweetService, fakeTweetTagService, fakeAdminUserService); //Act & Assert Assert.ThrowsException <ArgumentNullException>(() => sut.DeleteEntitiesOfTweet(null)); }
public void Invoke_DeleteUserTweet_In_userTweetService_When_Provided_Correct_Parameters() { //Arrange var fakeUserTweetSetvice = new Mock <IUserTweetService>(); var fakeUserFolloweeService = Mock.Of <IUserFolloweeService>(); var fakeUnit = new Mock <IUnitOfWork>(); var fakeFolloweeService = Mock.Of <IFolloweeService>(); var fakeTweetService = Mock.Of <ITweetService>(); var fakeTweetTagService = Mock.Of <ITweetTagService>(); var fakeAdminUserService = Mock.Of <IAdminUserService>(); var sut = new CascadeDeleteService(fakeUserTweetSetvice.Object, fakeUserFolloweeService, fakeUnit.Object, fakeFolloweeService, fakeTweetService, fakeTweetTagService, fakeAdminUserService); fakeUserTweetSetvice.Setup(s => s.AnyUserSavedThisTweetById(It.IsAny <string>())).Returns(true); //Act sut.DeleteUserTweetAndEntities("123", "456"); //Assert fakeUserTweetSetvice.Verify(v => v.DeleteUserTweet(It.IsAny <string>(), It.IsAny <string>()), Times.Once); }