public static async Task <HttpClient> CreateTestClientWithInMemoryDb(Action <ContainerBuilder> registerDependenciesAction = null) { System.Environment.SetEnvironmentVariable("SettingsUrl", "appsettings.test.json"); var hostBuilder = new HostBuilder() .UseServiceProviderFactory(new AutofacServiceProviderFactory()); hostBuilder = registerDependenciesAction == null ? hostBuilder : hostBuilder.ConfigureContainer(registerDependenciesAction); hostBuilder = hostBuilder.ConfigureWebHost(webHost => { webHost.UseTestServer(); webHost.UseStartup <TestsStartup>(); webHost.ConfigureServices(x => { var assembly = typeof(ClientProfilesController).Assembly; x.AddControllers().PartManager.ApplicationParts.Add(new AssemblyPart(assembly)); }); }); var host = await hostBuilder.StartAsync(); var client = host.GetTestClient(); client.DefaultRequestHeaders.Add("api-key", "margintrading"); return(client); }
public static IHostBuilder CreateHostBuilder(string[] args) { var hostBuilder = new HostBuilder(); hostBuilder.ConfigureAppConfiguration((hostingContext, config) => { // configuration if (args != null) { config.AddCommandLine(args); } }); hostBuilder.UseServiceProviderFactory <IWindsorContainer>(new WindsorServiceProviderFactory()); hostBuilder.ConfigureContainer <IWindsorContainer>(builder => { builder.Install(MainInstaller.Create); builder.Register(Component.For <IHostedService>().ImplementedBy <InputListener>().LifestyleSingleton()); }); hostBuilder.ConfigureServices( (hostContext, services) => { }); return(hostBuilder); }
public void NamespaceFilterOnA() { HostBuilder .ConfigureContainer <ApplicationContext>(ctx => { ctx.ConfigureBeans((config, sp) => { config.AddFromComponentScanner( config => config.IncludeFilters.Add(ComponentScannerFilter.CreateNamepsaceFilter("UnityAddon.CoreTest.BeanRegistry.ComponentScan.NamespaceExcludeFilter.A")), GetType().Assembly, GetType().Namespace); }); }) .Build() .Services .GetRequiredService <IUnityAddonSP>() .BuildUp(this); Assert.IsType <ServiceA>(Service); }
public IHostBuilder ConfigureContainer <TContainerBuilder>(Action <HostBuilderContext, TContainerBuilder> configureDelegate) { _hostBuilder.ConfigureContainer <TContainerBuilder>(configureDelegate); return(this); }