示例#1
0
 private String readFile(String fileName)
 {
     try
     {
         return(File.ReadAllText(TestFileHelper.getCompilerResourcePath(fileName)));
     }
     catch (Exception e)
     {
         Trace.WriteLine(e);
     }
     return("");
 }
示例#2
0
        public void test()
        {
            String errorJade     = TestFileHelper.getCompilerResourcePath("exceptions/error.jade");
            String exceptionHtml = TestFileHelper.getCompilerResourcePath("exceptions/error.html");

            try
            {
                Jade4Net.render(errorJade, new Dictionary <String, Object>());
                Assert.Fail();
            }
            catch (JadeException e)
            {
                Assert.IsTrue(e.Message.StartsWith("unable to evaluate [non.existing.query()]"));
                Assert.AreEqual(9, e.getLineNumber());
                Assert.AreEqual(errorJade, e.getFilename());
                String expectedHtml = readFile(exceptionHtml);
                String html         = e.toHtmlString("<html><head><title>broken");
                Assert.AreEqual(removeAbsolutePath(expectedHtml), removeAbsolutePath(html));
            }
        }
示例#3
0
        private void run(String testName, bool pretty, JadeModel model)
        {
            JadeParser parser = null;

            try
            {
                FileTemplateLoader loader = new FileTemplateLoader(
                    TestFileHelper.getCompilerResourcePath(""), "UTF-8");
                parser = new JadeParser(testName, loader);
            }
            catch (IOException e)
            {
                Trace.WriteLine(e);
            }
            Node root = parser.parse();

            Jade.Compiler.Compiler compiler = new Jade.Compiler.Compiler(root);
            compiler.setPrettyPrint(pretty);
            String expected = readFile(testName + expectedFileNameExtension);

            model.addFilter("markdown", new MarkdownFilter());
            model.addFilter("plain", new PlainFilter());
            model.addFilter("js", new JsFilter());
            model.addFilter("css", new CssFilter());
            model.addFilter("svg", new PlainFilter());
            String html = null;

            try
            {
                html = compiler.compileToString(model);
            }
            catch (JadeCompilerException e)
            {
                Trace.WriteLine(e);
                Assert.Fail();
            }
            Assert.AreEqual(testName, expected.Trim(), html.Trim());
        }
示例#4
0
 private void tryToRender(String file) //throws IOException
 {
     Jade4Net.render(TestFileHelper.getCompilerResourcePath(file + ".jade"),
                     new Dictionary <String, Object>());
 }