public void ChannelPipeline_should_add_item_to_head() { var pipeline = new DefaultChannelPipeline(TestChannel.Instance); var namedChannel = new NamedChannelHandler("TEST"); pipeline.AddFirst(namedChannel.Name, namedChannel); var count = pipeline.Count(); Assert.Equal(3, count); // 1 for head, 1 for named channel, 1 for tail }
public void PipelineModel_should_no_longer_detect_named_nodes_removed_from_tail() { var namedChannel = new NamedChannelHandler("TEST"); var node = new PipelineModelNode { Handler = namedChannel, Name = namedChannel.Name }; var pipelineModel = PipelineMutationModel.Fresh(); pipelineModel = AddToTail(pipelineModel, node); Assert.True(pipelineModel.Contains(node.Name)); pipelineModel = RemoveTail(pipelineModel); Assert.False(pipelineModel.Contains(namedChannel.Name)); }
protected Property CheckEventInQueue(NamedChannelHandler mFirst, SupportedEvent e, Property prop, Queue <Tuple <string, SupportedEvent> > eventQueue) { if (mFirst.SupportsEvent(e)) { var outcome = eventQueue.SequenceEqual(new[] { new Tuple <string, SupportedEvent>(mFirst.Name, e) }); prop = prop.And(() => outcome) .Label( $"[{GetType()}] {mFirst} {(mFirst.SupportsEvent(e) ? "does" : "does not")} support {e}, but found that queue contained {string.Join(",", eventQueue)}"); } return(prop); }
public void PipelineModel_should_detect_named_nodes_added_to_tail() { var namedChannel = new NamedChannelHandler("TEST"); var namedChannel2 = new NamedChannelHandler("TEST2"); var node = new PipelineModelNode { Handler = namedChannel, Name = namedChannel.Name }; var pipelineModel = PipelineMutationModel.Fresh(); pipelineModel = AddToTail(pipelineModel, node); Assert.True(pipelineModel.Contains(node.Name)); var node2 = new PipelineModelNode { Handler = namedChannel2, Name = namedChannel2.Name }; pipelineModel = AddToTail(pipelineModel, node2); Assert.True(pipelineModel.Contains(node.Name)); Assert.True(pipelineModel.Contains(node2.Name)); }
public Property DefaultNamedChannelHandler_should_not_support_any_events(SupportedEvent[] events) { var handler = new NamedChannelHandler("foo"); return(events.All(x => !handler.SupportsEvent(x)).ToProperty()); }
public static Gen <Operation <IChannelPipeline, PipelineMutationModel> > AddLastGen() { return (NamedChannelHandler.AllHandlers() .Select(x => (Operation <IChannelPipeline, PipelineMutationModel>) new AddLast(x))); }
public AddLast(NamedChannelHandler handler) : base(handler) { }
protected AddHandler(NamedChannelHandler handler) { Handler = handler; Name = Handler.Name; }