+
    Biz                        ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RI	H
t
 ^ RIHt ^ RIHt ^ RI	Ht  ! R R	]P                   4      tR
t ! R R]P                   4      t ! R R]P                   4      t ! R R]P                   4      t ! R R]P                   4      t ! R R]P                   4      t ! R R]P                   4      t ! R R]P                   4      t ! R R]P                   4      t ! R R]P                   4      t ! R R]P                   4      t ! R R ]P                   4      t ! R! R"]P                   4      t ! R# R$]P                   4      t] R%8X  d   ]PB                  ! 4        R# R# )&    N)BytesIO)support)	os_helper)expat)errors)sortdictc                   D   a  ] tR t^t o R tR tR tR tR tR t	Rt
V tR# )	SetAttributeTestc                >    \         P                  ! R R7      V n        R# !namespace_separatorN)r   ParserCreateparserselfs   &(/usr/lib/python3.14/test/test_pyexpat.pysetUpSetAttributeTest.setUp   s    ((SA    c                    V P                  V P                  P                  R 4       R FB  pWP                  n        V P                  V P                  P                  \        V4      4       KD  	  R# FN)r         r   )assertIsr   buffer_textboolr   xs   & r   test_buffer_text!SetAttributeTest.test_buffer_text   sJ    dkk--u5A&'KK#MM$++1147; r   c                    V P                  V P                  P                  R 4       R FB  pWP                  n        V P                  V P                  P                  \        V4      4       KD  	  R# r   )r   r   namespace_prefixesr   r   s   & r   test_namespace_prefixes(SetAttributeTest.test_namespace_prefixes   J    dkk44e<A-.KK*MM$++88$q'B r   c                    V P                  V P                  P                  R 4       R FB  pWP                  n        V P                  V P                  P                  \        V4      4       KD  	  R# r   )r   r   ordered_attributesr   r   s   & r   test_ordered_attributes(SetAttributeTest.test_ordered_attributes#   r'   r   c                    V P                  V P                  P                  R 4       R FB  pWP                  n        V P                  V P                  P                  \        V4      4       KD  	  R# r   )r   r   specified_attributesr   r   s   & r   test_specified_attributes*SetAttributeTest.test_specified_attributes)   sJ    dkk66>A/0KK,MM$++::DGD r   c                `   V P                  \        4      ;_uu_ 4        ^V P                  n        RRR4       V P                  \        4      ;_uu_ 4        V P                  P                   RRR4       V P                  \        \
        V P                  \        ^4      ^ 4       V P                  \        V P                  P                  \        ^4      ^ 4       V P                  \        \        V P                  \        ^4      4       R#   + '       g   i     L; i  + '       g   i     L; ir   N)	assertRaisesAttributeErrorr   returns_unicode	TypeErrorsetattrrange__setattr__getattrr   s   &r   test_invalid_attributes(SetAttributeTest.test_invalid_attributes/   s    ~..*+DKK' /~..KK'' / 	)Wdkk5:qI)T[[%<%<eCj!L)Wdkk5:F /...s   D
D
D	D-	)r   N)__name__
__module____qualname____firstlineno__r   r!   r%   r*   r.   r:   __static_attributes____classdictcell____classdict__s   @r   r
   r
      s.     B<CCE	G 	Gr   r
   s  <?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<?xml-stylesheet href="stylesheet.css"?>
<!-- comment data -->
<!DOCTYPE quotations SYSTEM "quotations.dtd" [
<!ELEMENT root ANY>
<!ATTLIST root attr1 CDATA #REQUIRED attr2 CDATA #IMPLIED>
<!NOTATION notation SYSTEM "notation.jpeg">
<!ENTITY acirc "&#226;">
<!ENTITY external_entity SYSTEM "entity.file">
<!ENTITY unparsed_entity SYSTEM "entity.file" NDATA notation>
%unparsed_entity;
]>

<root attr1="value1" attr2="value2&#8000;">
<myns:subelement xmlns:myns="http://www.python.org/namespace">
     Contents of subelements
</myns:subelement>
<sub2><![CDATA[contents of CDATA section]]></sub2>
&external_entity;
&skipped_entity;

