MCPcopy Index your code
hub / github.com/RustPython/RustPython / test_parse_semantics

Method test_parse_semantics

Lib/test/test_pulldom.py:45–105  ·  view source on GitHub ↗

Test DOMEventStream parsing semantics.

(self)

Source from the content-addressed store, hash-verified

43
44 @unittest.expectedFailure # TODO: RUSTPYTHON; implement DOM semantic
45 def test_parse_semantics(self):
46 """Test DOMEventStream parsing semantics."""
47
48 items = pulldom.parseString(SMALL_SAMPLE)
49 evt, node = next(items)
50 # Just check the node is a Document:
51 self.assertHasAttr(node, "createElement")
52 self.assertEqual(pulldom.START_DOCUMENT, evt)
53 evt, node = next(items)
54 self.assertEqual(pulldom.START_ELEMENT, evt)
55 self.assertEqual("html", node.tagName)
56 self.assertEqual(2, len(node.attributes))
57 self.assertEqual(node.attributes.getNamedItem("xmlns:xdc").value,
58 "http://www.xml.com/books")
59 evt, node = next(items)
60 self.assertEqual(pulldom.CHARACTERS, evt) # Line break
61 evt, node = next(items)
62 # XXX - A comment should be reported here!
63 # self.assertEqual(pulldom.COMMENT, evt)
64 # Line break after swallowed comment:
65 self.assertEqual(pulldom.CHARACTERS, evt)
66 evt, node = next(items)
67 self.assertEqual("title", node.tagName)
68 title_node = node
69 evt, node = next(items)
70 self.assertEqual(pulldom.CHARACTERS, evt)
71 self.assertEqual("Introduction to XSL", node.data)
72 evt, node = next(items)
73 self.assertEqual(pulldom.END_ELEMENT, evt)
74 self.assertEqual("title", node.tagName)
75 self.assertTrue(title_node is node)
76 evt, node = next(items)
77 self.assertEqual(pulldom.CHARACTERS, evt)
78 evt, node = next(items)
79 self.assertEqual(pulldom.START_ELEMENT, evt)
80 self.assertEqual("hr", node.tagName)
81 evt, node = next(items)
82 self.assertEqual(pulldom.END_ELEMENT, evt)
83 self.assertEqual("hr", node.tagName)
84 evt, node = next(items)
85 self.assertEqual(pulldom.CHARACTERS, evt)
86 evt, node = next(items)
87 self.assertEqual(pulldom.START_ELEMENT, evt)
88 self.assertEqual("p", node.tagName)
89 evt, node = next(items)
90 self.assertEqual(pulldom.START_ELEMENT, evt)
91 self.assertEqual("xdc:author", node.tagName)
92 evt, node = next(items)
93 self.assertEqual(pulldom.CHARACTERS, evt)
94 evt, node = next(items)
95 self.assertEqual(pulldom.END_ELEMENT, evt)
96 self.assertEqual("xdc:author", node.tagName)
97 evt, node = next(items)
98 self.assertEqual(pulldom.END_ELEMENT, evt)
99 evt, node = next(items)
100 self.assertEqual(pulldom.CHARACTERS, evt)
101 evt, node = next(items)
102 self.assertEqual(pulldom.END_ELEMENT, evt)

Callers

nothing calls this directly

Calls 7

nextFunction · 0.85
lenFunction · 0.85
assertTrueMethod · 0.80
parseStringMethod · 0.45
assertHasAttrMethod · 0.45
assertEqualMethod · 0.45
getNamedItemMethod · 0.45

Tested by

no test coverage detected