コード例 #1
0
        public void Should_expand_anti_forgery_tokens()
        {
            const string input = "<html><body><form>@AntiForgeryToken</form><body></html>";
            var          fakeViewEngineHost = new FakeViewEngineHost();
            var          viewEngine         = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal("<html><body><form>CSRF</form><body></html>", result);
        }
コード例 #2
0
        public void Should_expand_partial_content_with_context()
        {
            const string input = @"<html><head></head><body>@Partial['testing'];</body></html>";
            var          fakeViewEngineHost = new FakeViewEngineHost();

            fakeViewEngineHost.GetTemplateCallback = (s, m) => "Hello @Context.Name";
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal(@"<html><head></head><body>Hello Frank</body></html>", result);
        }
コード例 #3
0
        public void Should_expand_partial_content_even_with_no_model()
        {
            const string input = @"<html><head></head><body>@Partial['testing'];</body></html>";
            var          fakeViewEngineHost = new FakeViewEngineHost();

            fakeViewEngineHost.GetTemplateCallback = (s, m) => "Test partial content";
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal(@"<html><head></head><body>Test partial content</body></html>", result);
        }
コード例 #4
0
        public void Should_call_to_expand_paths()
        {
            const string input = @"<script src='@Path['~/scripts/test.js']'></script>";
            var          fakeViewEngineHost = new FakeViewEngineHost();

            fakeViewEngineHost.ExpandPathCallBack = s => s.Replace("~/", "/BasePath/");
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal("<script src='/BasePath/scripts/test.js'></script>", result);
        }
コード例 #5
0
        public void Should_replace_sections_in_master_page()
        {
            const string input              = "@Master['myMaster']\r\n@Section['Header'];\r\nHeader\r\n@EndSection\r\n@Section['Footer']\r\nFooter\r\n@EndSection";
            const string master             = @"<div id='header'>@Section['Header'];</div><div id='footer'>@Section['Footer'];</div>";
            var          fakeViewEngineHost = new FakeViewEngineHost();

            fakeViewEngineHost.GetTemplateCallback = (s, m) => master;
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal("<div id='header'>\r\nHeader\r\n</div><div id='footer'>\r\nFooter\r\n</div>", result);
        }
コード例 #6
0
        public void Should_also_expand_master_page_with_same_context()
        {
            const string input              = "@Master['myMaster']\r\n@Section['Header'];\r\nHeader\r\n@EndSection\r\n@Section['Footer']\r\nFooter\r\n@EndSection";
            const string master             = @"Hello @Context.Name!<div id='header'>@Section['Header'];</div><div id='footer'>@Section['Footer'];</div>";
            var          fakeViewEngineHost = new FakeViewEngineHost();

            fakeViewEngineHost.GetTemplateCallback = (s, m) => master;
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal("Hello Frank!<div id='header'>\r\nHeader\r\n</div><div id='footer'>\r\nFooter\r\n</div>", result);
        }
コード例 #7
0
        public void Should_handle_master_page_hierarchies()
        {
            const string input  = "@Master['middle']\r\n@Section['MiddleContent']Middle@EndSection";
            const string middle = "@Master['top']\r\n@Section['TopContent']Top\r\n@Section['MiddleContent']@EndSection";
            const string top    = "Top! @Section['TopContent']";

            var fakeViewEngineHost = new FakeViewEngineHost();

            fakeViewEngineHost.GetTemplateCallback = (s, m) => s == "middle" ? middle : top;
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal("Top! Top\r\nMiddle", result);
        }
コード例 #8
0
        public void Should_expand_partial_content_with_model_if_no_model_specified()
        {
            const string input = @"<html><head></head><body>@Partial['testing'];</body></html>";
            var          fakeViewEngineHost = new FakeViewEngineHost();

            fakeViewEngineHost.GetTemplateCallback = (s, m) => "Hello @Model.Name";
            dynamic model = new ExpandoObject();

            model.Name = "Bob";
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, model, fakeViewEngineHost);

            Assert.Equal(@"<html><head></head><body>Hello Bob</body></html>", result);
        }
コード例 #9
0
        public void Should_try_to_locate_master_page_if_one_specified()
        {
            const string input              = "@Master['myMaster']\r\n@Section['Header'];\r\nHeader\r\n@EndSection\r\n@Section['Footer']\r\nFooter\r\n@EndSection";
            var          called             = false;
            var          fakeViewEngineHost = new FakeViewEngineHost();

            fakeViewEngineHost.GetTemplateCallback = (s, m) =>
            {
                called = (s == "myMaster");
                return("");
            };
            var viewEngine = new SuperSimpleViewEngine();

            viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.True(called);
        }
コード例 #10
0
        public void Should_handle_master_page_hierarchies()
        {
            const string input = "@Master['middle']\r\n@Section['MiddleContent']Middle@EndSection";
            const string middle = "@Master['top']\r\n@Section['TopContent']Top\r\n@Section['MiddleContent']@EndSection";
            const string top = "Top! @Section['TopContent']";

            var fakeViewEngineHost = new FakeViewEngineHost();
            fakeViewEngineHost.GetTemplateCallback = (s, m) => s == "middle" ? middle : top;
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal("Top! Top\r\nMiddle", result);
        }
コード例 #11
0
        public void Should_expand_partial_content_with_specified_model_property_if_specified()
        {
            const string input = @"<html><head></head><body>@Partial['testing', Model.User];</body></html>";
            var fakeViewEngineHost = new FakeViewEngineHost();
            fakeViewEngineHost.GetTemplateCallback = (s, m) => "Hello @Model.Name";
            dynamic model = new ExpandoObject();
            dynamic subModel = new ExpandoObject();
            model.Name = "Jim";
            subModel.Name = "Bob";
            model.User = subModel;
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, model, fakeViewEngineHost);

            Assert.Equal(@"<html><head></head><body>Hello Bob</body></html>", result);
        }
