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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 4
0
 public IHostBuilder ConfigureContainer <TContainerBuilder>(Action <HostBuilderContext, TContainerBuilder> configureDelegate)
 {
     _hostBuilder.ConfigureContainer <TContainerBuilder>(configureDelegate);
     return(this);
 }