Beispiel #1
0
        private void addLiveFeedback(LiveTestStatusMessage liveStatus)
        {
            if (!_running)
            {
                return;
            }
            SuspendLayout();
            setRunInProgressFeedback(string.Format("testing {0} ({1} tests completed)", Path.GetFileNameWithoutExtension(liveStatus.CurrentAssembly), liveStatus.TestsCompleted));

            foreach (var test in liveStatus.FailedButNowPassingTests)
            {
                var testItem = new TestItem(test.Assembly, "", test.Test);
                foreach (ListViewItem item in runFeedbackList.Items)
                {
                    if (!item.Tag.GetType().Equals(typeof(TestItem)))
                    {
                        continue;
                    }
                    var itm = (TestItem)item.Tag;
                    if (itm.IsTheSameTestAs(testItem))
                    {
                        item.Remove();
                        break;
                    }
                }
            }

            IItem selected = null;

            if (runFeedbackList.SelectedItems.Count == 1)
            {
                selected = (IItem)runFeedbackList.SelectedItems[0].Tag;
            }
            foreach (var test in liveStatus.FailedTests)
            {
                var          testItem = new TestItem(test.Assembly, "", test.Test);
                ListViewItem toRemove = null;
                foreach (ListViewItem item in runFeedbackList.Items)
                {
                    if (!item.Tag.GetType().Equals(typeof(TestItem)))
                    {
                        continue;
                    }
                    var itm = (TestItem)item.Tag;
                    if (itm.IsTheSameTestAs(testItem))
                    {
                        toRemove = item;
                        break;
                    }
                }
                int index = toRemove == null ? -1 : toRemove.Index;
                addFeedbackItem("Test failed", formatTestResult(testItem), Color.Red, testItem, selected, index);
                if (toRemove != null)
                {
                    toRemove.Remove();
                }
            }
            ResumeLayout();
        }
Beispiel #2
0
        public void Should_subscribe_to_live_test_feedback_messages()
        {
            var message = new LiveTestStatusMessage("", 0, 0, new LiveTestStatus[] { }, new LiveTestStatus[] { });

            _bus.Publish(message);
            waitForAsyncCall(() => { return(_view.LiveTestStatusMessage != null); });
            _view.LiveTestStatusMessage.ShouldBeTheSameAs(message);
        }
Beispiel #3
0
        public void Should_serialize_live_status_message()
        {
            var message = new LiveTestStatusMessage("assembly1", 10, 5, new LiveTestStatus[] { new LiveTestStatus("", new TestResult(TestRunner.Any, TestRunStatus.Failed, "")) }, new LiveTestStatus[] { new LiveTestStatus("", new TestResult(TestRunner.Any, TestRunStatus.Failed, "")) });
            var output  = serializeDeserialize <LiveTestStatusMessage>(message);

            output.CurrentAssembly.ShouldEqual("assembly1");
            output.TotalNumberOfTests.ShouldEqual(10);
            output.TestsCompleted.ShouldEqual(5);
            output.FailedTests.Length.ShouldEqual(1);
            output.FailedButNowPassingTests.Length.ShouldEqual(1);
        }
Beispiel #4
0
 private void handle(LiveTestStatusMessage liveTestStatusMessage)
 {
     _syncContext.Post(x =>
     {
         lock (_messagLock)
         {
             Handle((LiveTestStatusMessage)x);
             label1.Refresh();
         }
     }, liveTestStatusMessage);
 }
