Exemple #1
0
        public void ChannelPipeline_should_invoke_HandlerRemoved_to_removed_handler()
        {
            var pipeline = new DefaultChannelPipeline(TestChannel.Instance);
            var handler  = new AllEventsChannelHandler("test",
                                                       new[] { SupportedEvent.HandlerAdded, SupportedEvent.HandlerRemoved });

            // add handler to pipeline first
            pipeline.AddFirst(handler.Name, handler);
            var head = ChannelPipelineModel.LastEventHistory(pipeline).Dequeue();

            // verify that handler added events fired correctly
            Assert.Equal(handler.Name, head.Item1);
            Assert.Equal(SupportedEvent.HandlerAdded, head.Item2);

            // remove handler from pipeline
            var removed = pipeline.RemoveFirst();

            Assert.Equal(handler, removed);

            // verify that handler removed event fired correctly
            var queue = new Queue <Tuple <string, SupportedEvent> >();

            ((NamedChannelHandler)removed).RecordLastFiredEvent(queue);
            Assert.Equal(SupportedEvent.HandlerRemoved, queue.Dequeue().Item2);
        }
Exemple #2
0
        public void ChannelPipeline_should_invoke_HandlerAdded_to_recently_added_handler()
        {
            var pipeline = new DefaultChannelPipeline(TestChannel.Instance);
            var handler  = new AllEventsChannelHandler("test", new[] { SupportedEvent.HandlerAdded });

            pipeline.AddFirst(handler.Name, handler);
            var head = ChannelPipelineModel.LastEventHistory(pipeline).Dequeue();

            Assert.Equal(handler.Name, head.Item1);
            Assert.Equal(SupportedEvent.HandlerAdded, head.Item2);
        }
Exemple #3
0
        public Property AllEventsChannelHandler_should_correctly_report_all_supported_events(SupportedEvent[] events)
        {
            var handler = new AllEventsChannelHandler("foo", events);

            return(events.All(x => handler.SupportsEvent(x)).ToProperty());
        }
Exemple #4
0
 public static Gen <NamedChannelHandler> AllHandlers()
 {
     return(Gen.OneOf(CreateHandler(), OutboundNamedChannelHandler.CreateOutboundHandler(),
                      AllEventsChannelHandler.GenAllEventsHandler()));
 }