コード例 #12
0
        public void Should_expand_partial_content_even_with_no_model()
        {
            const string input = @"<html><head></head><body>@Partial['testing'];</body></html>";
            var fakeViewEngineHost = new FakeViewEngineHost();
            fakeViewEngineHost.GetTemplateCallback = (s, m) => "Test partial content";
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal(@"<html><head></head><body>Test partial content</body></html>", result);
        }
コード例 #13
0
        public void Should_call_to_expand_paths()
        {
            const string input = @"<script src='@Path['~/scripts/test.js']'></script>";
            var fakeViewEngineHost = new FakeViewEngineHost();
            fakeViewEngineHost.ExpandPathCallBack = s => s.Replace("~/", "/BasePath/");
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal("<script src='/BasePath/scripts/test.js'></script>", result);
        }
コード例 #14
0
        public void Should_also_expand_master_page_with_same_model()
        {
            const string input = "@Master['myMaster']\r\n@Section['Header'];\r\nHeader\r\n@EndSection\r\n@Section['Footer']\r\nFooter\r\n@EndSection";
            const string master = @"Hello @Model.Name!<div id='header'>@Section['Header'];</div><div id='footer'>@Section['Footer'];</div>";
            var fakeViewEngineHost = new FakeViewEngineHost();
            fakeViewEngineHost.GetTemplateCallback = (s, m) => master;
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, new { Name = "Bob" }, fakeViewEngineHost);

            Assert.Equal("Hello Bob!<div id='header'>\r\nHeader\r\n</div><div id='footer'>\r\nFooter\r\n</div>", result);
        }
コード例 #15
0
 public MarkDownEngine(IRootPathProvider rootPathProvider, SuperSimpleViewEngine engineWrapper)
 {
     this.rootPathProvider = rootPathProvider;
     this.engineWrapper = engineWrapper;
 }
コード例 #16
0
 public CustomMarkDownViewEngine(SuperSimpleViewEngine engineWrapper)
 {
     this.engineWrapper = engineWrapper;
 }
コード例 #17
0
        public void Should_expand_partial_content_with_context()
        {
            const string input = @"<html><head></head><body>@Partial['testing'];</body></html>";
            var fakeViewEngineHost = new FakeViewEngineHost();
            fakeViewEngineHost.GetTemplateCallback = (s, m) => "Hello @Context.Name";
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal(@"<html><head></head><body>Hello Frank</body></html>", result);
        }
コード例 #18
0
        public void Should_try_to_locate_master_page_if_one_specified()
        {
            const string input = "@Master['myMaster']\r\n@Section['Header'];\r\nHeader\r\n@EndSection\r\n@Section['Footer']\r\nFooter\r\n@EndSection";
            var called = false;
            var fakeViewEngineHost = new FakeViewEngineHost();
            fakeViewEngineHost.GetTemplateCallback = (s, m) =>
                {
                    called = (s == "myMaster");
                    return "";
                };
            var viewEngine = new SuperSimpleViewEngine();

            viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.True(called);
        }
コード例 #19
0
ファイル: KJadeViewEngine.cs プロジェクト: 0xFireball/KJade
 public KJadeViewEngine(SuperSimpleViewEngine engineWrapper)
 {
     this.engineWrapper = engineWrapper;
     jadeCompiler       = new JadeHtmlCompiler();
 }
コード例 #20
0
 public SuperSimpleViewEngineTests()
 {
     this.viewEngine = new SuperSimpleViewEngine();
 }
コード例 #21
0
 public SuperSimpleViewEngineTests()
 {
     this.fakeHost = new FakeViewEngineHost();
     this.viewEngine = new SuperSimpleViewEngine();
 }
コード例 #22
0
 public MarkDownEngine(SuperSimpleViewEngine engineWrapper)
 {
     this.engineWrapper = engineWrapper;
 }
コード例 #23
0
        public void Should_replace_sections_in_master_page()
        {
            const string input = "@Master['myMaster']\r\n@Section['Header'];\r\nHeader\r\n@EndSection\r\n@Section['Footer']\r\nFooter\r\n@EndSection";
            const string master = @"<div id='header'>@Section['Header'];</div><div id='footer'>@Section['Footer'];</div>";
            var fakeViewEngineHost = new FakeViewEngineHost();
            fakeViewEngineHost.GetTemplateCallback = (s, m) => master;
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal("<div id='header'>\r\nHeader\r\n</div><div id='footer'>\r\nFooter\r\n</div>", result);
        }
コード例 #24
0
 public SuperSimpleViewEngineTests()
 {
     this.fakeHost   = new FakeViewEngineHost();
     this.viewEngine = new SuperSimpleViewEngine();
 }
コード例 #25
0
 public CustomMarkDownViewEngine(SuperSimpleViewEngine engineWrapper)
 {
     this.engineWrapper = engineWrapper;
 }
コード例 #26
0
        public void Should_expand_anti_forgery_tokens()
        {
            const string input = "<html><body><form>@AntiForgeryToken</form><body></html>";
            var fakeViewEngineHost = new FakeViewEngineHost();
            var viewEngine = new SuperSimpleViewEngine();

            var result = viewEngine.Render(input, null, fakeViewEngineHost);

            Assert.Equal("<html><body><form>CSRF</form><body></html>", result);
        }