public async Task InitializeAsync() { if (Docker.Default == null) { return; } FirstServer = await StartServer(); SecondServer = await StartServer(); }
private async Task <InProcessTestServer <TStartup> > StartServer() { try { return(await InProcessTestServer <TStartup> .StartServer(_loggerFactory)); } catch (Exception ex) { _logger.LogError(ex, "Server failed to start."); throw; } }
public ServerLogScope(InProcessTestServer serverFixture, ILoggerFactory loggerFactory, IDisposable wrappedDisposable) { _loggerFactory = loggerFactory; _serverFixture = serverFixture; _wrappedDisposable = wrappedDisposable; _lock = new object(); _serverLoggers = new ConcurrentDictionary <string, ILogger>(StringComparer.Ordinal); _scopeLogger = _loggerFactory.CreateLogger(nameof(ServerLogScope)); // Attach last after everything else is initialized because a logged error can happen at any time _serverFixture.ServerLogged += ServerFixtureOnServerLogged; _scopeLogger.LogInformation("Server log scope started."); }
public RedisServerFixture() { // Docker is not available on the machine, tests using this fixture // should be using SkipIfDockerNotPresentAttribute and will be skipped. if (Docker.Default == null) { return; } var testLog = AssemblyTestLog.ForAssembly(typeof(RedisServerFixture <TStartup>).Assembly); _logToken = testLog.StartTestLog(null, $"{nameof(RedisServerFixture<TStartup>)}_{typeof(TStartup).Name}", out _loggerFactory, LogLevel.Trace, "RedisServerFixture"); _logger = _loggerFactory.CreateLogger <RedisServerFixture <TStartup> >(); Docker.Default.Start(_logger); FirstServer = StartServer(); SecondServer = StartServer(); }
public Task <InProcessTestServer <T> > StartServer <T>(Func <WriteContext, bool> expectedErrorsFilter = null) where T : class { var disposable = base.StartVerifiableLog(ResolveExpectedErrorsFilter(expectedErrorsFilter)); return(InProcessTestServer <T> .StartServer(LoggerFactory, disposable)); }
public async Task InitializeAsync() { FirstServer = await StartServer(); SecondServer = await StartServer(); }