protected virtual (ILogger, IProfiler) GetLoggers(UmbracoTestOptions.Logger option) { ILogger logger; IProfiler profiler; switch (option) { case UmbracoTestOptions.Logger.Mock: logger = Mock.Of <ILogger>(); profiler = Mock.Of <IProfiler>(); break; case UmbracoTestOptions.Logger.Serilog: logger = new SerilogLogger(new FileInfo(TestHelper.MapPathForTest("~/unit-test.config"))); profiler = new LogProfiler(logger); break; case UmbracoTestOptions.Logger.Console: logger = new ConsoleLogger(); profiler = new LogProfiler(logger); break; default: throw new NotSupportedException($"Logger option {option} is not supported."); } return(logger, profiler); }
protected virtual ILoggerFactory GetLoggerFactory(UmbracoTestOptions.Logger option) { ILoggerFactory factory; switch (option) { case UmbracoTestOptions.Logger.Mock: factory = NullLoggerFactory.Instance; break; case UmbracoTestOptions.Logger.Serilog: factory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => { builder.AddSerilog(); }); break; case UmbracoTestOptions.Logger.Console: factory = Microsoft.Extensions.Logging.LoggerFactory.Create(builder => { builder.AddConsole(); }); break; default: throw new NotSupportedException($"Logger option {option} is not supported."); } return(factory); }