public void Setup() { // setup middlewares TestMiddlewareOne = new TestMiddlewareOne(); TestMiddlewareTwo = new TestMiddlewareTwo(); TestMiddlewareThree = new TestMiddlewareThree(); // setup IOC Provider var ioCProvider = new Mock <IMiddlewareProvider <TestPipelineContext> >(); ioCProvider.Setup(x => x.Middlewares).Returns(new IMiddleware <TestPipelineContext>[] { TestMiddlewareOne, TestMiddlewareTwo, TestMiddlewareThree }); IoCProvider = ioCProvider.Object; }
public void ExecutionMetaDataIsPopulated() { // Arrange var pipeLineType = 100; var pipeline = new PipelineFactory.BuildPipeline <TestMiddlewareBase, TestPipelineContext>(IoCProvider) .Build(pipeLineType); var context = new TestPipelineContext(); var expected = new TestMiddlewareOne(); // Act pipeline.Execute(context); var executionReport = context.MetaData.ExecutionReports.First(); // Assert Assert.AreEqual(executionReport.ExecutionOrder, expected.ExecutionOrder, "ExecutionOrder"); Assert.AreEqual(executionReport.TargetPipelineType, expected.TargetPipelineType, "TargetPipelineType"); Assert.AreEqual(executionReport.ExceptionThrown, null, "ExceptionThrown"); Assert.True(executionReport.DurationInMs >= 100, "DurationInMs"); }