public void append_json() { action = ActionCall.For<ControllerTarget>(x => x.OneInOneOut(null)); action.AddToEnd(new RenderJsonNode(action.OutputType())); action.Next.ShouldBeOfType<RenderJsonNode>().ModelType.ShouldEqual(action.OutputType()); }
public void append_json() { action = ActionCall.For <ControllerTarget>(x => x.OneInOneOut(null)); action.AddToEnd(new OutputNode(action.OutputType())); action.Next.ShouldBeOfType <OutputNode>().BehaviorType.ShouldEqual(action.OutputType()); }
public void AttemptToAttachViewToAction(ViewBag bag, ActionCall call, IConfigurationObserver observer) { foreach (var filter in _filters) { var viewTokens = filter.Apply(call, bag); var count = viewTokens.Count(); observer.RecordCallStatus(call, "View filter '{0}' found {1} view token{2}".ToFormat( filter.GetType().Name, count, (count != 1) ? "s" : "")); if (count > 0) { viewTokens.Each(t => observer.RecordCallStatus(call, "Found view token: {0}".ToFormat(t))); } // if the filter returned more than one, consider it "failed", ignore it, and move on to the next if (count != 1) { continue; } var token = viewTokens.First(); observer.RecordCallStatus(call, "Selected view token: {0}".ToFormat(token)); call.AddToEnd(token.ToBehavioralNode()); break; } }
public void AttemptToAttachViewToAction(ViewBag bag, ActionCall call, IConfigurationObserver observer) { foreach (var filter in _filters) { var viewTokens = filter.Apply(call, bag); var count = viewTokens.Count(); observer.RecordCallStatus(call, "View filter '{0}' found {1} view token{2}".ToFormat( filter.GetType().Name, count, (count != 1) ? "s" : "" )); if( count > 0 ) { viewTokens.Each(t => observer.RecordCallStatus(call, "Found view token: {0}".ToFormat(t))); } // if the filter returned more than one, consider it "failed", ignore it, and move on to the next if (count == 1) { var token = viewTokens.First(); observer.RecordCallStatus(call, "Selected view token: {0}".ToFormat(token)); call.AddToEnd(token.ToBehavioralNode()); break; } } }
public void append_when_next_is_null() { action = ActionCall.For<ControllerTarget>(x => x.OneInOneOut(null)); var next = new RenderJsonNode(typeof (Model2)); action.AddToEnd(next); action.Next.ShouldBeTheSameAs(next); }
public void append_when_next_is_null() { action = ActionCall.For <ControllerTarget>(x => x.OneInOneOut(null)); var next = new OutputNode(typeof(Model2)); action.AddToEnd(next); action.Next.ShouldBeTheSameAs(next); }
public void enrich_puts_the_new_chain_node_directly_behind_the_call() { action = ActionCall.For<ControllerTarget>(x => x.OneInOneOut(null)); var next = new RenderJsonNode(typeof (Model2)); action.AddToEnd(next); var enricher = new Wrapper(typeof (string)); action.AddAfter(enricher); action.Next.ShouldBeTheSameAs(enricher); enricher.Next.ShouldBeTheSameAs(next); }
public void append_to_descendent_when_next_is_not_null() { action = ActionCall.For<ControllerTarget>(x => x.OneInOneOut(null)); var wrapper = new Wrapper(typeof (FakeBehavior)); action.AddAfter(wrapper); var next = new RenderJsonNode(typeof (Model2)); action.AddToEnd(next); action.Next.ShouldBeTheSameAs(wrapper); wrapper.Next.ShouldBeTheSameAs(next); action.ShouldHaveTheSameElementsAs(wrapper, next); }
public void enrich_puts_the_new_chain_node_directly_behind_the_call() { action = ActionCall.For <ControllerTarget>(x => x.OneInOneOut(null)); var next = new OutputNode(typeof(Model2)); action.AddToEnd(next); var enricher = new Wrapper(typeof(DebugReportTester.StubBehavior)); action.AddAfter(enricher); action.Next.ShouldBeTheSameAs(enricher); enricher.Next.ShouldBeTheSameAs(next); }
public void append_to_descendent_when_next_is_not_null() { action = ActionCall.For <ControllerTarget>(x => x.OneInOneOut(null)); var wrapper = new Wrapper(typeof(FakeBehavior)); action.AddAfter(wrapper); var next = new OutputNode(typeof(Model2)); action.AddToEnd(next); action.Next.ShouldBeTheSameAs(wrapper); wrapper.Next.ShouldBeTheSameAs(next); action.ShouldHaveTheSameElementsAs(wrapper, next); }
public void enrich_puts_the_new_chain_node_directly_behind_the_call() { action = ActionCall.For <ControllerTarget>(x => x.OneInOneOut(null)); var next = new RenderJsonNode(typeof(Model2)); action.AddToEnd(next); var enricher = new Wrapper(typeof(string)); action.AddAfter(enricher); action.Next.ShouldBeTheSameAs(enricher); enricher.Next.ShouldBeTheSameAs(next); }