Esempio n. 1
0
        public void Test_template_rendering_with_escaped_characters()
        {
            var instance = Handlebars.Create(new HandlebarsConfiguration
            {
                TextEncoder = new NoopTextEncoder()
            });
            var template = new Template("test", instance, TemplateSource.CreateForText("|{{name}}|"));

            template.Name.Should().Be("test");
            template.RenderIntoString(new { name = "< > / \\ & $ # @" }).Should().Be("|< > / \\ & $ # @|");
        }
Esempio n. 2
0
        public void Test_template_rendering()
        {
            var instance = Handlebars.Create(new HandlebarsConfiguration
            {
                TextEncoder = new NoopTextEncoder()
            });
            var template = new Template("test", instance, TemplateSource.CreateForText("Hello {{name}}"));

            template.Name.Should().Be("test");
            template.RenderIntoString(new { name = "Test123" }).Should().Be("Hello Test123");
        }
        public void Generate_CSharp_from_output_model()
        {
            var ns      = new Namespace("MyApp.MyTest", null);
            var builder = new ClassOutputModelBuilder("test", null, new TestClassNamingConvention());

            builder.CreateClass("MyClass", ns);
            builder.CreateProperty("Name", "string");

            var outputModel = builder.Build();
            var instance    = Handlebars.Create(new HandlebarsConfiguration
            {
                TextEncoder = new NoopTextEncoder()
            });
            var template = new Template("test", instance, TemplateSource.CreateForText(@"
namespace {{Model.ClassNamespace}}
public class {{Model.ClassName}}
{
{{#each Model.Properties}}
    public {{Type.TypeName}} {{Name}} { get; set; }
{{/each}}
}
"));
            var renderer = new ClassOutputModelRenderer(template);
            var actual   = default(string);
            var expected = @"
namespace MyApp.MyTest
public class MyClass
{
    public string Name { get; set; }
}
";

            using (var writer = new StringWriter())
            {
                renderer.Render(outputModel, writer);
                actual = writer.ToString();
            }

            actual.Should().Be(expected);
        }