public void It_Can_Render_InterpolationTag_Escaped_SimpleValue() { const string result = "A & B"; var settings = new RendererSettingsBuilder().BuildSettings(); var context = new Context( new { foo = "A & B" }, settings, settings.RenderSettings); var stringRenderer = new StringRender(StreamWriter, settings.RendererPipeline); var interpolationTokenRenderer = new InterpolationTokenRenderer(); interpolationTokenRenderer.Write( stringRenderer, new InterpolationToken { Content = new StringSlice("foo"), EscapeResult = true, }, context); StreamWriter.Flush(); MemStream.Position = 0; var sr = new StreamReader(MemStream); var myStr = sr.ReadToEnd(); Assert.Equal(result, myStr); }
public void It_Can_Render_InterpolationTag_Lambda_Tag() { const string result = "Bar"; var settings = new RendererSettingsBuilder().BuildSettings(); var context = new Context( new { foo = new Func <string>(() => "{{bar}}"), bar = "Bar" }, settings, settings.RenderSettings); var stringRenderer = new StringRender(StreamWriter, settings.RendererPipeline); var interpolationTokenRenderer = new InterpolationTokenRenderer(); interpolationTokenRenderer.Write( stringRenderer, new InterpolationToken { Content = new StringSlice("foo"), EscapeResult = true, }, context); StreamWriter.Flush(); MemStream.Position = 0; var sr = new StreamReader(MemStream); var myStr = sr.ReadToEnd(); Assert.Equal(result, myStr); }