Skip to content

Commit 5197f55

Browse files
committed
Fix #132: add test for #115, single character fragments (#264)
r=nobody!
1 parent 1ff3c80 commit 5197f55

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

html5lib/tests/test_treewalkers.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
from __future__ import absolute_import, division, unicode_literals
22

3+
import itertools
4+
35
import pytest
46

57
try:
@@ -100,6 +102,24 @@ def test_treewalker_six_mix():
100102
yield runTreewalkerEditTest, intext, expected, attrs, tree
101103

102104

105+
@pytest.mark.parametrize("tree,char", itertools.product(sorted(treeTypes.items()), ["x", "\u1234"]))
106+
def test_fragment_single_char(tree, char):
107+
expected = [
108+
{'data': char, 'type': 'Characters'}
109+
]
110+
111+
treeName, treeClass = tree
112+
if treeClass is None:
113+
pytest.skip("Treebuilder not loaded")
114+
115+
parser = html5parser.HTMLParser(tree=treeClass["builder"])
116+
document = parser.parseFragment(char)
117+
document = treeClass.get("adapter", lambda x: x)(document)
118+
output = Lint(treeClass["walker"](document))
119+
120+
assert list(output) == expected
121+
122+
103123
@pytest.mark.skipif(treeTypes["lxml"] is None, reason="lxml not importable")
104124
def test_lxml_xml():
105125
expected = [

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy