public virtual void TestPopToClose() { // test: </val> closes Two, </bar> ignored String xml = "<doc><val>One<val>Two</val></bar>Three</doc>"; XmlTreeBuilder tb = new XmlTreeBuilder(); Document doc = tb.Parse(xml, "http://foo.com/"); NUnit.Framework.Assert.AreEqual("<doc><val>One<val>Two</val>Three</val></doc>", TextUtil.StripNewlines(doc .Html())); }
public virtual void TestSimpleXmlParse() { String xml = "<doc id=2 href='/bar'>Foo <br /><link>One</link><link>Two</link></doc>"; XmlTreeBuilder tb = new XmlTreeBuilder(); Document doc = tb.Parse(xml, "http://foo.com/"); NUnit.Framework.Assert.AreEqual("<doc id=\"2\" href=\"/bar\">Foo <br /><link>One</link><link>Two</link></doc>" , TextUtil.StripNewlines(doc.Html())); NUnit.Framework.Assert.AreEqual(doc.GetElementById("2").AbsUrl("href"), "http://foo.com/bar"); }
/// <summary>Parse XML into a Document.</summary> /// <param name="xml">XML to parse</param> /// <param name="baseUri">base URI of document (i.e. original fetch location), for resolving relative URLs.</param> /// <returns>parsed Document</returns> public static Document ParseXml(String xml, String baseUri) { TreeBuilder treeBuilder = new XmlTreeBuilder(); return(treeBuilder.Parse(xml, baseUri, ParseErrorList.NoTracking())); }