public async Task CompilationRenderer_SpecialTests_Async(SpecTest data) { var builder = new CompilerSettingsBuilder(); var stubble = new StubbleCompilationRenderer(builder.BuildSettings()); if (data.ExpectedException != null) { var ex = await Assert.ThrowsAsync(data.ExpectedException.GetType(), CompileAndRender); Assert.Equal(data.ExpectedException.Message, ex.Message); } else { Assert.Equal(data.Expected, await CompileAndRender()); } async Task <string> CompileAndRender() { var output = data.Partials != null ? await stubble.CompileAsync(data.Template, data.Data, data.Partials) : await stubble.CompileAsync(data.Template, data.Data); return((string)output(data.Data)); } }
public async Task CompilationRendererSpecTest_Async(SpecTest data) { OutputStream.WriteLine(data.Name); var stubble = new StubbleCompilationRenderer(Settings); var output = await(data.Partials != null ? stubble.CompileAsync(data.Template, data.Data, data.Partials) : stubble.CompileAsync(data.Template, data.Data)); var outputResult = output(data.Data); OutputStream.WriteLine("Expected \"{0}\", Actual \"{1}\"", data.Expected, outputResult); Assert.Equal(data.Expected, outputResult); }
public async Task You_Should_Be_Able_To_Compile_Without_An_Example_Object() { var stubble = new StubbleCompilationRenderer(); var input = new ExampleClass { Foo = "Bar" }; var func = stubble.Compile <ExampleClass>("{{Foo}}"); var funcAsync = await stubble.CompileAsync <ExampleClass>("{{Foo}}"); Assert.Equal("Bar", func(input)); Assert.Equal("Bar", funcAsync(input)); }
public async Task You_Should_Be_Able_To_Compile_With_An_Example_Object_With_Settings() { var stubble = new StubbleCompilationRenderer(); var settings = new CompilationSettings { ThrowOnDataMiss = true }; var input = new ExampleClass { Foo = "Bar" }; var func = stubble.Compile("{{Foo}}", input, settings); var funcAsync = await stubble.CompileAsync("{{Foo}}", input, settings); Assert.Equal("Bar", func(input)); Assert.Equal("Bar", funcAsync(input)); }
public async Task You_Should_Be_Able_To_Compile_Without_An_Example_Object_With_Partials() { var stubble = new StubbleCompilationRenderer(); var partials = new Dictionary <string, string> { { "Partial", "{{Foo}}" } }; var input = new ExampleClass { Foo = "Bar" }; var func = stubble.Compile <ExampleClass>("{{> Partial}}", partials); var funcAsync = await stubble.CompileAsync <ExampleClass>("{{> Partial}}", partials); Assert.Equal("Bar", func(input)); Assert.Equal("Bar", funcAsync(input)); }