@@ -3663,6 +3663,32 @@ def test_basic(self):
36633663 doc = ET .XML ("<root>a&<sub>b&</sub>c&</root>" )
36643664 self .assertEqual ('' .join (doc .itertext ()), 'a&b&c&' )
36653665
3666+ def test_comment (self ):
3667+ e = ET .Element ('root' )
3668+ e .text = 'before'
3669+ comment = ET .Comment ('comment' )
3670+ self .assertEqual (comment .text , 'comment' )
3671+ comment .tail = 'after'
3672+ e .append (comment )
3673+ self .assertEqual ('' .join (e .itertext ()), 'beforeafter' )
3674+ self .assertEqual (list (e .iter ()), [e , comment ])
3675+ self .assertEqual (list (e .iter ('root' )), [e ])
3676+ self .assertEqual ('' .join (comment .itertext ()), '' )
3677+ self .assertEqual (list (comment .iter ()), [comment ])
3678+
3679+ def test_processinginstruction (self ):
3680+ e = ET .Element ('root' )
3681+ e .text = 'before'
3682+ pi = ET .PI ('test' , 'instruction' )
3683+ self .assertEqual (pi .text , 'test instruction' )
3684+ pi .tail = 'after'
3685+ e .append (pi )
3686+ self .assertEqual ('' .join (e .itertext ()), 'beforeafter' )
3687+ self .assertEqual (list (e .iter ()), [e , pi ])
3688+ self .assertEqual (list (e .iter ('root' )), [e ])
3689+ self .assertEqual ('' .join (pi .itertext ()), '' )
3690+ self .assertEqual (list (pi .iter ()), [pi ])
3691+
36663692 def test_corners (self ):
36673693 # single root, no subelements
36683694 a = ET .Element ('a' )
0 commit comments