</root>
c                   `   a  ] tR t^Vt o  ! R R4      t. ROtR tR tR tR t	R t
R tR	tV tR
# )	ParseTestc                      a  ] tR t^Wt o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tRtV tR# )ParseTest.Outputterc                    . V n         R # Noutr   s   &r   __init__ParseTest.Outputter.__init__X   s	    DHr   c                    V P                   P                  R \        V4      ,           R,           \        V4      ,           4       R# )zStart element:  N)rK   appendreprr   r   nameattrss   &&&r   StartElementHandler'ParseTest.Outputter.StartElementHandler[   s/    HHOO-T
:S@$UO, -r   c                \    V P                   P                  R \        V4      ,           4       R# )zEnd element: NrK   rP   rQ   r   rS   s   &&r   EndElementHandler%ParseTest.Outputter.EndElementHandler_   s    HHOOOd4j89r   c                    VP                  4       pV'       d.   V P                  P                  R \        V4      ,           4       R# R# )zCharacter data: N)striprK   rP   rQ   r   datas   &&r   CharacterDataHandler(ParseTest.Outputter.CharacterDataHandlerb   s/    ::<D 2T$Z ?@ r   c                    V P                   P                  R \        V4      ,           R,           \        V4      ,           4       R# )zPI: rO   NrX   )r   targetr_   s   &&&r   ProcessingInstructionHandler0ParseTest.Outputter.ProcessingInstructionHandlerg   s)    HHOOFT&\1C7$t*DEr   c                    V P                   P                  R \        V4      ,           R,           \        V4      ,           4       R# )z	NS decl: rO   NrX   )r   prefixuris   &&&r   StartNamespaceDeclHandler-ParseTest.Outputter.StartNamespaceDeclHandlerj   s)    HHOOK$v,6<tCyHIr   c                \    V P                   P                  R \        V4      ,           4       R# )zEnd of NS decl: NrX   )r   rg   s   &&r   EndNamespaceDeclHandler+ParseTest.Outputter.EndNamespaceDeclHandlerm   s    HHOO.f=>r   c                <    V P                   P                  R 4       R# )Start of CDATA sectionNrK   rP   r   s   &r   StartCdataSectionHandler,ParseTest.Outputter.StartCdataSectionHandlerp   s    HHOO45r   c                <    V P                   P                  R 4       R# )End of CDATA sectionNrp   r   s   &r   EndCdataSectionHandler*ParseTest.Outputter.EndCdataSectionHandlers   s    HHOO23r   c                \    V P                   P                  R \        V4      ,           4       R# )z	Comment: NrX   r   texts   &&r   CommentHandler"ParseTest.Outputter.CommentHandlerv   s    HHOOK$t*45r   c                N    Vw  r#rEV P                   P                  R V: 24       R# )zNotation declared: Nrp   )r   argsrS   basesysidpubids   &*    r   NotationDeclHandler'ParseTest.Outputter.NotationDeclHandlery   s    '+$DHHOOd<=r   c                P    Vw  r#rEpV P                   P                  R V: 24       R# )zUnparsed entity decl: Nrp   )r   r}   
entityNamer~   systemIdpublicIdnotationNames   &*     r   UnparsedEntityDeclHandler-ParseTest.Outputter.UnparsedEntityDeclHandler}   s!    AE>Jh,HHOO?@r   c                <    V P                   P                  R 4       ^# )Not standalonerp   r   s   &r   NotStandaloneHandler(ParseTest.Outputter.NotStandaloneHandler   s    HHOO,-r   c                \    Vw  r#rEV P                   P                  R VR,          : 24       ^# )zExternal entity ref: :r   NNrp   )r   r}   contextr~   sysIdpubIds   &*    r   ExternalEntityRefHandler,ParseTest.Outputter.ExternalEntityRefHandler   s&    *.'G5HHOORBCr   c                @    V P                   P                  R V34       ^# )Start doctyperp   r   r}   s   &*r   StartDoctypeDeclHandler+ParseTest.Outputter.StartDoctypeDeclHandler   s    HHOO_d34r   c                <    V P                   P                  R 4       ^# )End doctyperp   r   s   &r   EndDoctypeDeclHandler)ParseTest.Outputter.EndDoctypeDeclHandler   s    HHOOM*r   c                @    V P                   P                  R V34       ^# )Entity declarationrp   r   s   &*r   EntityDeclHandler%ParseTest.Outputter.EntityDeclHandler   s    HHOO1489r   c                @    V P                   P                  R V34       ^# )XML declarationrp   r   s   &*r   XmlDeclHandler"ParseTest.Outputter.XmlDeclHandler   s    HHOO.56r   c                @    V P                   P                  R V34       ^# )Element declarationrp   r   s   &*r   ElementDeclHandler&ParseTest.Outputter.ElementDeclHandler   s    HHOO2D9:r   c                @    V P                   P                  R V34       ^# )Attribute list declarationrp   r   s   &*r   AttlistDeclHandler&ParseTest.Outputter.AttlistDeclHandler   s    HHOO94@Ar   c                @    V P                   P                  R V34       ^# )Skipped entityrp   r   s   &*r   SkippedEntityHandler(ParseTest.Outputter.SkippedEntityHandler   s    HHOO-t45r   c                    R # rI    r   userDatas   &&r   DefaultHandler"ParseTest.Outputter.DefaultHandler       r   c                    R # rI   r   r   s   &&r   DefaultHandlerExpand(ParseTest.Outputter.DefaultHandlerExpand   r   r   rJ   N)r<   r=   r>   r?   rL   rU   rZ   r`   rd   ri   rl   rq   ru   rz   r   r   r   r   r   r   r   r   r   r   r   r   r   r@   rA   rB   s   @r   	OutputterrG   W   s     		-	:	A
	F	J	?	6	4	6	>	A		
									 	r   r   c           	     V    V P                    F  p\        W\        W#4      4       K  	  R # rI   )handler_namesr6   r9   )r   r   handlerrS   s   &&& r   _hookup_callbacksParseTest._hookup_callbacks   s#    
 &&DF''"89 'r   c                X    . ROp\        W4       F  w  r4V P                  W44       K  	  R# )r   N))r   )z1.0
iso-8859-1r   z,PI: 'xml-stylesheet' 'href="stylesheet.css"'zComment: ' comment data 'r   )r   )
quotationszquotations.dtdNr   )r   )root)r   r   Nr   )r   )r   attr1CDATANr   )r   )r   attr2r   Nr   z<Notation declared: ('notation', None, 'notation.jpeg', None))r   )acircr      âNNNN)r   )external_entityr   NNzentity.fileNNzPUnparsed entity decl: ('unparsed_entity', None, 'entity.file', None, 'notation')r   r   u?   Start element: 'root' {'attr1': 'value1', 'attr2': 'value2ὀ'}z1NS decl: 'myns' 'http://www.python.org/namespace'z>Start element: 'http://www.python.org/namespace!subelement' {}z)Character data: 'Contents of subelements'z9End element: 'http://www.python.org/namespace!subelement'zEnd of NS decl: 'myns'zStart element: 'sub2' {}ro   z+Character data: 'contents of CDATA section'rt   zEnd element: 'sub2'z0External entity ref: (None, 'entity.file', None))r   )skipped_entityr   u   Character data: 'µ'zEnd element: 'root')zipassertEqual)r   
operationsexpected_operations	operationexpected_operations   &&   r   _verify_parse_outputParseTest._verify_parse_output   s.    !
D .1-Q)IY; .Rr   c                   V P                  4       p\        P                  ! R R7      pV P                  W!4       VP	                  \
        R4       VP                  pV P                  V4       V P                  \        \        VR4       R# )r   r   Tu   N)r   r   r   r   Parser_   rK   r   r2   r3   r9   r   rK   r   r   s   &   r   test_parse_bytesParseTest.test_parse_bytes   se    nn##<v+T4 WW
!!*-.'68Dr   c                    V P                  4       p\        P                  ! R R7      pV P                  W!4       VP	                  \
        P                  R4      R4       VP                  pV P                  V4       R# )r   r   r   TN)	r   r   r   r   r   r_   decoderK   r   r   s   &   r   test_parse_strParseTest.test_parse_str   sZ    nn##<v+T[[.5WW
!!*-r   c                    V P                  4       p\        P                  ! R R7      pV P                  W!4       \	        \
        4      pVP                  V4       VP                  pV P                  V4       R# r   )	r   r   r   r   r   r_   	ParseFilerK   r   )r   rK   r   filer   s   &    r   test_parse_fileParseTest.test_parse_file   sZ    nn##<v+t}WW
!!*-r   c                   \         P                  ! 4       p\        \        4      pVP	                  V4       V P                  \         P                  4      ;_uu_ 4       pVP	                  V4       R R R 4       V P                  \         P                  ! XP                  P                  4      \         P                  P                  4       R #   + '       g   i     Ld; irI   )r   r   r   r_   r   r2   errorr   ErrorString	exceptioncoder   XML_ERROR_FINISHED)r   r   r   cms   &   r   test_parse_againParseTest.test_parse_again  s    ##%t} u{{++rT" ,**2<<+<+<=,,99	; ,+s   CC	r   N)rU   rZ   r`   rd   r   r   ri   rl   rz   rq   ru   r   r   r   r   r   r   r   r   r   r   r   )r<   r=   r>   r?   r   r   r   r   r   r   r   r   r@   rA   rB   s   @r   rE   rE   V   s>     S Sj

M:$<L
E.
.
; 
;r   rE   c                   2   a  ] tR tRt o R tR tR tRtV tR# )NamespaceSeparatorTesti  c                    \         P                  ! 4        \         P                  ! R R7       \         P                  ! RR7       R # )Nr   rO   r   r   r   s   &r   
test_legal!NamespaceSeparatorTest.test_legal  s,     	t4s3r   c                `   V P                  \        R 4      ;_uu_ 4        \        P                  ! ^*R7       RRR4        \        P                  ! RR7       V P	                  4        R#   + '       g   i     L:; i  \
         d'   pT P                  \        T4      R4        Rp?R# Rp?ii ; i)zPParserCreate\(\) argument (2|'namespace_separator') must be str or None, not intr   Nztoo longzCnamespace_separator must be at most one character, omitted, or None)assertRaisesRegexr5   r   r   fail
ValueErrorr   str)r   es   & r   test_illegal#NamespaceSeparatorTest.test_illegal  s    ##I01 1 261
	W:>IIK1 1  	WSVUW W	Ws#   A) 'A< )A9	<B-B((B-c                4    \         P                  ! R R7       R# ) r   Nr   r   s   &r   test_zero_length'NamespaceSeparatorTest.test_zero_length)  s     	r2r   r   N)	r<   r=   r>   r?   r   r   r   r@   rA   rB   s   @r   r   r     s     4W	3 	3r   r   c                   ,   a  ] tR tRt o R tR tRtV tR# )InterningTesti5  c                   a \         P                  ! 4       p. oV3R  lpW!n        W!n        VP	                  RR4       S^ ,          pV P                  \        S4      ^4       S F  pV P                  W4J 4       K  	  R# )c                 *   < SP                  V 4       R # rI   rP   )rS   r}   Ls   &*r   	collector%InterningTest.test.<locals>.collector:  s    HHTNr   s   <e> <e/> <e></e> </e>TN)r   r   rU   rZ   r   r   len
assertTrue)r   pr  tagentryr  s   &    @r   testInterningTest.test6  sk     	 )'	($/dQ#EOOCL) r   c                     ! R  R4      p\         P                  ! RR7      p^Vn        V! V4      pVP                  Vn        VP	                  \
        R4       V P                  VP                  ^4       R# )c                   ,   a  ] tR tRt o R tR tRtV tR# )7InterningTest.test_issue9402.<locals>.ExternalOutputteriG  c                     Wn         R V n        R # rI   r   parser_resultr   r   s   &&r   rL   @InterningTest.test_issue9402.<locals>.ExternalOutputter.__init__H  s    $%)"r   c                j    V P                   P                  R 4      pVP                  RR4      V n        ^# )r   r   T)r   ExternalEntityParserCreater   r  )r   r   r~   r   r   external_parsers   &&&&& r   r   PInterningTest.test_issue9402.<locals>.ExternalOutputter.ExternalEntityRefHandlerL  s.    "&++"H"H"L%4%:%:3%E"r   r  N)r<   r=   r>   r?   rL   r   r@   rA   rB   s   @r   ExternalOutputterr  G  s     * r   r  r   r   TN)r   r   r   r   r   r_   r   r  )r   r  r   rK   s   &   r   test_issue9402InterningTest.test_issue9402E  sb    	 	 ##<'*-*F*F'T4 **A.r   r   N)r<   r=   r>   r?   r
  r  r@   rA   rB   s   @r   r   r   5  s     */ /r   r   c                      a  ] tR tRt o R tR tR tR tR tR t	. 3R lt
R	 tR
 tR tR tR tR tR tR tR tRtV tR# )BufferTextTestiY  c                    . V n         \        P                  ! 4       V n        ^V P                  n        V P
                  V P                  n        R# r1   )stuffr   r   r   r   r`   r   s   &r   r   BufferTextTest.setUpZ  s7    
((*"#+/+D+D(r   c                    V P                  V P                  VV: R V P                  : R\        \        V4      : 24       R# )z
stuff    = z
expected = N)r   r  mapr   )r   expectedlabels   &&&r   checkBufferTextTest.check`  s/    X$**c#x&8:	;r   c                <    V P                   P                  V4       R # rI   r  rP   rx   s   &&r   r`   #BufferTextTest.CharacterDataHandlere  s    

$r   c                    V P                   P                  R V,          4       VP                  R4      pVR8X  d   ^V P                  n        R# VR8X  d   ^ V P                  n        R# R# )z<%s>zbuffer-textyesnoN)r  rP   getr   r   )r   rS   rT   bts   &&& r   rU   "BufferTextTest.StartElementHandlerh  sQ    

&4-(YY}%;&'DKK#4Z&'DKK# r   c                J    V P                   P                  R V,          4       R# )z</%s>Nr'  rY   s   &&r   rZ    BufferTextTest.EndElementHandlerp  s    

'D.)r   c                J    V P                   P                  R V,          4       R# )z	<!--%s-->Nr'  r^   s   &&r   rz   BufferTextTest.CommentHandlers  s    

+,-r   c           	     X    V F#  p\        V P                  V\        W4      4       K%  	  R # rI   )r6   r   r9   )r   handlersrS   s   && r   setHandlersBufferTextTest.setHandlersv  s!    DDKKwt':; r   c                f    \         P                  ! 4       pV P                  VP                  4       R # rI   )r   r   assertFalser   r  s   & r   test_default_to_disabled'BufferTextTest.test_default_to_disabledz  s$    ##%++,r   c                    V P                  V P                  P                  4       V P                  P                  R R4       V P	                  V P
                  R.R4       R# )   <a>1<b/>2<c/>3</a>T123$buffered text not properly collapsedN)r  r   r   r   r   r  r   s   &r   test_buffering_enabled%BufferTextTest.test_buffering_enabled~  sI    //0/6eW?	Ar   c                    V P                  R .4       V P                  P                  RR4       V P                  V P                  . ROR4       R# )rU   s9   <a>1<b buffer-text='no'/>2
