public void CanGetAllApprovedComments() { Entry entry = SetupBlogForCommentsAndCreateEntry(); var repository = new DatabaseObjectProvider(); FeedbackItem commentOne = CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.Approved); FeedbackItem commentTwo = CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.ApprovedByModerator); FeedbackItem commentThree = CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.ConfirmedSpam); repository.ConfirmSpam(commentThree, null); FeedbackItem commentFour = CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.FalsePositive); //We expect three of the four. IPagedCollection <FeedbackItem> feedback = repository.GetPagedFeedback(0, 10, FeedbackStatusFlag. Approved, FeedbackStatusFlag.None, FeedbackType.Comment); Assert.AreEqual(3, feedback.Count, "We expected three to match."); //Expect reverse order Assert.AreEqual(commentOne.Id, feedback[2].Id, "The first does not match"); Assert.AreEqual(commentTwo.Id, feedback[1].Id, "The first does not match"); Assert.AreEqual(commentFour.Id, feedback[0].Id, "The first does not match"); }
public void ConfirmSpamRemovesApprovedBitAndSetsDeletedBit() { Entry entry = SetupBlogForCommentsAndCreateEntry(); var repository = new DatabaseObjectProvider(); FeedbackItem comment = CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.Approved); Assert.IsTrue(comment.Approved, "should be approved"); repository.ConfirmSpam(comment, null); comment = repository.Get(comment.Id); Assert.IsFalse(comment.Approved, "Should not be approved now."); Assert.IsTrue(comment.Deleted, "Should be moved to deleted folder now."); }
public void DestroyCommentByStatusDestroysOnlyThatStatus() { Entry entry = SetupBlogForCommentsAndCreateEntry(); var repository = new DatabaseObjectProvider(); CreateApprovedComments(3, entry); CreateFlaggedSpam(2, entry); CreateDeletedComments(3, entry); FeedbackItem newComment = CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.Approved); repository.ConfirmSpam(newComment, null); newComment = CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.FlaggedAsSpam); Assert.IsFalse(newComment.Approved, "should not be approved"); repository.Delete(newComment); //Move it to trash. FeedbackCounts counts = repository.GetFeedbackCounts(); Assert.AreEqual(3, counts.ApprovedCount, "Expected three approved still"); Assert.AreEqual(2, counts.FlaggedAsSpamCount, "Expected two items flagged as spam."); Assert.AreEqual(5, counts.DeletedCount, "Expected five in the trash"); repository.Destroy(FeedbackStatusFlag.FlaggedAsSpam); counts = repository.GetFeedbackCounts(); Assert.AreEqual(3, counts.ApprovedCount, "Expected three approved still"); Assert.AreEqual(0, counts.FlaggedAsSpamCount, "Expected the items flagged as spam to be gone."); Assert.AreEqual(5, counts.DeletedCount, "Destroying all flagged items should not touch the trash bin."); CreateFlaggedSpam(3, entry); counts = repository.GetFeedbackCounts(); Assert.AreEqual(3, counts.FlaggedAsSpamCount, "Expected three items flagged as spam."); repository.Destroy(FeedbackStatusFlag.Deleted); counts = repository.GetFeedbackCounts(); Assert.AreEqual(3, counts.ApprovedCount, "Expected three approved still"); Assert.AreEqual(3, counts.FlaggedAsSpamCount, "Expected three approved still"); Assert.AreEqual(0, counts.DeletedCount, "Destroying all deleted items should not touch the flagged items."); }