public void Empty() { reader = HtmlReaderFactory.FromString("", parseErrors); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void TagDataTagData() { reader = HtmlReaderFactory.FromString("<br/>a<p/>b", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Tag, reader.TokenKind); Assert.AreEqual("br", reader.Name); Assert.IsTrue(reader.SelfClosingElement); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Text, reader.TokenKind); Assert.AreEqual("a", reader.Text); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Tag, reader.TokenKind); Assert.AreEqual("p", reader.Name); Assert.IsTrue(reader.SelfClosingElement); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Text, reader.TokenKind); Assert.AreEqual("b", reader.Text); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void AttributeValueNamedCharacterReference() { reader = HtmlReaderFactory.FromString("<a title=\"<\">", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual("<", reader.GetAttribute("title")); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void DataNamedCharacterReference3() { reader = HtmlReaderFactory.FromString("I'm ∉ I tell you", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Text, reader.TokenKind); Assert.AreEqual("I'm ∉ I tell you", reader.Text); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void DataHexCharacterReference() { reader = HtmlReaderFactory.FromString("A", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Text, reader.TokenKind); Assert.AreEqual("A", reader.Text); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void Data() { reader = HtmlReaderFactory.FromString("a", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Text, reader.TokenKind); Assert.AreEqual("a", reader.Text); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void BogusCommentState2() { reader = HtmlReaderFactory.FromString("<!/div>", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Comment, reader.TokenKind); Assert.AreEqual("/div", reader.Text); Assert.IsFalse(reader.Read()); Assert.AreEqual(1, parseErrors.Count); }
public void TagMissingAttribute() { reader = HtmlReaderFactory.FromString("<a>", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Tag, reader.TokenKind); Assert.AreEqual("a", reader.Name); Assert.IsNull(reader.GetAttribute("href")); Assert.IsFalse(reader.SelfClosingElement); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void TagUnquotedAttributeValue() { reader = HtmlReaderFactory.FromString("<a href=javascript:;>", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Tag, reader.TokenKind); Assert.AreEqual("a", reader.Name); Assert.AreEqual("javascript:;", reader.GetAttribute("href")); Assert.IsFalse(reader.SelfClosingElement); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void DataNamedCharacterReference2() { reader = HtmlReaderFactory.FromString("I'm ¬it; I tell you", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Text, reader.TokenKind); Assert.AreEqual("I'm ¬it; I tell you", reader.Text); Assert.IsFalse(reader.Read()); Assert.AreEqual(1, parseErrors.Count); Assert.AreEqual(1, parseErrors[0].LineNumber); Assert.AreEqual(6, parseErrors[0].LinePosition); }
public void GetAttributeReturnsFirstAttributeValue() { reader = HtmlReaderFactory.FromString("<img src=\"a\" src=\"b\" />", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Tag, reader.TokenKind); Assert.AreEqual("img", reader.Name); Assert.AreEqual(2, reader.AttributeCount); Assert.AreEqual("a", reader.GetAttribute("src")); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void RcDataEmpty() { reader = HtmlReaderFactory.FromString("<title></title>", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Tag, reader.TokenKind); Assert.AreEqual("title", reader.Name); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.EndTag, reader.TokenKind); Assert.AreEqual("title", reader.Name); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }
public void RcDataWithCharacterReference() { reader = HtmlReaderFactory.FromString("<title>&</title><p>", parseErrors); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Tag, reader.TokenKind); Assert.AreEqual("title", reader.Name); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Text, reader.TokenKind); Assert.AreEqual("&", reader.Text); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.EndTag, reader.TokenKind); Assert.AreEqual("title", reader.Name); Assert.IsTrue(reader.Read()); Assert.AreEqual(HtmlTokenKind.Tag, reader.TokenKind); Assert.AreEqual("p", reader.Name); Assert.IsFalse(reader.Read()); Assert.AreEqual(0, parseErrors.Count); }