public void logging_is_injected() { IDependencyResolver resolver = new InternalDependencyResolver(); resolver.AddDependency <IGenerateCallGraphs, TopologicalSortCallGraphGenerator>(); resolver.AddDependency <IPipelineContributor, PreExecutingContributor>(); resolver.AddDependency <IPipelineContributor, First>(); var initialiser = new ThreePhasePipelineInitializer( resolver.Resolve <IEnumerable <IPipelineContributor> >(), resolver.Resolve <IGenerateCallGraphs>()); var pipeline = initialiser .Initialize(new StartupProperties { OpenRasta = { Diagnostics = { TracePipelineExecution = true }, Pipeline = { Validate = false } } }); var factories = pipeline.MiddlewareFactories .Where((factory, i) => i % 2 == 0) .ToList(); factories.Count().ShouldBe(pipeline.MiddlewareFactories.Count() / 2); factories.ShouldAllBe(factory => factory is LoggingMiddlewareFactory); }
public void logging_is_not_injected() { IDependencyResolver resolver = new InternalDependencyResolver(); resolver.AddDependency <IGenerateCallGraphs, TopologicalSortCallGraphGenerator>(); resolver.AddDependency <IPipelineContributor, BootstrapperContributor>(); resolver.AddDependency <IPipelineContributor, First>(); var initialiser = new ThreePhasePipelineInitializer( resolver.Resolve <IEnumerable <IPipelineContributor> >(), resolver.Resolve <IGenerateCallGraphs>()); var props = new StartupProperties { OpenRasta = { Diagnostics = { TracePipelineExecution = false }, Pipeline = { Validate = false } } }; var pipeline = initialiser .Initialize(props); pipeline.MiddlewareFactories .ShouldNotContain(factory => factory is LoggingMiddlewareFactory); }