public void normal_method_resolves_ignored_when_present()
 {
     var msg = new CacheMessages();
     msg.AddIgnored(new CacheTestMessage("foo.dll", new TestResult(TestRunner.NUnit, TestRunStatus.Ignored, "Foo.Bar.Baz", "ignore message")));
     CurrentTestStatuses.UpdateWith(msg);
     var status = CurrentTestStatuses.GetStatusOf("System.Void Foo.Bar::Baz()");
     Assert.IsNotNull(status);
     Assert.AreEqual("ignore message", status.text);
     Assert.AreEqual(TestStatus.Ignored, status.status);
     Assert.AreEqual("Foo.Bar.Baz", status.Name);
     CurrentTestStatuses.Clear();
 }
 public void simpletesting_resolves_failing_when_present()
 {
     var msg = new CacheMessages();
     msg.AddFailed(new CacheTestMessage("foo.dll", new TestResult(TestRunner.SimpleTesting, TestRunStatus.Failed, "Foo.Bar.Baz", "fail message")));
     CurrentTestStatuses.UpdateWith(msg);
     var status = CurrentTestStatuses.GetStatusOf("Simple.Testing.ClientFramework.Specification Foo.Bar::Baz()");
     Assert.IsNotNull(status);
     Assert.AreEqual("fail message", status.text);
     Assert.AreEqual(TestStatus.Fail, status.status);
     Assert.AreEqual("Foo.Bar.Baz", status.Name);
     CurrentTestStatuses.Clear();
 }
 public void mspec_resolves_failing_when_present()
 {
     var msg = new CacheMessages();
     msg.AddFailed(new CacheTestMessage("foo.dll", new TestResult(TestRunner.MSpec, TestRunStatus.Failed, "Foo.Bar.Baz", "fail message")));
     CurrentTestStatuses.UpdateWith(msg);
     var status = CurrentTestStatuses.GetStatusOf("Machine.Specifications.It Foo.Bar.Baz::LOLS");
     Assert.IsNotNull(status);
     Assert.AreEqual("fail message", status.text);
     Assert.AreEqual(TestStatus.Fail, status.status);
     Assert.AreEqual("Foo.Bar.Baz", status.Name);
     CurrentTestStatuses.Clear();
 }
 public void method_with_parens_resolves_to_on_without()
 {
     var msg = new CacheMessages();
     msg.AddFailed(new CacheTestMessage("foo.dll", new TestResult(TestRunner.NUnit, TestRunStatus.Failed, "Foo.Bar.Baz(1,2,3)", "fail message")));
     CurrentTestStatuses.UpdateWith(msg);
     var status = CurrentTestStatuses.GetStatusOf("System.Void Foo.Bar::Baz(int, int, int)");
     Assert.IsNotNull(status);
     Assert.AreEqual("fail message", status.text);
     Assert.AreEqual(TestStatus.Fail, status.status);
     Assert.AreEqual("Foo.Bar.Baz(1,2,3)", status.Name);
     CurrentTestStatuses.Clear();
 }
 public static void UpdateWith(CacheMessages message)
 {
     foreach (var item in message.TestsToRemove)
     {
         var str = ConvertFromRunner(item);
         Logger.Write("removing test. " + str);
         _status.Remove(str);
         EntryCache.InvalidateNoUpdate(str);
     }
     foreach(var item in message.FailedToAdd)
     {
         var str = ConvertFromRunner(item);
         Logger.Write("Adding failed test. " + str);
         _status[str] = new TestStatusNode {Name=item.Test.Name, status = TestStatus.Fail, text = item.Test.Message};
         EntryCache.InvalidateNoUpdate(str);
     }
     foreach(var item in message.IgnoredToAdd)
     {
         var str = ConvertFromRunner(item);
         Logger.Write("Adding ignored test. " + str);
         _status[str] = new TestStatusNode { Name=item.Test.Name, status = TestStatus.Ignored, text = item.Test.Message };
         EntryCache.InvalidateNoUpdate(str);
     }
 }
 private void removeItems(CacheMessages cache)
 {
     var toRemove = new List<ListViewItem>();
     foreach (ListViewItem listItem in listViewFeedback.Items)
     {
         if (listItem.Tag.GetType() == typeof(CacheBuildMessage))
         {
             var item = (CacheBuildMessage)listItem.Tag;
             if (cache.ErrorsToRemove.Count(x => x.Equals(item)) > 0 || cache.WarningsToRemove.Count(x => x.Equals(item)) > 0)
                 toRemove.Add(listItem);
         }
         if (listItem.Tag.GetType() == typeof(CacheTestMessage))
         {
             var item = (CacheTestMessage)listItem.Tag;
             if (existsIn(cache.TestsToRemove, item))
                 toRemove.Add(listItem);
         }
     }
     toRemove.ForEach(x => listViewFeedback.Items.Remove(x));
 }
        private new void Handle(CacheMessages cache)
        {
            object selected = null;
            if (listViewFeedback.SelectedItems.Count == 1)
                selected = listViewFeedback.SelectedItems[0].Tag;

            listViewFeedback.SuspendLayout();
            removeItems(cache);
            if (_showErrors)
            {
                foreach (var error in cache.ErrorsToAdd)
                    addFeedbackItem("Build error", formatBuildResult(error), Color.Red, error, selected, 0);
            }

            if (_showFailing)
            {
                var position = getFirstItemPosition(new[] { "Test failed", "Build warning", "Test ignored" });
                foreach (var failed in cache.FailedToAdd)
                    addFeedbackItem("Test failed", formatTestResult(failed), Color.Red, failed, selected, position);
            }

            if (_showWarnings)
            {
                var position = getFirstItemPosition(new[] { "Build warning", "Test ignored" });
                foreach (var warning in cache.WarningsToAdd)
                    addFeedbackItem("Build warning", formatBuildResult(warning), Color.Black, warning, selected, position);
            }

            if (_showIgnored)
            {
                var position = getFirstItemPosition(new[] { "Test ignored" });
                foreach (var ignored in cache.IgnoredToAdd)
                    addFeedbackItem("Test ignored", formatTestResult(ignored), Color.Black, ignored, selected, position);
            }
            listViewFeedback.ResumeLayout();
        }
 private void handle(CacheMessages cacheMessages)
 {
     _syncContext.Post(x =>
     {
         lock (_messagLock)
         {
             Handle((CacheMessages)x);
             label1.Refresh();
         }
     }, cacheMessages);
 }
        private void removeItems(CacheMessages cache)
        {
            foreach (var item in cache.ErrorsToRemove)
                removeBuildItem((itm) => itm.Equals(item));
            foreach (var item in cache.WarningsToRemove)
                removeBuildItem((itm) => itm.Equals(item));

            foreach (var item in cache.TestsToRemove)
                removeTestItem((t) => {
                        return
                            t.Assembly.Equals(item.Assembly) &&
                            t.Test.Runner.Equals(item.Test.Runner) &&
                            t.Test.Name.Equals(item.Test.Name);
                    });
        }
 public void normal_method_resolves_ignored_past_after_being_ignored()
 {
     var msg = new CacheMessages();
     msg.AddIgnored(new CacheTestMessage("foo.dll", new TestResult(TestRunner.NUnit, TestRunStatus.Ignored, "Foo.Bar.Baz", "ignore message")));
     CurrentTestStatuses.UpdateWith(msg);
     msg = new CacheMessages();
     msg.RemoveTest(new CacheTestMessage("foo.dll", new TestResult(TestRunner.NUnit, TestRunStatus.Ignored, "Foo.Bar.Baz")));
     CurrentTestStatuses.UpdateWith(msg);
     var status = CurrentTestStatuses.GetStatusOf("System.Void Foo.Bar::Baz()");
     Assert.AreEqual(TestStatus.Pass, status.status);
     Assert.AreEqual("", status.text);
 }
        private new void Handle(CacheMessages cache)
        {
            _storeSelected();
            
            removeItems(cache);
            if (_showErrors)
            {
                foreach (var error in cache.ErrorsToAdd)
                    addFeedbackItem("Build error", formatBuildResult(error), Color.Red, error);
            }

            if (_showFailing)
            {
                foreach (var failed in cache.FailedToAdd)
                    addFeedbackItem("Test failed", formatTestResult(failed), Color.Red, failed);
            }

            if (_showWarnings)
            {
                foreach (var warning in cache.WarningsToAdd)
                    addFeedbackItem("Build warning", formatBuildResult(warning), Color.Black, warning);
            }

            if (_showIgnored)
            {
                foreach (var ignored in cache.IgnoredToAdd)
                    addFeedbackItem("Test ignored", formatTestResult(ignored), Color.Black, ignored);
            }
            
            _restoreSelected(isSame);
        }
 private void handle(CacheMessages cacheMessages)
 {
     Handle(cacheMessages);
 }