public void TestTagName() { string html = @"<body><h1>title</h1>message</body>"; HtmlDocument doc = new HtmlDocument(html); var q = new HtmlNavigator( doc ) .Where( n => n.TagName == "h1" ) .Select( n => n ); Assert.AreEqual(1, q.Count()); Assert.AreEqual("title", q.First().Value ); }
public void TestTagName() { string html = @"<body><h1>title</h1>message</body>"; HtmlDocument doc = new HtmlDocument(html); var q = new HtmlNavigator(doc) .Where(n => n.TagName == "h1") .Select(n => n); Assert.AreEqual(1, q.Count()); Assert.AreEqual("title", q.First().Value); }
public void TestTagName2() { string html = @"<body><h2>title1</h2>message<h2>title2</h2></body>"; HtmlDocument doc = new HtmlDocument(html); var q = new HtmlNavigator(doc) .Where(n => n.TagName == "h2") .Select(n => n); Assert.AreEqual(2, q.Count()); Assert.AreEqual("title1", q.First().Value); Assert.AreEqual("title2", q.ToList()[1].Value); }
public void QueryTest() { using var styleSheet = this.GetResourceStream("ComplexTemplate.html"); var html = new HtmlNavigator(); var xpath = html.ToNavigable(styleSheet).CreateNavigator().Clone(); var valueOf = xpath.Select("//value-of"); var valueAttr = xpath.Select("//value-attr"); var repeater = xpath.Select("//repeater"); var condition = xpath.Select("//condition"); var dataBinding = xpath.Select("//@data-binding"); }
public void TestInsert1() { string html = @" <body> <h2>title1</h2> <div id='m1'></div> <h2>title2</h2> <div id='m2'></div> </body> "; HtmlDocument doc = new HtmlDocument(html); var q = new HtmlNavigator(doc) .Where(n => n % "id" == "m1") .AppendChild(new HtmlNode("p", "new message")); Assert.AreEqual("<body><h2>title1</h2><div id=\"m1\"><p>new message</p></div><h2>title2</h2><div id=\"m2\"/></body>", doc.Html ); }
public void TestInsert1() { string html = @" <body> <h2>title1</h2> <div id='m1'></div> <h2>title2</h2> <div id='m2'></div> </body> "; HtmlDocument doc = new HtmlDocument(html); var q = new HtmlNavigator(doc) .Where(n => n % "id" == "m1") .AppendChild(new HtmlNode("p", "new message")); Assert.AreEqual("<body><h2>title1</h2><div id=\"m1\"><p>new message</p></div><h2>title2</h2><div id=\"m2\"/></body>", doc.Html); }
public void TestTagName4() { string html = @" <body> <h2>title1</h2> <span id='msg1'>message</span> <h2>title2</h2> <span id='msg2'>message2</span> </body> "; HtmlDocument doc = new HtmlDocument(html); var q = new HtmlNavigator(doc) .Where(n => n % "id" == "msg2") .Select(n => n); Assert.AreEqual(1, q.Count()); Assert.AreEqual("message2", q.First().Value); }
public void TestRemove1() { string html = @" <body> <h2>title1</h2> <span id='m1'>message</span> <h2>title2</h2> <span id='m2'>message2</span> </body> "; HtmlDocument doc = new HtmlDocument(html); var q = new HtmlNavigator(doc) .Where(n => n % "id" == "m2") .Remove(); q = new HtmlNavigator(doc) .Where(n => n.TagName == "span") .Select(n => n); Assert.AreEqual(1, q.Count()); Assert.AreEqual("message", q.Item().Value); }