private void Initialize() { serviceProvider = new ServiceCollection() .AddLogging ( loggingBuilder => { loggingBuilder.ClearProviders(); loggingBuilder.Services.AddSingleton <ILoggerProvider> ( serviceProvider => new XUnitLoggerProvider(this.output) ); loggingBuilder.AddFilter <XUnitLoggerProvider>("*", LogLevel.None); loggingBuilder.AddFilter <XUnitLoggerProvider>("Contoso.Test.Flow", LogLevel.Trace); } ) .AddTransient <IFlowManager, FlowManager>() .AddTransient <FlowActivityFactory, FlowActivityFactory>() .AddTransient <DirectorFactory, DirectorFactory>() .AddTransient <ICustomActions, CustomActions>() .AddSingleton <FlowDataCache, FlowDataCache>() .AddSingleton <Progress, Progress>() .AddSingleton <IRulesCache>(sp => { return(RulesService.LoadRulesSync(new RulesLoader())); }) .BuildServiceProvider(); }