public void ModelWithChildTemplate()
        {
            // The template
            const string Templ    = "Hello @Model.Child.Name (@Model.D.ToString(\"F2\"))";
            var          expected = "Hello Shay (1.23)";

            // Arrange
            var model = new TestParentModel
            {
                D     = 1.234,
                Child = new TestModelA
                {
                    Name = "Shay"
                }
            };
            var service = RazorEngineHost.Create(c => c.WithBaseTemplateType(typeof(TemplateBase <>)));

            // Act
            this.CompileRunAndAssert(service, Templ, expected, model, typeof(TestParentModel));
        }
        public void ModelWithInheritanceTemplate()
        {
            // The template
            const string Templ    = "Hello @Model.Child.Name (@Model.Child.Color.Name)";
            var          expected = "Hello Shay (Green)";

            // Arrange
            var model = new TestParentModel
            {
                D     = 1.234,
                Child = new TestModelA
                {
                    Name  = "Shay",
                    Color = new TestColorModel
                    {
                        Name = "Green"
                    }
                }
            };
            var service = RazorEngineHost.Create(c => c.WithBaseTemplateType(typeof(TemplateBase <>)));

            // Act
            this.CompileRunAndAssert(service, Templ, expected, model, typeof(TestParentModel));
        }