public void EventBusFactory_UpdatePipeline() { var factory = new EventBusFactory(); factory.Register("test", () => { var pipeline = new EventPipeline(); pipeline.AddHandler(new ConsoleOutputHandler()); return(pipeline); }); var first = factory.GetEventBus("test"); var second = factory.GetEventBus("test"); Assert.AreSame(first, second); factory.Register("test", () => { var pipeline = new EventPipeline(); pipeline.AddHandler(new ConsoleOutputHandler()); return(pipeline); }); var third = factory.GetEventBus("test"); Assert.AreNotSame(first, third); }
public void ProcessingServer_PipelineOptions() { var factory = new EventBusFactory(); var server = new ProcessingServer(factory); var config = new PipelineConfiguration { Id = "test", InputHandler = new HandlerNode { Type = typeof(LogInputHandler) }, OutputHandlers = new List <HandlerNode> { new HandlerNode { Type = typeof(ConsoleOutputHandler) } }, Options = new PipelineOptions { MinProcessors = 1, MaxItemsInQueue = 100, MaxProcessors = 1 } }; server.SetupPipeline("test", config); var bus = factory.GetEventBus("test"); Assert.AreSame(bus.PipelineFactory.Options, config.Options); }
public void ProcessingServer_UpdatePipeline() { var factory = new EventBusFactory(); var server = new ProcessingServer(factory); var config = new PipelineConfiguration { Id = "test", InputHandler = new HandlerNode { Type = typeof(LogInputHandler) }, OutputHandlers = new List <HandlerNode> { new HandlerNode { Type = typeof(ConsoleOutputHandler) } } }; server.SetupPipeline("test", config); var first = factory.GetEventBus("test"); var second = factory.GetEventBus("test"); Assert.AreSame(first, second); // update server.SetupPipeline("test", config); var third = factory.GetEventBus("test"); Assert.AreNotSame(first, third); }