private void Initialize(string fileName, ITestOutputHelper output, params LogType[] loggers) { if (string.IsNullOrWhiteSpace(fileName) && output != null) { // ReSharper disable once PossibleNullReferenceException fileName = (output.GetType().GetField("test", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(output) as ITest)?.DisplayName; } foreach (var logType in loggers) { switch (logType) { case LogType.Text: { TextLog = new TextLog(fileName); break; } case LogType.XunitConsole: { XunitConsoleLog = new XunitConsoleLog(output); break; } } } }
/// <summary> /// Add an error message to the log. /// </summary> /// <param name="message">Error message to log.</param> public void Error(string message) { TextLog?.Error(message); XunitConsoleLog?.Error(message); }
/// <summary> /// Dispose of loggers. /// </summary> public void Dispose() { TextLog?.Dispose(); XunitConsoleLog?.Dispose(); }
/// <summary> /// Add an info message to the log. /// </summary> /// <param name="message">Info message to log.</param> public void Message(string message) { TextLog?.Message(message); XunitConsoleLog?.Message(message); }