private void AddFooterToDocument(Element rootElement, Resource resource, long timeTaken) { Element body = rootElement.GetFirstChildElement("body"); if (body != null) { Element footer = new Element("div"); footer.AddStyleClass("footer"); footer.AppendText("Results generated by "); Element link = new Element("a"); link.AddAttribute("href", CONCORDION_WEBSITE_URL); footer.AppendChild(link); Element img = new Element("img"); img.AddAttribute("src", resource.GetRelativePath(TARGET_LOGO_RESOURCE)); img.AddAttribute("alt", "Concordion"); img.AddAttribute("border", "0"); link.AppendChild(img); Element dateDiv = new Element("div"); dateDiv.AddStyleClass("testTime"); dateDiv.AppendText("in " + (timeTaken + 1) + " ms "); dateDiv.AppendText(DateTime.Now.ToString()); footer.AppendChild(dateDiv); body.AppendChild(footer); } }
private Element ExpectedSpan(Element element) { Element spanExpected = new Element("del").AddStyleClass("expected"); element.MoveChildrenTo(spanExpected); spanExpected.AppendNonBreakingSpaceIfBlank(); Element spanFailure = new Element("span").AddStyleClass("failure"); spanFailure.AppendChild(spanExpected); return spanFailure; }
private Element GetDocumentBody(Element rootElement) { Element body = rootElement.GetFirstDescendantNamed("body"); if (body == null) { body = new Element("body"); rootElement.AppendChild(body); } return body; }
public Row AddDetailRow() { Element rowElement = new Element("tr"); Element tbody = TableElement.GetFirstChildElement("tbody"); if (tbody != null) { tbody.AppendChild(rowElement); } else { TableElement.AppendChild(rowElement); } for (int i = 0; i < ColumnCount; i++) { rowElement.AppendChild(new Element("td")); } return new Row(rowElement); }
private Element StackTrace(Exception exception, string expression) { Element stackTrace = new Element("span").AddStyleClass("stackTrace"); stackTrace.SetId("stackTrace" + buttonId); Element p = new Element("p") .AppendText("While evaluating expression: "); p.AppendChild(new Element("code").AppendText(expression)); stackTrace.AppendChild(p); var stackTraceElements = new List<string> { String.Format("{0}: {1}", exception.GetType().ToString(), exception.Message) }; stackTraceElements.AddRange(exception.StackTrace.ToString().Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries)); foreach (var stackTraceElement in stackTraceElements) { stackTrace.AppendChild(StackTraceElement(stackTraceElement)); } //RecursivelyAppendStackTrace(exception, stackTrace); return stackTrace; }
private void RecursivelyAppendStackTrace(Exception exception, Element stackTrace) { Element stackTraceExceptionMessage = new Element("span") .AddStyleClass("stackTraceExceptionMessage") .AppendText(exception.GetType().Name + ": " + exception.Message); stackTrace.AppendChild(stackTraceExceptionMessage); stackTrace.AppendChild(StackTraceElement(exception.StackTrace)); // TODO - Figure out if this is needed any longer //if (exception is OgnlException) //{ // Exception reason = ((OgnlException) exception).getReason(); // if (reason != null) // { // RecursivelyAppendStackTrace(reason, stackTrace); // } //} if (exception.InnerException != null) { RecursivelyAppendStackTrace(exception.InnerException, stackTrace); } }
private void AddFooterToDocument(Element rootElement, Resource resource, long timeTaken) { Element body = rootElement.GetFirstChildElement("body"); if (body != null) { Element footer = new Element("div"); footer.AddStyleClass("footer"); footer.AppendText("Powered by "); Element link = new Element("a"); link.AddAttribute("href", CONCORDION_WEBSITE_URL); footer.AppendChild(link); Element img = new Element("img"); img.AddAttribute("src", resource.GetRelativePath(TARGET_LOGO_RESOURCE)); img.AddAttribute("alt", "Concordion"); img.AddAttribute("border", "0"); link.AppendChild(img); body.AppendChild(footer); } }