public static IWebHostBuilder UseStartup(this IWebHostBuilder hostBuilder,
                                                 IPact pact,
                                                 IEnumerable <Claim> claims = null,
                                                 Action <IServiceCollection> configureServices = null,
                                                 Action <IApplicationBuilder> configure        = null,
                                                 Type startupType = null)
        {
            if (pact == null)
            {
                throw new ArgumentNullException(nameof(pact));
            }
            if (pact.Configuration != null)
            {
                hostBuilder.ConfigureLogging(factory =>
                {
                    var log = new LogWrapper(pact.Configuration);
                    factory.AddProvider(log);
                });
            }
            var startup = new Startup(startupType)
            {
                ConfigureCallback         = configure,
                ConfigureServicesCallback = configureServices
            };

            foreach (var claim in claims ?? Enumerable.Empty <Claim>())
            {
                startup.AddClaim(claim);
            }
            hostBuilder.ConfigureServices(sc => startup.ConfigureServices(sc));
            hostBuilder.Configure(startup.Configure);
            return(hostBuilder);
        }
 public static IWebHostBuilder UseStartup <T>(this IWebHostBuilder hostBuilder,
                                              IPact pact, Action <WebHostBuilderContext, IConfigurationBuilder> configureAppConfig,
                                              IEnumerable <Claim> claims = null,
                                              Action <IServiceCollection> configureServices = null,
                                              Action <IApplicationBuilder> configure        = null) where T : class
 {
     return(UseStartup(hostBuilder, pact, configureAppConfig, claims, configureServices, configure, typeof(T)));
 }
 public static IWebHostBuilder UseStartup <T>(this IWebHostBuilder hostBuilder,
                                              IPact pact,
                                              IProviderStateSetup providerStateSetup) where T : class
 {
     return(UseStartup <T>(
                hostBuilder,
                pact,
                providerStateSetup.GetClaims(pact.ProviderState),
                providerStateSetup.ConfigureServices(pact.ProviderState),
                null));
 }
Esempio n. 4
0
 public PactResultEventArgs(IPact pact, ITestResult result)
 {
     this.Result = result;
     this.Pact   = pact;
 }