Beispiel #5
0
        private new void Handle(LiveTestStatusMessage liveStatus)
        {
            if (!_isRunning)
            {
                return;
            }

            _storeSelected();

            var ofCount  = liveStatus.TotalNumberOfTests > 0 ? string.Format(" of {0}", liveStatus.TotalNumberOfTests) : "";
            var testName = liveStatus.CurrentTest;

            if (testName.Trim().Length > 0)
            {
                testName += " in ";
            }
            printMessage(new RunMessages(RunMessageType.Normal, string.Format("testing {3}{0} ({1}{2} tests completed)", Path.GetFileNameWithoutExtension(liveStatus.CurrentAssembly), liveStatus.TestsCompleted, ofCount, testName)));

            if (_showFailing)
            {
                foreach (var test in liveStatus.FailedButNowPassingTests)
                {
                    var testItem = new CacheTestMessage(test.Assembly, test.Test);
                    _removeTest((t) => isTheSameTestAs(testItem, t));
                }

                foreach (var test in liveStatus.FailedTests)
                {
                    var testItem = new CacheTestMessage(test.Assembly, test.Test);
                    _removeTest((t) => isTheSameTestAs(testItem, t));
                    addFeedbackItem("Test failed", formatTestResult(testItem), Color.Red, testItem);
                }
            }

            _restoreSelected(isSame);
        }
 public void RecievingLiveTestStatusMessage(LiveTestStatusMessage message)
 {
 }
Beispiel #7
0
 public void RecievingLiveTestStatusMessage(LiveTestStatusMessage message)
 {
     Debug.WriteDetail("Handling live test status");
     trySend(message);
 }
Beispiel #8
0
        private new void Handle(LiveTestStatusMessage liveStatus)
        {
            if (!_isRunning)
            {
                return;
            }

            listViewFeedback.SuspendLayout();
            var ofCount  = liveStatus.TotalNumberOfTests > 0 ? string.Format(" of {0}", liveStatus.TotalNumberOfTests) : "";
            var testName = liveStatus.CurrentTest;

            if (testName.Trim().Length > 0)
            {
                testName += " in ";
            }
            printMessage(new RunMessages(RunMessageType.Normal, string.Format("testing {3}{0} ({1}{2} tests completed)", Path.GetFileNameWithoutExtension(liveStatus.CurrentAssembly), liveStatus.TestsCompleted, ofCount, testName)));

            if (_showFailing)
            {
                foreach (var test in liveStatus.FailedButNowPassingTests)
                {
                    var testItem = new CacheTestMessage(test.Assembly, test.Test);
                    foreach (ListViewItem item in listViewFeedback.Items)
                    {
                        if (item.Tag.GetType() != typeof(CacheTestMessage))
                        {
                            continue;
                        }
                        var itm = (CacheTestMessage)item.Tag;
                        if (isTheSameTestAs(itm, testItem))
                        {
                            item.Remove();
                            break;
                        }
                    }
                }

                object selected = null;
                if (listViewFeedback.SelectedItems.Count == 1)
                {
                    selected = listViewFeedback.SelectedItems[0].Tag;
                }
                foreach (var test in liveStatus.FailedTests)
                {
                    var          testItem = new CacheTestMessage(test.Assembly, test.Test);
                    ListViewItem toRemove = null;
                    foreach (ListViewItem item in listViewFeedback.Items)
                    {
                        if (item.Tag.GetType() != typeof(CacheTestMessage))
                        {
                            continue;
                        }
                        var itm = (CacheTestMessage)item.Tag;
                        if (isTheSameTestAs(itm, testItem))
                        {
                            toRemove = item;
                            break;
                        }
                    }
                    int index = toRemove == null ? 0 : toRemove.Index;
                    if (toRemove != null)
                    {
                        toRemove.Remove();
                    }
                    addFeedbackItem("Test failed", formatTestResult(testItem), Color.Red, testItem, selected, index);
                }
            }
            listViewFeedback.ResumeLayout();
        }
 public LiveTestFeedbackArgs(LiveTestStatusMessage message)
 {
     Message = message;
 }
Beispiel #10
0
 private void handle(LiveTestStatusMessage liveTestStatusMessage)
 {
     Handle(liveTestStatusMessage);
 }
Beispiel #11
0
 public void RecievingLiveTestStatusMessage(LiveTestStatusMessage message)
 {
     _syncContext.Post(m => addLiveFeedback((LiveTestStatusMessage)m), message);
 }