;
Ìâ"Ic            
   @   s¸   d  d l  Z  d  d l Z d  d l Z d  d l Z d  d l m Z d  d l m Z Gd „  d ƒ Z e	 d ƒ d k o" e
 Z d „  Z
 e Z d	 „  Z n Gd
 „  d e j ƒ Z d „  Z d S(   i    N(   u   support(   u   BytesIOc             B   sÎ   |  Ee  Z d  Z d Z d Z d Z d Z d Z d Z	 d Z
 d „  Z d „  Z d „  Z d „  Z d „  Z d	 „  Z d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d S(   u    i   i    u   í»®c             C   s‡   |  j  d  k o t j |  j ƒ |  _  n |  j  j |  _ |  j  j |  _ |  j  j |  _ |  j  j	 |  _
 |  j  j |  _ |  j  j |  _ d  S(   N(   u   codecu   Noneu   codecsu   lookupu   encodingu   encodeu   decodeu   streamreaderu   readeru   streamwriteru   writeru   incrementalencoderu   incrementaldecoder(   u   self(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   setUp   s    c             C   sÞ   g  } x] |  j  D]R } | j d ƒ } | j ƒ  } | d k p t ‚ d „  | Dƒ } | j | ƒ q Wxq t | Œ  D]c \ } } |  j | ƒ d } |  j | | j d ƒ ƒ |  j o! |  j | |  j	 | ƒ d ƒ qs qs Wd  S(   Ns   
s    c             S   s   g  } |  ] } | | d  q
 S(   s   
(    (   u   .0u   _[1]u   line(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu
   <listcomp>'   s    i    u   utf-8(
   u   tstringu   splitu   popu   AssertionErroru   appendu   zipu   decodeu   assertEqualu   roundtriptestu   encode(   u   selfu   tstring_linesu   bu   linesu   lastu   nativeu   utf8u   u(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_chunkcoding!   s    
  
c             C   sã   xÜ |  j  D]Ñ \ } } } t | t ƒ o |  j } n
 |  j } | o | | | ƒ d } | |  j k o& |  j t | ƒ t k t | ƒ ƒ n# |  j t | ƒ t k t | ƒ ƒ |  j | | ƒ q
 |  j	 t
 | | | ƒ q
 Wd  S(   Ni    (   u
   codectestsu
   isinstanceu   bytesu   decodeu   encodeu   assert_u   typeu   stru   assertEqualu   assertRaisesu   UnicodeError(   u   selfu   sourceu   schemeu   expectedu   funcu   result(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_errorhandle/   s    
 	&"c             C   s9   |  j  o d  Sd } |  j |  j | d ƒ d d ƒ d  S(   Nu   à¬“à¬£à­  nd eggsu   xmlcharrefreplacei    s   &#2835;&#2851;&#2912; nd eggs(   u   has_iso10646u   assertEqualu   encode(   u   selfu   s(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_xmlcharrefreplace?   s    
c                s‹   |  j  o d  Sd d l m ‰  ‡  f d †  } t j d | ƒ |  j o |  j \ } } n d } d } |  j |  j | d ƒ d | ƒ d  S(   Ni    (   u   codepoint2namec                s­   t  |  t ƒ p t d |  ƒ ‚ n g  } xj |  j |  j |  j … D]O } t | ƒ ˆ  k o | j d ˆ  t | ƒ ƒ qD | j d t | ƒ ƒ qD Wd j | ƒ |  j f S(   Nu   don't know how to handle %ru   &%s;u   &#%d;u    (	   u
   isinstanceu   UnicodeEncodeErroru	   TypeErroru   objectu   startu   endu   ordu   appendu   join(   u   excu   lu   c(   u   codepoint2name(    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   xmlcharnamereplaceO   s     u   test.xmlcharnamereplaceu   Â«â„œÂ» = âŒ©áˆ´âŒªs*   &laquo;&real;&raquo; = &lang;&#4660;&rang;(   u   has_iso10646u   html.entitiesu   codepoint2nameu   codecsu   register_erroru   xmlcharnametestu   assertEqualu   encode(   u   selfu   xmlcharnamereplaceu   sinu   sout(    (   u   codepoint2nameu=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_customreplace_encodeI   s    

c                sn   ‡  f d †  } t  j d | ƒ xH d d d g g  d  t ƒ  d d f D]" ‰  |  j t |  j |  j d ƒ qD Wd  S(   Nc                s   ˆ  |  j  f S(   N(   u   end(   u   exc(   u   ret(    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu	   myreplacee   s    u   test.cjktesti   i   i   s   strings    (   u   codecsu   register_erroru   Noneu   objectu   assertRaisesu	   TypeErroru   encodeu   unmappedunicode(   u   selfu	   myreplace(    (   u   retu=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_callback_wrong_objectsd   s    % c             C   sy   d „  } t  j d | ƒ |  j |  j d |  j d d ƒ d ƒ d „  } t  j d | ƒ |  j t |  j |  j d ƒ d  S(	   Nc             S   s   d t  |  j ƒ f S(   Nu   x(   u   intu   end(   u   exc(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu	   myreplacen   s    u   test.cjktestu   abcdu   efghs	   abcdxefghi	   c             S   s   d t  j d f S(   Nu   xi   (   u   sysu   maxsize(   u   exc(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu	   myreplacet   s    (   s	   abcdxefghi	   (   u   codecsu   register_erroru   assertEqualu   encodeu   unmappedunicodeu   assertRaisesu
   IndexError(   u   selfu	   myreplace(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_callback_long_indexm   s    		c             C   s9   d „  } t  j d | ƒ |  j t |  j |  j d ƒ d  S(   Nc             S   s   d S(   Nu   x(   u   xN(   u   None(   u   exc(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu	   myreplace{   s    u   test.cjktest(   u   codecsu   register_erroru   assertRaisesu	   TypeErroru   encodeu   unmappedunicode(   u   selfu	   myreplace(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_callback_None_indexz   s    	c                sS   ‡  f d †  ‰  d ˆ  _  t j d ˆ  ƒ |  j |  j d |  j d d ƒ d ƒ d  S(	   Nc                s5   ˆ  j  d k o ˆ  j  d 8_  d Sd |  j f Sd  S(   Ni    i   u   REPLACEDu   TERMINAL(   u   REPLACEDi    (   u   limitu   end(   u   exc(   u	   myreplace(    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu	   myreplace‚   s    i   u   test.cjktestu   abcdu   efghs4   abcdREPLACEDabcdREPLACEDabcdREPLACEDabcdTERMINALefghi	   (   s4   abcdREPLACEDabcdREPLACEDabcdREPLACEDabcdTERMINALefghi	   (   u   limitu   codecsu   register_erroru   assertEqualu   encodeu   unmappedunicode(   u   self(    (   u	   myreplaceu=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_callback_backward_index   s    	c             C   sD   d „  } t  j d | ƒ |  j |  j d |  j d d ƒ d ƒ d  S(   Nc             S   s   d |  j  d f S(   Nu   REPLACEDi   (   u   end(   u   exc(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu	   myreplace   s    u   test.cjktestu   abcdu   efghs   abcdREPLACEDghi	   (   s   abcdREPLACEDghi	   (   u   codecsu   register_erroru   assertEqualu   encodeu   unmappedunicode(   u   selfu	   myreplace(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_callback_forward_indexŽ   s    	c             C   s9   d „  } t  j d | ƒ |  j t |  j |  j d ƒ d  S(   Nc             S   s   d S(   Nu   TERMid   (   u   TERMid   (    (   u   exc(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu	   myreplace–   s    u   test.cjktest(   u   codecsu   register_erroru   assertRaisesu
   IndexErroru   encodeu   unmappedunicode(   u   selfu	   myreplace(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_callback_index_outofbound•   s    	c             C   sò   t  j d ƒ } xÜ d  g t t d d ƒ ƒ d d d d d g D]« } | t |  j d ƒ ƒ } t ƒ  } |  j ƒ  } xW | d  k	 o | j | ƒ } n | j ƒ  } | p Pn | j	 | ƒ } | j
 | ƒ qv |  j | j ƒ  |  j d	 ƒ q? Wd  S(
   Nu   utf-8i   i!   i@   i€   i   i   i   i    (   u   codecsu	   getreaderu   Noneu   listu   rangeu   BytesIOu   tstringu   incrementalencoderu   readu   encodeu   writeu   assertEqualu   getvalue(   u   selfu
   UTF8Readeru   sizehintu   istreamu   ostreamu   encoderu   datau   e(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_incrementalencoderœ   s      	c             C   sØ   t  j d ƒ } xÂ d  d g t t d d ƒ ƒ d d d d d	 g D]Ž } t |  j d
 ƒ } | t ƒ  ƒ } |  j ƒ  } x: | j | ƒ } | p Pqy | j	 | ƒ } | j
 | ƒ qy |  j | j ƒ  |  j d ƒ qB Wd  S(   Nu   utf-8iÿÿÿÿi   i!   i@   i€   i   i   i   i    (   u   codecsu	   getwriteru   Noneu   listu   rangeu   BytesIOu   tstringu   incrementaldecoderu   readu   decodeu   writeu   assertEqualu   getvalue(   u   selfu
   UTF8Writeru   sizehintu   istreamu   ostreamu   decoderu   datau   u(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_incrementaldecoder°   s     c             C   sÄ   |  j  } |  j ƒ  } |  j t | j | d ƒ d | _ |  j | j | d ƒ d ƒ | j ƒ  d „  } t	 j
 d | ƒ d | _ |  j | j | d ƒ d ƒ d | _ |  j | j | d ƒ d ƒ d  S(   Nu   ignores    c             S   s   d |  j  f S(   Nu   called(   u   end(   u   exc(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   tempreplaceË   s    u   test.incremental_error_callbacks   calledT(   u   unmappedunicodeu   incrementalencoderu   assertRaisesu   UnicodeEncodeErroru   encodeu   Trueu   errorsu   assertEqualu   resetu   codecsu   register_error(   u   selfu   invu   eu   tempreplace(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu&   test_incrementalencoder_error_callbackÁ   s    		
			c             C   s
  t  j d ƒ } xô d d d g D]ã } xÚ d  d g t t d d ƒ ƒ d d	 d
 d d g D]¦ } |  j t |  j d ƒ ƒ } | t ƒ  ƒ } t | | ƒ } xF | | ƒ } | p Pn | d k o | j	 | ƒ q› | j
 | ƒ q› |  j | j ƒ  |  j d ƒ qX Wq Wd  S(   Nu   utf-8u   readu   readlineu	   readlinesiÿÿÿÿi   i!   i@   i€   i   i   i   i    (   u   codecsu	   getwriteru   Noneu   listu   rangeu   readeru   BytesIOu   tstringu   getattru
   writelinesu   writeu   assertEqualu   getvalue(   u   selfu
   UTF8Writeru   nameu   sizehintu   istreamu   ostreamu   funcu   data(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_streamreaderÕ   s"      c       	      C   s  d } t  j d ƒ } x| D]ú } xñ d  g t t d d ƒ ƒ d d d	 d
 d g D]À } | t |  j d ƒ ƒ } |  j t ƒ  ƒ } t | | ƒ } x` | d  k	 o | | ƒ } n
 | ƒ  } | p Pn | d k o | j	 | ƒ q• | j
 | ƒ q• |  j | j ƒ  |  j d ƒ qR Wq Wd  S(   Nu   readu   readlineu	   readlinesu   utf-8i   i!   i@   i€   i   i   i   i    (   u   readu   readlineu	   readlines(   u   codecsu	   getreaderu   Noneu   listu   rangeu   BytesIOu   tstringu   writeru   getattru
   writelinesu   writeu   assertEqualu   getvalue(	   u   selfu	   readfuncsu
   UTF8Readeru   nameu   sizehintu   istreamu   ostreamu   funcu   data(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_streamwriterè   s(      	N(   u   __name__u
   __module__u   encodingu   Noneu   codecu   tstringu
   codectestsu   roundtriptestu   has_iso10646u   xmlcharnametestu   unmappedunicodeu   setUpu   test_chunkcodingu   test_errorhandleu   test_xmlcharrefreplaceu   test_customreplace_encodeu   test_callback_wrong_objectsu   test_callback_long_indexu   test_callback_None_indexu   test_callback_backward_indexu   test_callback_forward_indexu   test_callback_index_outofboundu   test_incrementalencoderu   test_incrementaldecoderu&   test_incrementalencoder_error_callbacku   test_streamreaderu   test_streamwriter(   u
   __locals__(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   TestBase   s0   
	
			
												u   TestBaseu   ð’…i   c             C   sH   |  d k o- t  d |  d d ?ƒ t  d |  d d @ƒ St  |  ƒ Sd  S(   Ni   i Ø  i
   i Ü  iÿ  (   u   _unichr(   u   v(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   chr  s    c             C   sN   t  |  ƒ d k o- d t |  d ƒ d d >t |  d ƒ d St |  ƒ Sd  S(   Ni   i   i    i Ø  i
   i   i Ü  (   u   lenu   _ordu   ord(   u   c(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   ord	  s    c             B   s_   |  Ee  Z g  Z g  Z g  Z d  „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d „  Z d S(   c             O   sU   t  j j |  | | Ž y |  j ƒ  Wn* t k
 o t j d |  j ƒ ‚ Yn Xd  S(   Nu   Could not retrieve (   u   unittestu   TestCaseu   __init__u   open_mapping_fileu   IOErroru   supportu   TestSkippedu
   mapfileurl(   u   selfu   argsu   kw(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   __init__  s
    c             C   s   t  j |  j ƒ S(   N(   u   supportu   open_urlresourceu
   mapfileurl(   u   self(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   open_mapping_file  s    c             C   s/   |  j  j d ƒ o |  j ƒ  n |  j ƒ  d  S(   Nu   .xml(   u
   mapfileurlu   endswithu   _test_mapping_file_ucmu   _test_mapping_file_plain(   u   self(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_mapping_file  s    c             C   s™  d „  } i  } xƒ|  j  ƒ  D]u} | p Pn | j d ƒ d j ƒ  j ƒ  } t | ƒ d k o q n t | d ƒ } | d k o t | d @g ƒ } n¦ | d k o4 t | d ?| d	 ?d @| d
 ?d @| d @g ƒ } ne | d k o) t | d	 ?| d
 ?d @| d @g ƒ } n/ | d k o t | d
 ?| d @g ƒ } n q | | d ƒ } t | ƒ d k p | | k o q n | | | <|  j | | ƒ q Wd  S(   Nc             S   s(   d  j  t t t t |  j d ƒ ƒ ƒ ƒ S(   u    u   +(   u   joinu   mapu   chru   evalu   split(   u   s(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   <lambda>&  s    u   #i    i   i   iÿ   i   i   i   i   i   i   i   iýÿ  (   u   open_mapping_fileu   splitu   stripu   lenu   evalu   bytesu   ordu
   _testpoint(   u   selfu   unichrsu   urt_wau   lineu   datau   csetvalu   csetchu   unich(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   _test_mapping_file_plain%  s4    	  
c             C   s€   |  j  ƒ  j ƒ  } t j d | ƒ } xU | D]M \ } } t t | d ƒ ƒ } t d „  | j ƒ  Dƒ ƒ } |  j | | ƒ q+ Wd  S(   Nu'   <a u="([A-F0-9]{4})" b="([0-9A-F ]+)"/>i   c             s   s   |  ] } t  | d  ƒ Vq d S(   i   N(   u   int(   u   .0u   c(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu	   <genexpr>J  s    (	   u   open_mapping_fileu   readu   reu   findallu   chru   intu   bytesu   splitu
   _testpoint(   u   selfu   ucmdatau   ucu   uniu   codedu   unichu   codech(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   _test_mapping_file_ucmE  s     c             C   s%   x |  j  D] } |  j | Œ  q
 Wd  S(   N(   u   supmapsu
   _testpoint(   u   selfu   mapping(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   test_mapping_supplementalM  s    
 c             C   sp   | | f |  j  k o  |  j | j |  j ƒ | ƒ n | | f |  j k o  |  j t | |  j ƒ | ƒ n d  S(   N(   u   pass_enctestu   assertEqualu   encodeu   encodingu   pass_dectestu   str(   u   selfu   csetchu   unich(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu
   _testpointQ  s     N(   u   __name__u
   __module__u   pass_enctestu   pass_dectestu   supmapsu   __init__u   open_mapping_fileu   test_mapping_fileu   _test_mapping_file_plainu   _test_mapping_file_ucmu   test_mapping_supplementalu
   _testpoint(   u
   __locals__(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   TestBase_Mapping  s   
				 		u   TestBase_Mappingc             C   s   d d l  m } | j |  S(   Ni    (   u   cjkencodings_test(   u   testu   cjkencodings_testu
   teststring(   u   encodingu   cjkencodings_test(    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   load_teststringW  s    (   u   sysu   codecsu   unittestu   reu   testu   supportu   iou   BytesIOu   TestBaseu   lenu   chru   _unichru   ordu   _ordu   TestCaseu   TestBase_Mappingu   load_teststring(    (    (    u=   /mit/python/lib/python3.0/test/test_multibytecodec_support.pyu   <module>   s   ô	G