public static EventListener CreateEventListener(ConsoleOptions options) { var eventListeners = new List <EventListener>(); if (options.HasStoryOutput) { eventListeners.Add(EventListeners.FileOutputEventListener(options.StoryOutput)); } if (options.HasStoryXmlOutput) { eventListeners.Add(EventListeners.XmlWriterEventListener(options.Xml)); } if (options.Console) { eventListeners.Add(EventListeners.ColorfulConsoleOutputEventListener()); } if (eventListeners.Count == 0) { eventListeners.Add(EventListeners.ColorfulConsoleOutputEventListener()); } if (options.Codegen) { eventListeners.Add(EventListeners.CodeGenEventListener(System.Console.Out)); } return(new MultiOutputEventListener(eventListeners.ToArray())); }
public void Scenario(TestExecution testExecution) { var featureBuilder = new StringBuilder(); featureBuilder.AppendLine(string.Format(SCENARIO_FORMAT, testExecution.Summary, testExecution.IssueKey)); string description = Regex.Replace(testExecution.IssueDescription, HTML_TAG_PATTERN, ""); description = description.Substring(0, description.IndexOf(END_OF_TEST)); featureBuilder.AppendLine(description); List <IEventListener> eventListeners = new List <IEventListener>(); eventListeners.Add(EventListeners.ColorfulConsoleOutputEventListener()); eventListeners.Add(new LoggingStoryReporter()); if (Settings.UpdateExecutionStatus) { eventListeners.Add(new ZapiStoryReporter(ZapiClient, testExecution.Id, Settings.PassExecutionStatus, Settings.FailExecutionStatus, Settings.unexecutedStatus, Settings.workInProgress)); } eventListeners.Add(new InconclusiveStoryReporter()); featureBuilder.ToString().ExecuteText(typeof(GeneralSteps).Assembly, eventListeners.ToArray()); }