public String toHtmlString(String generatedHtml) { Dictionary <String, Object> model = new Dictionary <string, object>(); model.Add("filename", filename); model.Add("linenumber", lineNumber); model.Add("message", Message); model.Add("lines", getTemplateLines()); model.Add("exception", getName()); if (generatedHtml != null) { model.Add("html", generatedHtml); } try { string content; using (var res = typeof(JadeException).Assembly.GetManifestResourceStream("/error.jade")) using (var stream = new StreamReader(res)) content = stream.ReadToEnd(); return(Jade4Net.render(content, model, true)); } catch (Exception e) { Trace.WriteLine(e.ToString()); return(null); } }
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)); } }
private void tryToRender(String file) //throws IOException { Jade4Net.render(TestFileHelper.getCompilerResourcePath(file + ".jade"), new Dictionary <String, Object>()); }