public void RemoveUnapprovedComments()
 {
     CreateDummyAppDataPostsDirectory();
     var remover = new CommentRemover(Directory.GetCurrentDirectory(), IgnoreLog);
     var firstPost = remover.GetAllPosts(RemoveChoices.Unapproved)[0];
     firstPost.Save();
     firstPost = remover.GetAllPosts(RemoveChoices.All)[0];
     Assert.AreEqual(firstPost.Comments.Count, 0);
 }
        public void RemoveSpamCommentsInFirstPost()
        {
            CreateDummyAppDataPostsDirectory();
            var remover = new CommentRemover(Directory.GetCurrentDirectory(), IgnoreLog);
            var firstPost = remover.GetAllPosts(RemoveWordsAndViaWebservice)[0];
            Assert.AreEqual(firstPost.Comments.Count, 1);
            foreach (var comment in firstPost.Comments)
                if (comment.ContainsSpam())
                    comment.Remove();

            firstPost.Save();
            firstPost = remover.GetAllPosts(RemoveChoices.All)[0];
            Assert.AreEqual(firstPost.Comments.Count, 0);
        }
 public void RemoveAllSpamComments()
 {
     CreateDummyAppDataPostsDirectory();
     var remover = new CommentRemover(Directory.GetCurrentDirectory(), IgnoreLog);
     var allPosts = remover.GetAllPosts(RemoveWordsAndViaWebservice);
     remover.RemoveAllSpamComments(allPosts);
 }
 public void HandleWebserviceCrashesInContainsSpam()
 {
     CreateDummyAppDataPostsDirectory();
     var remover = new CommentRemover(Directory.GetCurrentDirectory(), IgnoreLog);
     var allPosts = remover.GetAllPosts(RemoveWordsAndViaWebservice);
     remover.TryToRemoveSpamComment(allPosts, null, allPosts[0], 0);
 }
        private void StartClick(object sender, RoutedEventArgs e)
        {
            try
            {
                var remover = new CommentRemover(BasePath.Text, UpdateUI);
                var choices = GetChoices();
                var daysForRemovingUnapprovedComments = (int)Days.Value;

                if (workerThread != null)
                    workerThread.Abort();
                workerThread = new Thread(new ThreadStart(delegate
                {
                    var posts = remover.GetAllPosts(choices, daysForRemovingUnapprovedComments);
                    remover.RemoveAllSpamComments(posts);
                    workerThread = null;
                }));
                workerThread.Start();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Unable to start comment remover: " + ex.Message,
                    "BlogEngine.net Spam Comment Remover");
            }
        }