3<c buffer-text='yes'/>4
5</a>Tz*buffering control not reacting as expectedN)<a>1<b>2
3<c>z4
5r5  r   r   r   r  r   s   &r   test1BufferTextTest.test1  sG     	/01XZ^_KE	Gr   c                z    V P                   P                  R R4       V P                  V P                  R.R4       R# )s&   <a>1<b/>&lt;2&gt;<c/>&#32;
&#x20;3</a>Tz1<2> 
 3r>  N)r   r   r   r  r   s   &r   test2BufferTextTest.test2  s3    DdKk]?	Ar   c                    V P                  R .4       V P                  P                  RR4       V P                  V P                  . ROR4       R# )rU   r<  T buffered text not properly splitN)rB  rC  rD  rE  rH  rG  rI  r   s   &r   test3BufferTextTest.test3  sC    /01/6%I;	=r   c                    V P                  R R.4       RV P                  n        V P                  P                  RR4       V P	                  V P
                  . RO4       R# )rU   rZ   Nr<  T)rB  rD  </b>rH  </c></a>)r5  r   r`   r   r   r  r   s   &r   test4BufferTextTest.test4  sP    /1DEF+/(/6F	Hr   c                    V P                  R R.4       V P                  P                  RR4       V P                  V P                  . RO4       R# )rU   rZ   s   <a>1<b></b>2<c/>3</a>TN)	rB  rC  rD  rT  rE  rH  rU  rG  rV  rI  r   s   &r   test5BufferTextTest.test5  sD    /1DEF2D9H	Jr   c                    V P                  . RO4       V P                  P                  RR4       V P                  V P                  . ROR4       R# )rz   s   <a>1<b/>2<c></c>345</a> TrP  Nrz   rZ   rU   )	rB  rC  rD  rT  rE  rH  rU  345rV  rI  r   s   &r   test6BufferTextTest.test6  sD     + 	,5t<J.	0r   c                    V P                  . RO4       V P                  P                  RR4       V P                  V P                  . ROR4       R# )rz   s,   <a>1<b/>2<c></c>3<!--abc-->4<!--def-->5</a> TrP  Nr]  )rB  rC  rD  rT  rE  rH  rU  rG  z
<!--abc-->4z
<!--def-->5rV  rI  r   s   &r   test7BufferTextTest.test7  sG     + 	,I4PH;	=r   )r   r  N)r<   r=   r>   r?   r   r$  r`   rU   rZ   rz   r5  r9  r?  rJ  rM  rQ  rW  rZ  r_  rd  r@   rA   rB   s   @r   r  r  Y  se     E;
 (*. $& <-AGA
=HJ0= =r   r  c                   V   a  ] tR tRt o R tR t]P                  R 4       tR t	Rt
V tR# )HandlerExceptionTesti  c                     \        R V R24      h)zStartElementHandler: <>)RuntimeErrorrR   s   &&&r   rU   (HandlerExceptionTest.StartElementHandler  s    3D6;<<r   c                    V P                  \        P                  P                  VP                  4      V4       V P                  VP
                  V4       R # rI   )r   ospathbasenamefilenamerS   )r   r	  rp  funcnames   &&&&r   check_traceback_entry*HandlerExceptionTest.check_traceback_entry  s9    ))%..98DX.r   c                T   \         P                  ! R 4      pV'       d!   \        P                  P	                  V4      pMRpV'       d;   \
        P                  ! V4      ;_uu_ 4        V P                  V4       RRR4       R# V P                  V4       R#   + '       g   i     R# ; i)abs_builddirFN)	sysconfigget_config_varrm  rn  isdirr   
change_cwd_test_exception)r   src_dirhave_sources   &  r   test_exception#HandlerExceptionTest.test_exception  st     **>:''--0KK%%g..$$[1 /.   - /..s   'BB'	c                J   \         P                  P                  R R4      p\        P                  ! 4       pV P
                  Vn         VP                  RR4       V P                  R4       V P                  \        X4      ^V4       V P                  V^ ,          RR4       V P                  V^,          \         P                  P!                  V4      R	4       V P                  V^,          RR
4       V'       dM   \         P                  P#                  V4      '       d&   V P%                  RV^,          P&                  4       R# R# R#   \         dP   pT P                  TP                  ^ ,          RT4       \        P                  ! TP                  4      p Rp?EL2Rp?ii ; i)Modulesz	pyexpat.cs   <a><b><c/></b></a>Tz%the parser did not raise RuntimeErrorzStartElementHandler: <a>Nztest_pyexpat.pyrz  StartElementrU   zcall_with_frame("StartElement")rm  rn  joinr   r   rU   r   r   rj  r   r}   	traceback
extract_tb__traceback__r  rr  ro  existsassertInline)r   r|  	PYEXPAT_Cr   excentriess   &&    r   rz  $HandlerExceptionTest._test_exception  sI    GGLLK8	##%%)%=%="	>LL.5II=>
 	Wq'2""71:#46G	I""71:#%77#3#3I#>#1	3 	""71:#46K	M 277>>)44MM:!!*//+ 5;!  	>SXXa[*DcJ**3+<+<=G	>s   #E F"AFF"r   N)r<   r=   r>   r?   rU   rr  r   cpython_onlyr}  rz  r@   rA   rB   s   @r   rg  rg    s3     =/ . . + +r   rg  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )PositionTesti  c                (    V P                  R 4       R# )sN	check_posrR   s   &&&r   rU    PositionTest.StartElementHandler      sr   c                (    V P                  R 4       R# )r   Nr  rY   s   &&r   rZ   PositionTest.EndElementHandler  r  r   c                   VV P                   P                  V P                   P                  V P                   P                  3pV P	                  V P
                  \        V P                  4      8  R 4       V P                  V P
                  ,          pV P                  W#RV: RV: 24       V ;P
                  ^,          un        R# )ztoo many parser eventszExpected position z, got position N)	r   CurrentByteIndexCurrentLineNumberCurrentColumnNumberr  uptor  expected_listr   )r   eventposr"  s   &&  r   r  PositionTest.check_pos  s    {{++{{,,{{..0 			C(:(:$;;0	2%%dii0h:=xH	J		Q	r   c                   \         P                  ! 4       V n        V P                  V P                  n        V P                  V P                  n        ^ V n        . ROV n        RpV P                  P                  VR4       R# )r   s   <a>
 <b>
  <c/>
 </b>
</a>TN))r  r   r   r   )r     r   r   )r        r   )r      r     )r         r   )r      r  r   )r   r   r   rU   rZ   r  r  r   )r   xmls   & r   r
  PositionTest.test  sc    ((**.*B*B'(,(>(>%	Q 0#t$r   )r  r   r  N)
r<   r=   r>   r?   rU   rZ   r  r
  r@   rA   rB   s   @r   r  r    s     
	% 	%r   r  c                   &   a  ] tR tRt o R tRtV tR# )sf1296433Testi  c                   a R R,          p ! R R\         4      oV3R lp\        P                  ! 4       pW#n        V P	                  SVP
                  VP                  R4      4       R# )z1<?xml version='1.0' encoding='iso8859'?><s>%s</s>c                       ] tR tRtRtR# )Asf1296433Test.test_parse_only_xml_data.<locals>.SpecificExceptioni  r   N)r<   r=   r>   r?   r@   r   r   r   SpecificExceptionr    s    r   r  c                    < ShrI   r   )ry   r  s   &r   r   7sf1296433Test.test_parse_only_xml_data.<locals>.handler  s	    ##r   iso8859N  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)	Exceptionr   r   r`   r2   r   encode)r   r  r   r   r  s   &   @r   test_parse_only_xml_data&sf1296433Test.test_parse_only_xml_data  sW     BZP		 		$ ##%&-#+V\\3::i;PQr   r   N)r<   r=   r>   r?   r  r@   rA   rB   s   @r   r  r    s     R Rr   r  c                   V   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tRtV tR# )ChardataBufferTesti%  c                H    V P                  V P                  R 4      ^4       R# )i  Nr   small_buffer_testr   s   &r   test_1025_bytes"ChardataBufferTest.test_1025_bytes*      //5q9r   c                H    V P                  V P                  R 4      ^4       R# )i  Nr  r   s   &r   test_1000_bytes"ChardataBufferTest.test_1000_bytes-  r  r   c                v   \         P                  ! 4       p^Vn        V P                  \        4      ;_uu_ 4        RVn        RRR4       V P                  \        4      ;_uu_ 4        ^ Vn        RRR4       V P                  \        \        34      ;_uu_ 4        \        P                  ^,           Vn        RRR4       V P                  \        4      ;_uu_ 4        RVn        RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Le; i  + '       g   i     R# ; i)r   Ng      @)
