/// <summary> /// Display a LogMessage in the debug output window. /// </summary> /// <param name="logMessage">Message object.</param> public override void Process(LogMessage logMessage) { if (logMessage == null) { throw new ArgumentNullException("logMessage"); } if ((logMessage.MessageType != LogMessageType.Debug) && !ShowEverything) { if (!ShowAllFailures) { return; } if (logMessage.HasDecorator(LogDecorator.TestOutcome)) { TestOutcome outcome = (TestOutcome)logMessage[LogDecorator.TestOutcome]; if (outcome == TestOutcome.Passed) { return; } } } // Skip Finishing messages, they're always duplicates if (logMessage.HasDecorator(LogDecorator.TestStage)) { if ((TestStage)logMessage[LogDecorator.TestStage] == TestStage.Finishing) { return; } } Debug.WriteLine(logMessage.ToString()); }
/// <summary> /// Process an Exception that was not the expected Exception type. /// </summary> /// <param name="l">The log message.</param> private void ProcessIncorrectException(LogMessage l) { _writer.AddPendingErrorMessage(l.ToString()); }