public void CanConfigureHostOptionsWithContenxtAndOptionsOverload( BackgroundServiceExceptionBehavior testBehavior, TimeSpan testShutdown) { using var host = new HostBuilder() .ConfigureDefaults(Array.Empty <string>()) .ConfigureHostOptions( (context, options) => { context.HostingEnvironment.ApplicationName = "TestApp"; context.HostingEnvironment.EnvironmentName = Environments.Staging; options.BackgroundServiceExceptionBehavior = testBehavior; options.ShutdownTimeout = testShutdown; }) .Build(); var options = host.Services.GetRequiredService <IOptions <HostOptions> >(); Assert.NotNull(options.Value); var hostOptions = options.Value; Assert.Equal(testBehavior, hostOptions.BackgroundServiceExceptionBehavior); Assert.Equal(testShutdown, hostOptions.ShutdownTimeout); var env = host.Services.GetRequiredService <IHostEnvironment>(); Assert.Equal("TestApp", env.ApplicationName); Assert.Equal(Environments.Staging, env.EnvironmentName); }
public void HostBuilderCanConfigureBackgroundServiceExceptionBehavior( BackgroundServiceExceptionBehavior testBehavior) { using IHost host = new HostBuilder() .ConfigureServices( services => services.Configure <HostOptions>( options => options.BackgroundServiceExceptionBehavior = testBehavior)) .Build(); var options = host.Services.GetRequiredService <IOptions <HostOptions> >(); Assert.Equal( testBehavior, options.Value.BackgroundServiceExceptionBehavior); }
public void CanConfigureHostOptionsWithOptionsOverload( BackgroundServiceExceptionBehavior testBehavior, TimeSpan testShutdown) { using var host = new HostBuilder() .ConfigureDefaults(Array.Empty <string>()) .ConfigureHostOptions( options => { options.BackgroundServiceExceptionBehavior = testBehavior; options.ShutdownTimeout = testShutdown; }) .Build(); var options = host.Services.GetRequiredService <IOptions <HostOptions> >(); Assert.NotNull(options.Value); var hostOptions = options.Value; Assert.Equal(testBehavior, hostOptions.BackgroundServiceExceptionBehavior); Assert.Equal(testShutdown, hostOptions.ShutdownTimeout); }