public void AddHandlerBeforeTest() { var handlerD = new TestHandlerD(); var pipeline = new RuntimePipeline(handlerD); var handlerB = new TestHandlerB(); // B->D pipeline.AddHandler(handlerB); var handlerA = new TestHandlerA(); // A->B->D pipeline.AddHandlerBefore<TestHandlerB>(handlerA); ValidatePipeline(pipeline, handlerA, handlerB, handlerD); var handlerC = new TestHandlerC(); // A->B->C->D pipeline.AddHandlerBefore<TestHandlerD>(handlerC); ValidatePipeline(pipeline, handlerA, handlerB, handlerC, handlerD); }
public void ReplaceHandlerTest() { var handlerC = new TestHandlerC(); var pipeline = new RuntimePipeline(handlerC); var handlerB = new TestHandlerB(); pipeline.AddHandler(handlerB); var handlerA = new TestHandlerA(); //A->B->C pipeline.AddHandler(handlerA); ValidatePipeline(pipeline, handlerA, handlerB, handlerC); var handlerD = new TestHandlerD(); //A->D->C pipeline.ReplaceHandler<TestHandlerB>(handlerD); ValidatePipeline(pipeline, handlerA, handlerD, handlerC); Assert.IsNull(handlerB.OuterHandler); Assert.IsNull(handlerB.InnerHandler); }
public void AddHandlerBeforeTest() { var handlerD = new TestHandlerD(); var pipeline = new RuntimePipeline(handlerD); var handlerB = new TestHandlerB(); // B->D pipeline.AddHandler(handlerB); var handlerA = new TestHandlerA(); // A->B->D pipeline.AddHandlerBefore <TestHandlerB>(handlerA); ValidatePipeline(pipeline, handlerA, handlerB, handlerD); var handlerC = new TestHandlerC(); // A->B->C->D pipeline.AddHandlerBefore <TestHandlerD>(handlerC); ValidatePipeline(pipeline, handlerA, handlerB, handlerC, handlerD); }
public void ReplaceHandlerTest() { var handlerC = new TestHandlerC(); var pipeline = new RuntimePipeline(handlerC); var handlerB = new TestHandlerB(); pipeline.AddHandler(handlerB); var handlerA = new TestHandlerA(); //A->B->C pipeline.AddHandler(handlerA); ValidatePipeline(pipeline, handlerA, handlerB, handlerC); var handlerD = new TestHandlerD(); //A->D->C pipeline.ReplaceHandler <TestHandlerB>(handlerD); ValidatePipeline(pipeline, handlerA, handlerD, handlerC); Assert.IsNull(handlerB.OuterHandler); Assert.IsNull(handlerB.InnerHandler); }