public void CanInsertAndDeleteImage() { var repository = new DatabaseObjectProvider(); int imageId = 0; Image image = CreateImageInstance(); image.IsActive = true; Image loadedImage = null; try { imageId = repository.Insert(image, singlePixelBytes); loadedImage = repository.GetImage(imageId, false /* activeOnly */); Assert.IsNotNull(loadedImage); Assert.AreEqual(image.CategoryID, loadedImage.CategoryID); } finally { if (loadedImage != null) { repository.Delete(loadedImage); } Assert.IsNull(repository.GetImage(imageId, false /* activeOnly */)); } }
public void OnlyApprovedItemsContributeToEntryFeedbackCount() { Entry entry = SetupBlogForCommentsAndCreateEntry(); var repository = new DatabaseObjectProvider(); int entryId = entry.Id; CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.Approved); entry = UnitTestHelper.GetEntry(entryId, PostConfig.None, false); Assert.AreEqual(1, entry.FeedBackCount, "Expected one approved feedback entry."); FeedbackItem comment = CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.FlaggedAsSpam); entry = UnitTestHelper.GetEntry(entryId, PostConfig.None, false); Assert.AreEqual(1, entry.FeedBackCount, "Expected one approved feedback entry."); comment.Approved = true; repository.Update(comment); entry = UnitTestHelper.GetEntry(entryId, PostConfig.None, false); Assert.AreEqual(2, entry.FeedBackCount, "After approving the second comment, expected two approved feedback entry."); comment.Approved = false; repository.Update(comment); entry = UnitTestHelper.GetEntry(entryId, PostConfig.None, false); Assert.AreEqual(1, entry.FeedBackCount, "After un-approving the second comment, expected one approved feedback entry."); repository.Delete(comment); entry = UnitTestHelper.GetEntry(entryId, PostConfig.None, false); Assert.AreEqual(1, entry.FeedBackCount, "After un-approving the second comment, expected one approved feedback entry."); }
public void DeleteCommentSetsDeletedBit() { Entry entry = SetupBlogForCommentsAndCreateEntry(); var repository = new DatabaseObjectProvider(); FeedbackItem comment = CreateAndUpdateFeedbackWithExactStatus(entry, FeedbackType.Comment, FeedbackStatusFlag.Approved); Assert.IsTrue(comment.Approved, "should be approved"); repository.Delete(comment); 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."); }
public void DeleteImageThrowsArgumentNullException() { var repository = new DatabaseObjectProvider(); UnitTestHelper.AssertThrowsArgumentNullException(() => repository.Delete((Image)null)); }