r   r   r   r2   r   buffer_sizeOverflowErrorsysmaxsizer5   r  s   & r   test_wrong_size"ChardataBufferTest.test_wrong_size0  s    ##%z**!#F +z**!"F +
M:;;!$qF <y))!&F *) +***;;)))s/   C.'DDD'.C>	D	D$	'D8	c                   RpRp\         P                  ! 4       pV P                  Vn        RVn        ^Vn        ^ V n        VP                  V4       V P                  V P                  ^4       VP                  Vn        V P                  V P                  ^4       VP                  V4       V P                  V P                  ^4       R# )+   <?xml version='1.0' encoding='iso8859'?><s>i   Ns+  <?xml version='1.0' encoding='iso8859'?><s>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</s>)	r   r   counting_handlerr`   r  r   nr   r   r   xml1xml2r   s   &   r   test_unchanged_size&ChardataBufferTest.test_unchanged_size<  s    J!##%&*&;&;#  T# $//# 	T#r   c                (   RpRpRp\         P                  ! 4       pV P                  Vn        ^Vn        RVn        V P                  VP
                  R4       ^ V n        VP                  VR4       V P                  VP
                  R4       V P                  V P                  ^4       ^ Vn        V P                  VP                  4       V P                  VP
                  R4       \        ^
4       F  pVP                  VR4       K  	  V P                  V P                  ^4       ^Vn        V P                  VP                  4       V P                  VP
                  R4       VP                  VR4       V P                  V P                  ^4       R# )s+   <?xml version='1.0' encoding='iso8859'?><a>   FTNs+  <?xml version='1.0' encoding='iso8859'?><a>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas   bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbs  cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc</a>)r   r   r  r`   r   r  r   r  r   r8  r7   r  )r   r  r  xml3r   is   &     r   test_disabling_buffer(ChardataBufferTest.test_disabling_bufferS  sJ   J$##%&*&;&;#!++T2 T5!++T2# ++,++T2rALLu% $**+++T2T4 $r   c                8    V ;P                   ^,          un         R# r1   r  rx   s   &&r   r  #ChardataBufferTest.counting_handlerq  s    !r   c                    R RV,          ,           R,           p\         P                  ! 4       pV P                  Vn        RVn        ^Vn        ^ V n        VP                  V4       V P                  # )r     as   </s>r  )r   r   r  r`   r  r   r  r   )r   
buffer_lenr  r   s   &&  r   r  $ChardataBufferTest.small_buffer_testt  s_    <tj?PPSZZ##%&*&;&;#!Svvr   c                   RpRp\         P                  ! 4       pV P                  Vn        ^Vn        RVn        V P                  VP
                  R4       ^ V n        VP                  VR4       V;P
                  ^,          un        V P                  VP
                  R4       VP                  VR4       V P                  V P                  ^4       R# )s.   <?xml version='1.0' encoding='iso8859'?><a><s>r  F   TNs.  <?xml version='1.0' encoding='iso8859'?><a><s>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa  aaa</s><s>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</s></a>	r   r   r  r`   r   r  r   r  r   r  s   &   r   test_change_size_1%ChardataBufferTest.test_change_size_1  s    N8##%&*&;&;#!++T2T5!a++T2T4 #r   c                   RpRp\         P                  ! 4       pV P                  Vn        ^Vn        RVn        V P                  VP
                  R4       ^ V n        VP                  VR4       VP
                  ^,          Vn        V P                  VP
                  R4       VP                  VR4       V P                  V P                  ^4       R# )s/   <?xml version='1.0' encoding='iso8859'?><a>a<s>r  Fr  TNs.  <?xml version='1.0' encoding='iso8859'?><a>a<s>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar  r  r  s   &   r   test_change_size_2%ChardataBufferTest.test_change_size_2  s    O8##%&*&;&;#!++T2T5!#//14++T2T4 #r   r  N)r<   r=   r>   r?   r  r  r  r  r  r  r  r  r  r@   rA   rB   s   @r   r  r  %  s7     
::
'$.%<	$ $ $r   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )MalformedInputTesti  c                    R p\         P                  ! 4       p VP                  VR4       V P                  4        R#   \         P                   d'   pT P                  \        T4      R4        Rp?R# Rp?ii ; i)s    
Tz unclosed token: line 2, column 0N)r   r   r   r   
ExpatErrorr   r   r   r  r   r   s   &   r   rJ  MalformedInputTest.test1  sb    ##%	ILLd#IIK 	ISV%GHH	Is   "= A8A33A8c                    R p\         P                  ! 4       pRpV P                  \         P                  V4      ;_uu_ 4        VP	                  VR4       RRR4       R#   + '       g   i     R# ; i)s   <?xml version='1.0'?>
z3XML declaration not well-formed: line 1, column \d+TN)r   r   r   r  r   )r   r  r   err_patterns   &   r   rM  MalformedInputTest.test2  sQ    2##%L##E$4$4kBBLLd# CBBBs   AA0	r   N)r<   r=   r>   r?   rJ  rM  r@   rA   rB   s   @r   r  r    s     I$ $r   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )ErrorMessageTesti  c                    V P                  \        P                  \        P                  \        P                  \        P                  ,          ,          4       R # rI   )r   r   XML_ERROR_SYNTAXmessagescodesr   s   &r   
test_codesErrorMessageTest.test_codes  s4    00f6M6M)NO	Qr   c                >   R p\         P                  ! 4       p VP                  VR4       V P                  4        R#   \         P                   dK   pT P                  TP                  \        P                  \        P                  ,          4        Rp?R# Rp?ii ; i)   <TN)
r   r   r   r   r  r   r   r   r  XML_ERROR_UNCLOSED_TOKENr  s   &   r   test_expaterror ErrorMessageTest.test_expaterror  sw    ##%	LLLd#IIK 	LQVV#\\&*I*IJL L	Ls   "= B?BBr   N)r<   r=   r>   r?   r  r   r@   rA   rB   s   @r   r  r    s     Q
L Lr   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )ForeignDTDTestsi  c                  a . oV3R  lp\         P                  ! 4       pVP                  R4       VP                  \         P                  4       Wn        VP                  R4       V P                  SR.4       . SR&   \         P                  ! 4       pVP                  4        VP                  \         P                  4       Wn        VP                  R4       V P                  SR.4       R# )c                 ,   < SP                  W234       ^# r   r  r   r~   	system_id	public_idhandler_call_argss   &&&&r   resolve_entity<ForeignDTDTests.test_use_foreign_dtd.<locals>.resolve_entity      $$i%;<r   Ts   <?xml version='1.0'?><element/>N:NNN)NNr   r   UseForeignDTDSetParamEntityParsingXML_PARAM_ENTITY_PARSING_ALWAYSr   r   r   r   r  r   r
  s   &  @r   test_use_foreign_dtd$ForeignDTDTests.test_use_foreign_dtd  s     	 ##%T"$$U%J%JK*8'78*\N;  "!##%$$U%J%JK*8'78*\N;r   c                   a . oV3R  lp\         P                  ! 4       pVP                  R4       VP                  \         P                  4       Wn        VP                  R4       V P                  SR.4       R# )c                 ,   < SP                  W234       ^# r  r  r  s   &&&&r   r  CForeignDTDTests.test_ignore_use_foreign_dtd.<locals>.resolve_entity  r  r   Ts@   <?xml version='1.0'?><!DOCTYPE foo PUBLIC 'bar' 'baz'><element/>N)barbazr  r  s   &  @r   test_ignore_use_foreign_dtd+ForeignDTDTests.test_ignore_use_foreign_dtd  sl     	 ##%T"$$U%J%JK*8'O	Q*^,<=r   r   N)r<   r=   r>   r?   r  r  r@   rA   rB   s   @r   r  r    s     <8> >r   r  c                   2   a  ] tR tRt o R tR tR tRtV tR# )ParentParserLifetimeTesti  c                T    \         P                  ! 4       pVP                  R 4      p?R # rI   r   r   r  )r   r   	subparsers   &  r   2test_parent_parser_outlives_its_subparsers__singleKParentParserLifetimeTest.test_parent_parser_outlives_its_subparsers__single  s%    ##%55d;	 r   c                v    \         P                  ! 4       pVP                  R 4      pVP                  R 4      p?R # rI   r  )r   r   subparser_onesubparser_twos   &   r   4test_parent_parser_outlives_its_subparsers__multipleMParentParserLifetimeTest.test_parent_parser_outlives_its_subparsers__multiple  s5    ##%99$?99$? r   c                x    \         P                  ! 4       pVP                  R 4      pVP                  R 4      p??R # rI   r  )r   r   r   subsubparsers   &   r   1test_parent_parser_outlives_its_subparsers__chainJParentParserLifetimeTest.test_parent_parser_outlives_its_subparsers__chain  s8    ##%55d;	 ;;DA r   r   N)	r<   r=   r>   r?   r!  r&  r*  r@   rA   rB   s   @r   r  r    s      r   r  c                   2   a  ] tR tRt o R tR tR tRtV tR# )ReparseDeferralTesti  c                Z   \         P                  ! 4       p\         P                  R8  pV P                  VP	                  4       V4       VP                  R4       V P                  VP	                  4       R4       VP                  R4       V P                  VP	                  4       V4       R# )r   FTNr   r  r   )r   r   version_infor   GetReparseDeferralEnabledSetReparseDeferralEnabled)r   r   enableds   &  r   test_getter_setter_round_trip1ReparseDeferralTest.test_getter_setter_round_trip  s    ##%%%2f668'B((/f668%@((.f668'Br   c                  a \         P                  R	8  d$   V P                  R\         P                   R24       . oV3R lp\         P                  ! 4       pWn        V P                  VP                  4       4       R
 F  pVP                  VR4       K  	  V P                  S. 4       VP                  RR4       V P                  SR.4       R# )r   zExpat z" does not support reparse deferralc                 *   < SP                  V 4       R # rI   r  rS   _starteds   &&r   start_elementHReparseDeferralTest.test_reparse_deferral_enabled.<locals>.start_element,      NN4 r   Fr   TdocNr/  s   <docs   />)	r   r0  skipTestr   rU   r  r1  r   r   r   r;  r   chunkr:  s   &   @r   test_reparse_deferral_enabled1ReparseDeferralTest.test_reparse_deferral_enabled%  s    	)MMF5#5#5"6 75 5 6 	! ##%%2"88:;%ELL& & 	"%S$5'*r   c                4  a . oV3R  lp\         P                  ! 4       pWn        \         P                  R8  d   VP	                  R4       V P                  VP                  4       4       R F  pVP                  VR4       K  	  V P                  SR.4       R# )c                 *   < SP                  V 4       R # rI   r  r8  s   &&r   r;  IReparseDeferralTest.test_reparse_deferral_disabled.<locals>.start_element@  r=  r   Fr>  Nr/  r?  )	r   r   rU   r0  r2  r8  r1  r   r   rA  s   &   @r   test_reparse_deferral_disabled2ReparseDeferralTest.test_reparse_deferral_disabled=  s    	! ##%%2"*,,U399;<%ELL& & 	5'*r   r   N)	r<   r=   r>   r?   r4  rC  rH  r@   rA   rB   s   @r   r-  r-    s     C+0+ +r   r-  __main__)"rm  r  rv  unittestr  ior   r
  r   test.supportr   xml.parsersr   xml.parsers.expatr   r   TestCaser
   r_   rE   r   r   r  rg  r  r  r  r  r  r  r  r-  r<   mainr   r   r   <module>rR     sY   
 
      "  $ !%Gx(( %GP6|;!! |;|3X.. 3B!/H%% !/H\=X&& \=@6+8,, 6+t%8$$ %>RH%% R&x$** x$t$** $$Lx(( L"1>h'' 1>h!x00 !H3+(++ 3+l zMMO r   