Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitb2b08cc

Browse files
committed
Get lxml treewalker outputting attrs in source order again
Mostly so we have test coverage here on < 3.7
1 parent38ec086 commitb2b08cc

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

‎html5lib/tests/test_treewalkers.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,9 @@ def test_lxml_xml():
141141

142142
@pytest.mark.parametrize("treeName",
143143
[pytest.param(treeName,marks=[getattr(pytest.mark,treeName),
144-
pytest.mark.skipif(sys.version_info< (3,7),reason="dict order undef")])
144+
pytest.mark.skipif(
145+
treeName!="lxml"or
146+
sys.version_info< (3,7),reason="dict order undef")])
145147
fortreeNameinsorted(treeTypes.keys())])
146148
deftest_maintain_attribute_order(treeName):
147149
treeAPIs=treeTypes[treeName]
@@ -172,7 +174,9 @@ def test_maintain_attribute_order(treeName):
172174

173175
@pytest.mark.parametrize("treeName",
174176
[pytest.param(treeName,marks=[getattr(pytest.mark,treeName),
175-
pytest.mark.skipif(sys.version_info< (3,7),reason="dict order undef")])
177+
pytest.mark.skipif(
178+
treeName!="lxml"or
179+
sys.version_info< (3,7),reason="dict order undef")])
176180
fortreeNameinsorted(treeTypes.keys())])
177181
deftest_maintain_attribute_order_adjusted(treeName):
178182
treeAPIs=treeTypes[treeName]

‎html5lib/treewalkers/etree_lxml.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
from __future__importabsolute_import,division,unicode_literals
22
fromsiximporttext_type
33

4+
fromcollectionsimportOrderedDict
5+
46
fromlxmlimportetree
57
from ..treebuilders.etreeimporttag_regexp
68

@@ -163,7 +165,7 @@ def getNodeDetails(self, node):
163165
else:
164166
namespace=None
165167
tag=ensure_str(node.tag)
166-
attrs={}
168+
attrs=OrderedDict()
167169
forname,valueinlist(node.attrib.items()):
168170
name=ensure_str(name)
169171
value=ensure_str(value)

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp