;
"Ic            
   @   s  d  d l  Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l Z Gd   d  Z Gd   d e	  Z
 Gd   d e	  Z Gd   d	 e  Z Gd
   d e  Z Gd   d e  Z Gd   d e  Z Gd   d e  Z Gd   d e j  Z d   Z e d k o e   n d S(   i    Nc             B   s    |  Ee  Z d    Z d   Z d S(   c             C   s   d |  _  d  S(   Ni    (   u   pos(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __init__   s    c             C   sc   |  j  } | } | d k  o t | j  | } n | | j k o t | j  |  _  n d | f S(   Ni    u   <?>(   u   posu   lenu   objectu   start(   u   selfu   excu   oldposu   realpos(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   handle
   s    	N(   u   __name__u
   __module__u   __init__u   handle(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu	   PosReturn   s   
	u	   PosReturnc             B   s   |  Ee  Z d    Z d S(   c             C   s)   t  j |  d d d d d  g  |  _ d  S(   Nu   asciiu    i    i   u   bad(   u   UnicodeEncodeErroru   __init__u   start(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __init__   s    N(   u   __name__u
   __module__u   __init__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   BadStartUnicodeEncodeError   s   
u   BadStartUnicodeEncodeErrorc             B   s   |  Ee  Z d    Z d S(   c             C   s)   t  j |  d d d d d  g  |  _ d  S(   Nu   asciiu    i    i   u   bad(   u   UnicodeEncodeErroru   __init__u   object(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __init__   s    N(   u   __name__u
   __module__u   __init__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   BadObjectUnicodeEncodeError   s   
u   BadObjectUnicodeEncodeErrorc             B   s   |  Ee  Z d    Z d S(   c             C   s,   t  j |  d t d  d d d  |  ` d  S(   Nu   asciis    i    i   u   bad(   u   UnicodeDecodeErroru   __init__u	   bytearrayu   end(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __init__#   s    "N(   u   __name__u
   __module__u   __init__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   NoEndUnicodeDecodeError"   s   
u   NoEndUnicodeDecodeErrorc             B   s   |  Ee  Z d    Z d S(   c             C   s/   t  j |  d t d  d d d  g  |  _ d  S(   Nu   asciis    i    i   u   bad(   u   UnicodeDecodeErroru   __init__u	   bytearrayu   object(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __init__)   s    "N(   u   __name__u
   __module__u   __init__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   BadObjectUnicodeDecodeError(   s   
u   BadObjectUnicodeDecodeErrorc             B   s   |  Ee  Z d    Z d S(   c             C   s#   t  j |  d d d d  |  ` d  S(   Nu    i    i   u   bad(   u   UnicodeTranslateErroru   __init__u   start(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __init__/   s    N(   u   __name__u
   __module__u   __init__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   NoStartUnicodeTranslateError.   s   
u   NoStartUnicodeTranslateErrorc             B   s   |  Ee  Z d    Z d S(   c             C   s#   t  j |  d d d d  |  ` d  S(   Nu    i    i   u   bad(   u   UnicodeTranslateErroru   __init__u   end(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __init__5   s    N(   u   __name__u
   __module__u   __init__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   NoEndUnicodeTranslateError4   s   
u   NoEndUnicodeTranslateErrorc             B   s   |  Ee  Z d    Z d S(   c             C   s#   t  j |  d d d d  |  ` d  S(   Nu    i    i   u   bad(   u   UnicodeTranslateErroru   __init__u   object(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __init__;   s    N(   u   __name__u
   __module__u   __init__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   NoObjectUnicodeTranslateError:   s   
u   NoObjectUnicodeTranslateErrorc             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   Z d   Z d   Z d   Z d   Z d   Z d S(   c             C   sB   d } |  j  | j d d  d  |  j  | j d d  d  d  S(   Nu   スパモ änd eggsu   asciiu   xmlcharrefreplaces&   &#12473;&#12497;&#12514; &#228;nd eggsu   latin-1s!   &#12473;&#12497;&#12514; nd eggs(   u   assertEqualu   encode(   u   selfu   s(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_xmlcharrefreplaceA   s    c             C   s   d   } t  j d |  d } d } |  j | j d d  |  d } |  j | j d d  |  d } |  j | j d	 d  |  d  S(
   Nc             S   s   t  |  t  p t d |    n g  } xt |  j |  j |  j  D]Y } y% | j d t j j	 t
 |   WqD t k
 o | j d t
 |   YqD XqD Wd j |  |  j f S(   Nu   don't know how to handle %ru   &%s;u   &#%d;u    (   u
   isinstanceu   UnicodeEncodeErroru	   TypeErroru   objectu   startu   endu   appendu   htmlu   entitiesu   codepoint2nameu   ordu   KeyErroru   join(   u   excu   lu   c(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   xmlcharnamereplaceS   s     %!u   test.xmlcharnamereplaceu   «ℜ» = 〈ሴ€〉s0   &laquo;&real;&raquo; = &lang;&#4660;&euro;&rang;u   asciis$   &real; = &lang;&#4660;&euro;&rang;u   latin-1s   &real; = &lang;&#4660;&rang;u   iso-8859-15(   u   codecsu   register_erroru   assertEqualu   encode(   u   selfu   xmlcharnamereplaceu   sinu   sout(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_xmlcharnamereplaceO   s    	
c             C   s   d   } t  j d |  d } d } |  j | j d d  |  d } |  j | j d d  |  d } |  j | j d	 d  |  d  S(
   Nc             S   s   t  |  t  p t d |    n g  } xD |  j |  j |  j  D]) } | j t j | d t	 |    qD Wd d j
 |  |  j f S(   Nu   don't know how to handle %ru   0x%xu
   [1m%s[0mu   , (   u
   isinstanceu   UnicodeEncodeErroru	   TypeErroru   objectu   startu   endu   appendu   unicodedatau   nameu   ordu   join(   u   excu   lu   c(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   uninamereplacer   s     'u   test.uninamereplaceu   ¬ሴ€耀sN   [1mNOT SIGN, ETHIOPIC SYLLABLE SEE, EURO SIGN, CJK UNIFIED IDEOGRAPH-8000[0mu   asciisE   [1mETHIOPIC SYLLABLE SEE, EURO SIGN, CJK UNIFIED IDEOGRAPH-8000[0mu   latin-1sA   [1mETHIOPIC SYLLABLE SEE[0m[1mCJK UNIFIED IDEOGRAPH-8000[0mu   iso-8859-15(   u   codecsu   register_erroru   assertEqualu   encode(   u   selfu   uninamereplaceu   sinu   sout(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_uninamereplacei   s    		
c             C   s!  d } t  j d k o | t t  j  7} n d } t  j d k o | t d t  j d  7} n |  j | j d d  |  d } t  j d k o | t d t  j d  7} n |  j | j d d  |  d	 } t  j d k o | t d t  j d  7} n |  j | j d
 d  |  d  S(   Nu   a¬ሴ€耀i  s   a\xac\u1234\u20ac\u8000u   \U%08xu   asciiu   backslashreplaces   a\u1234\u20ac\u8000u   latin-1s   a\u1234\u8000u   iso-8859-15(   u   sysu
   maxunicodeu   chru   bytesu   assertEqualu   encode(   u   selfu   sinu   sout(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_backslashescape   s    c             C   sd   d   } t  j d |  d } d } |  j | j d d  |  d } |  j t | j d d  d  S(   Nc             S   sc   t  |  t  p t d |    n |  j |  j |  j  j d  o d |  j d f S|   d  S(   Nu   don't know how to handle %rs   u    i   (   u
   isinstanceu   UnicodeDecodeErroru	   TypeErroru   objectu   startu   endu
   startswith(   u   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   relaxedutf8   s
    #u   test.relaxedutf8s   a bcüu	   a b cü  u   utf-8s   (   u   codecsu   register_erroru   assertEqualu   decodeu   assertRaisesu   UnicodeError(   u   selfu   relaxedutf8u   sinu   sout(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_decoderelaxedutf8   s    	
c             C   s   t  d   d D  } d } d } |  j t j | d |  d |  d } |  j t t j | d |  d | t d	  <d
 } d } |  j t j | d |  d |  d | t d	  <|  j t t j | d |  d  S(   Nc             s   s4   |  ]* } t  |  t d  | j   d  f Vq d S(   i   u   asciiN(   u   ordu   bytesu   upper(   u   .0u   c(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu	   <genexpr>   s    u   abcdefghu   abcs   AABBCCu   stricti    u   abcAs   XYZu   ?u   abcDEFs   AABBCCXYZXYZXYZu   replaceu   XYZ(   u   dictu   assertEqualsu   codecsu   charmap_encodeu   assertRaisesu   UnicodeErroru   ordu	   TypeError(   u   selfu   charmapu   sinu   sout(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_charmapencode   s    ##c             C   s   |  j  t d j d  t j d k oq d   } |  j d j d d  d  |  j d j d d  d  t j d	 |  |  j d j d d	  d
  n d  S(   Ns        u   unicode-internali  c             S   s(   t  |  t  p t d |    n d S(   Nu   don't know how to handle %ru   i   (   u   i   (   u
   isinstanceu   UnicodeDecodeErroru	   TypeError(   u   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   handler_unicodeinternal   s    u   ignoreu    u   replaceu    �u   test.huiu     (   u   assertRaisesu   UnicodeDecodeErroru   decodeu   sysu
   maxunicodeu   assertEqualu   codecsu   register_error(   u   selfu   handler_unicodeinternal(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_decodeunicodeinternal   s     	c             C   s  d   } t  j d |  d   } t  j d |  d } |  j | j d d  d  |  j | j d d  d  |  j d	 j d
 d  d  |  j d j d
 d  d  |  j t  j d d i d t d  6 d d  |  j d j d d  d  |  j d j d d  d  d  S(   Nc                s   t    j   j  } t   t  o   f d   | D } n; t   t  o   f d   | D } n t d     d d j |    j f S(   Nc                s,   g  } |  ] } | d  t    j |  q
 S(   u   <%d>(   u   ordu   object(   u   .0u   _[1]u   pos(   u   exc(    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu
   <listcomp>   s    c                s&   g  } |  ] } | d    j  | q
 S(   u   <%d>(   u   object(   u   .0u   _[1]u   pos(   u   exc(    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu
   <listcomp>   s    u   don't know how to handle %ru   [%s]u    (   u   rangeu   startu   endu
   isinstanceu   UnicodeEncodeErroru   UnicodeDecodeErroru	   TypeErroru   join(   u   excu   ru   l(    (   u   excu5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   handler1   s    u   test.handler1c                sg   t    t  p t d     n   f d   t   j   j  D } d d j |    j d f S(   Nu   don't know how to handle %rc                s&   g  } |  ] } | d    j  | q
 S(   u   <%d>(   u   object(   u   .0u   _[1]u   pos(   u   exc(    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu
   <listcomp>   s    u   [%s]u    i   (   u
   isinstanceu   UnicodeDecodeErroru	   TypeErroru   rangeu   startu   endu   join(   u   excu   l(    (   u   excu5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   handler2   s    %u   test.handler2s    u   asciiu    [<129>][<128>][<255>]u    [<129>][<128>]s   \u3042\u3xxxu   unicode-escapeu   あ[<92><117><51><120>]xxs   \u3042\u3xxu   あ[<92><117><51><120><120>]s   abcu   zu   ai    u   z[<98>][<99>]u   güßrks   g[<252><223>]rku   güßs   g[<252><223>](   u   codecsu   register_erroru   assertEqualu   decodeu   charmap_decodeu   ordu   encode(   u   selfu   handler1u   handler2u   s(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_callbacks   s4    	
	#c                s   d d d d d g } x+ | D]# } t  j d | t  j |   q Wd   | d   | D 7} xk   f d	   d D D]S } xJ d D]B } x9 | D]1 } y | j | |  Wq t k
 o Yq Xq Wq Wqt Wd  S(   Nu   strictu   ignoreu   replaceu   xmlcharrefreplaceu   backslashreplaceu   test.i  c             S   s   g  } |  ] } | d  | q
 S(   u   test.(    (   u   .0u   _[1]u   err(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu
   <listcomp>'  s    c                s   g  } |  ] } | |   q
 S(    (    (   u   .0u   _[1]u   s(   u   l(    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu
   <listcomp>(  s    u   xu   あu   aäu   asciiu   latin-1u
   iso-8859-1u   iso-8859-15u   utf-8u   utf-7u   utf-16u   utf-32(   u   xu   あu   aä(   u   asciiu   latin-1u
   iso-8859-1u   iso-8859-15u   utf-8u   utf-7u   utf-16u   utf-32(   u   codecsu   register_erroru   lookup_erroru   encodeu   UnicodeError(   u   selfu   errorsu   erru   uniu   enc(    (   u   lu5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_longstrings  s$    	 !   c       
      C   s,  |  j  t | | d  d   |  j  t | | d g  d d d d d d  g } x t t |   D] } x | D] } t |  t | |  k o qo n g  } xI t t |   D]5 } | | k o | j |  q | j | |  q W|  j  t | |  qo Wqb W| |   }	 |  j t |	  |  d  S(   Niu   too muchu   spams   eggss   spami*   g      ?(	   u   assertRaisesu	   TypeErroru   Noneu   rangeu   lenu   typeu   appendu   assertEqualsu   str(
   u   selfu   exctypeu   argsu   msgu	   wrongargsu   iu   wrongargu   callargsu   ju   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   check_exceptionobjectargs1  s$       c             C   s   |  j  t d d d d d g d  |  j  t d d d d d g d  |  j  t d d	 d
 d d g d  |  j  t d d d
 d d g d  |  j  t d d d
 d d g d  t j d k o& |  j  t d d d
 d d g d  n d  S(   Nu   asciiu   gürki   i   u   ouchu?   'ascii' codec can't encode character '\xfc' in position 1: ouchi   u;   'ascii' codec can't encode characters in position 1-3: ouchu   üxi    u?   'ascii' codec can't encode character '\xfc' in position 0: ouchu   ĀxuA   'ascii' codec can't encode character '\u0100' in position 0: ouchu   ￿xuA   'ascii' codec can't encode character '\uffff' in position 0: ouchi  u   𐀀xuE   'ascii' codec can't encode character '\U00010000' in position 0: ouch(   u   check_exceptionobjectargsu   UnicodeEncodeErroru   sysu
   maxunicode(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_unicodeencodeerrorJ  s2    c             C   sT   |  j  t d t d  d d d g d  |  j  t d t d  d d d g d  d  S(	   Nu   asciis   grki   i   u   ouchu8   'ascii' codec can't decode byte 0xfc in position 1: ouchi   u6   'ascii' codec can't decode bytes in position 1-2: ouch(   u   check_exceptionobjectargsu   UnicodeDecodeErroru	   bytearray(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_unicodedecodeerrork  s    c             C   s   |  j  t d d d d g d  |  j  t d d d d g d  |  j  t d d d d g d	  t j d
 k o# |  j  t d d d d g d  n |  j  t d d d d g d  d  S(   Nu   gürki   i   u   ouchu4   can't translate character '\xfc' in position 1: ouchu   gĀrku6   can't translate character '\u0100' in position 1: ouchu   g￿rku6   can't translate character '\uffff' in position 1: ouchi  u   g𐀀rku:   can't translate character '\U00010000' in position 1: ouchi   u0   can't translate characters in position 1-2: ouch(   u   check_exceptionobjectargsu   UnicodeTranslateErroru   sysu
   maxunicode(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_unicodetranslateerrorw  s*    c          	   C   s^   |  j  t t j d  |  j  t t j t d   |  j  t t j t d d d d d   d  S(   Ni*   u   ouchu   asciiu   あi    i   (   u   assertRaisesu	   TypeErroru   codecsu   strict_errorsu	   Exceptionu   UnicodeEncodeError(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_badandgoodstrictexceptions  s    c             C   s   |  j  t t j d  |  j  t t j t d   |  j t j t d d d d d   d	  |  j t j t d t d  d d d   d
  |  j t j t	 d d d d   d  d  S(   Ni*   u   ouchu   asciiu   あi    i   u    s   (   u    i   (   u    i   (   u    i   (
   u   assertRaisesu	   TypeErroru   codecsu   ignore_errorsu   UnicodeErroru   assertEqualsu   UnicodeEncodeErroru   UnicodeDecodeErroru	   bytearrayu   UnicodeTranslateError(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_badandgoodignoreexceptions  s(    c             C   s   |  j  t t j d  |  j  t t j t d   |  j  t t j t    |  j  t t j t    |  j t j t d d d d d   d
  |  j t j t	 d t
 d  d d d   d  |  j t j t d d d d   d  d  S(   Ni*   u   ouchu   asciiu   あi    i   u   ?s   u   �(   u   ?i   (   u   �i   (   u   �i   (   u   assertRaisesu	   TypeErroru   codecsu   replace_errorsu   UnicodeErroru   BadObjectUnicodeEncodeErroru   BadObjectUnicodeDecodeErroru   assertEqualsu   UnicodeEncodeErroru   UnicodeDecodeErroru	   bytearrayu   UnicodeTranslateError(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu    test_badandgoodreplaceexceptions  s8    

c             C   s   |  j  t t j d  |  j  t t j t d   |  j  t t j t d t d  d d d   |  j  t t j t d d d d   d } d j d   | D  } |  j	 t j t
 d | d t |  d   d j d   | D  t |  f  d  S(   Ni*   u   ouchu   asciis   i    i   u   あi	   i
   ic   id   i  i  i'  i'  iB0  u    c             s   s   |  ] } t  |  Vq d  S(   N(   u   chr(   u   .0u   c(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu	   <genexpr>  s    c             s   s   |  ] } d  t  |  Vq d S(   u   &#%d;N(   u   ord(   u   .0u   c(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu	   <genexpr>  s    (   i    i   i	   i
   ic   id   i  i  i'  i'  iB0  (   u   assertRaisesu	   TypeErroru   codecsu   xmlcharrefreplace_errorsu   UnicodeErroru   UnicodeDecodeErroru	   bytearrayu   UnicodeTranslateErroru   joinu   assertEqualsu   UnicodeEncodeErroru   len(   u   selfu   csu   s(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu*   test_badandgoodxmlcharrefreplaceexceptions  s,    c          	   C   s  |  j  t t j d  |  j  t t j t d   |  j  t t j t d t d  d d d   |  j  t t j t d d d d   |  j t j t	 d d d d d   d  |  j t j t	 d d	 d d d   d  |  j t j t	 d d d d d   d  |  j t j t	 d d d d d   d  |  j t j t	 d d d d d   d  t
 j d k oZ |  j t j t	 d d d d d   d  |  j t j t	 d d d d d   d  n d  S(   Ni*   u   ouchu   asciis   i    i   u   あu   \u3042u    u   \x00u   ÿu   \xffu   Āu   \u0100u   ￿u   \uffffi  u   𐀀u
   \U00010000u   􏿿u
   \U0010ffff(   u   \u3042i   (   u   \x00i   (   u   \xffi   (   u   \u0100i   (   u   \uffffi   (   u
   \U00010000i   (   u
   \U0010ffffi   (   u   assertRaisesu	   TypeErroru   codecsu   backslashreplace_errorsu   UnicodeErroru   UnicodeDecodeErroru	   bytearrayu   UnicodeTranslateErroru   assertEqualsu   UnicodeEncodeErroru   sysu
   maxunicode(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu)   test_badandgoodbackslashreplaceexceptions  sZ    c          	      s   d d d d d d d d d f	 } d } x | D]   t j d
   f d    x' | D] } |  j t d j | d
  qT Wx9 d d d d f D]% \ } } |  j t | j | d
  q Wq. Wd  S(   Ni*   u   fooi   i   i   u   asciiu   latin-1u
   iso-8859-1u   iso-8859-15u   test.badhandlerc                  s     S(    (    (    (   u   res(    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   <lambda>S  s    u   あs   u   utf-8u   utf-7s   +x-u   unicode-internals    (   i   i   i   (   u   fooi   i   (   u   fooN(   u   foo(   u   fooi   i   (   u   fooN(   u   foo(   u   asciiu   latin-1u
   iso-8859-1u   iso-8859-15(   u   asciis   (   u   utf-8s   (   u   utf-7s   +x-(   u   unicode-internals    (   u   Noneu   codecsu   register_erroru   assertRaisesu	   TypeErroru   encodeu   decode(   u   selfu   resultsu   encsu   encu   bytes(    (   u   resu5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_badhandlerresultsN  s.    !   c             C   s   |  j  t j t j d   |  j  t j t j d   |  j  t j t j d   |  j  t j t j d   |  j  t j t j d   d  S(   Nu   strictu   ignoreu   xmlcharrefreplaceu   backslashreplace(   u   assertEqualsu   codecsu   strict_errorsu   lookup_erroru   ignore_errorsu   xmlcharrefreplace_errorsu   backslashreplace_errors(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_lookuph  s    c             C   sG   d   } t  j d |  x' d D] } |  j t d j | d  q  Wd  S(   Nc             S   s2   t  |  t  o d |  j f St d |    d  S(   Nu   䉂u   don't know how to handle %r(   u
   isinstanceu   UnicodeEncodeErroru   endu	   TypeError(   u   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu	   unencreplv  s    u   test.unencreplhandleru   asciiu
   iso-8859-1u   iso-8859-15u   䉂(   u   asciiu
   iso-8859-1u   iso-8859-15(   u   codecsu   register_erroru   assertRaisesu   UnicodeEncodeErroru   encode(   u   selfu	   unencreplu   enc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_unencodablereplacementu  s    	 c             C   s3   |  j  t t j d  |  j  t t j d d  d  S(   Ni*   u
   test.dummy(   u   assertRaisesu	   TypeErroru   codecsu   register_error(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_badregistercall  s    c             C   s   |  j  t t j  d  S(   N(   u   assertRaisesu	   TypeErroru   codecsu   lookup_error(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_badlookupcall  s    c             C   s   |  j  t t j d  d  S(   Nu   test.unknown(   u   assertRaisesu   LookupErroru   codecsu   lookup_error(   u   self(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_unknownhandler  s    c          
   C   s   d } t  j d k o | d 7} n d j d   | D  } t j d t j  x/ d D]' } x d D] } | j | |  qd WqW Wd  S(   Ni   i   i
   i2   id   i  i  i  i'  iP  i i  i@B u    c             S   s!   g  } |  ] } | t  |  q
 S(    (   u   chr(   u   .0u   _[1]u   x(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu
   <listcomp>  s    u   test.xmlcharrefreplaceu   asciiu   iso-8859-15u   xmlcharrefreplace(
   i   i   i
   i2   id   i  i  i  i'  iP  (   i i  i@B (   u   asciiu   iso-8859-15(   u   xmlcharrefreplaceu   test.xmlcharrefreplace(   u   sysu
   maxunicodeu   joinu   codecsu   register_erroru   xmlcharrefreplace_errorsu   encode(   u   selfu   vu   su   encu   err(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_xmlcharrefvalues  s      c             C   s  |  j  t d j d d  d   } t j d |  |  j  t d j d d  |  j  t d j d d  |  j  t d j d d  |  j  t d	 j d d  |  j  t d
 j d d  |  j  t d j d d  d   } t j d |  |  j  t d j d d  t   } t j d | j  d | _ |  j	 d j d d  d  d | _ |  j	 d j d d  d  d | _ |  j  t
 d j d d  d | _ |  j	 d j d d  d  d | _ |  j	 d j d d  d  d | _ |  j  t
 d j d d  d | _ |  j	 d j d d  d  Gd   d t  } |  j  t t j d d i d  d 6 |  j  t t j d d |    |  j  t t j d d i t j d d 6 d  S(    Ns   u   asciiu   test.unknownc             S   s   d S(   Ni*   (    (   u   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   baddecodereturn1  s    u   test.baddecodereturn1s   \u   unicode-escapes   \x0s   \x0ys
   \Uffffeeees   \uyyyyu   raw-unicode-escapec             S   s   d S(   Nu   ?(   u   ?N(   u   None(   u   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   baddecodereturn2  s    u   test.baddecodereturn2u   test.posreturnis   0u   <?>0iu   <?><?>ii   i   u   <?>i   i   s   \uyyyy0c             B   s   |  Ee  Z d    Z d S(   c             S   s
   t   d  S(   N(   u
   ValueError(   u   selfu   key(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __getitem__  s    N(   u   __name__u
   __module__u   __getitem__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   D  s   
u   Du   stricti   (   u   assertRaisesu   LookupErroru   decodeu   codecsu   register_erroru	   TypeErroru	   PosReturnu   handleu   posu   assertEqualsu
   IndexErroru   dictu   UnicodeErroru   charmap_decodeu   Noneu
   ValueErroru   sysu
   maxunicode(   u   selfu   baddecodereturn1u   baddecodereturn2u   handleru   D(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_decodehelper  s@    										#c          	   C   s  |  j  t d j d d  d   } t j d |  |  j  t d j d d  d   } t j d |  |  j  t d j d d  t   } t j d | j  d	 | _ |  j	 d
 j d d  d  d | _ |  j	 d
 j d d  d  d | _ |  j  t
 d
 j d d  d | _ |  j	 d
 j d d  d  d | _ |  j	 d
 j d d  d  d | _ |  j  t
 d
 j d d  d | _ Gd   d t  } xs d D]k } |  j  t t j d | i d  d 6 |  j  t t j d | |    |  j  t t j d | i d d 6 qWd  S(   Nu   ÿu   asciiu   test.unknownc             S   s   d S(   Ni*   (    (   u   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   badencodereturn1  s    u   test.badencodereturn1c             S   s   d S(   Nu   ?(   u   ?N(   u   None(   u   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   badencodereturn2  s    u   test.badencodereturn2u   test.posreturniu   ÿ0s   <?>0is   <?><?>ii   i   s   <?>i   i    c             B   s   |  Ee  Z d    Z d S(   c             S   s
   t   d  S(   N(   u
   ValueError(   u   selfu   key(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __getitem__  s    N(   u   __name__u
   __module__u   __getitem__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   D
  s   
u   Du   strictu   replaceu   xmlcharrefreplaceu   backslashreplacei   i,  (   u   strictu   replaceu   xmlcharrefreplaceu   backslashreplaceu   test.posreturn(   u   assertRaisesu   LookupErroru   encodeu   codecsu   register_erroru	   TypeErroru	   PosReturnu   handleu   posu   assertEqualsu
   IndexErroru   dictu   UnicodeErroru   charmap_encodeu   Noneu
   ValueError(   u   selfu   badencodereturn1u   badencodereturn2u   handleru   Du   err(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_encodehelper  s8    										 #c             C   sX   Gd   d t   } |  j t d j i t j d d 6 |  j t d j i d d 6 d  S(   Nc             B   s   |  Ee  Z d    Z d S(   c             S   s
   t   d  S(   N(   u
   ValueError(   u   selfu   key(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   __getitem__  s    N(   u   __name__u
   __module__u   __getitem__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   D  s   
u   Du   ÿi   i   (    (   u   dictu   assertRaisesu	   TypeErroru	   translateu   sysu
   maxunicode(   u   selfu   D(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_translatehelper  s    $c             C   sf   i d t  d  6d t  d  6d t  d  6d t  d  6} x% d D] } d | } | j |  qA Wd  S(   Nu   &amp;u   &u   &lt;u   <u   &gt;u   >u   &quot;u   "i   i
   id   i  u   abc<def>ghi(   i   i
   id   i  (   u   ordu	   translate(   u   selfu   charmapu   nu   text(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_bug828737  s     
c          	   C   s   d d d d d d d d g } d   } t  j d |  x- | D]% \ } } |  j t | j | d  q> Wd   } t  j d |  x- | D]% \ } } |  j t | j | d  q Wd  S(   Nu   asciis   u   utf-7s   ++u   utf-8u   utf-16u   utf-32u   unicode-escapes   \u123gu   raw-unicode-escapeu   unicode-internalc             S   s2   t  |  t  o d |  _ d St d |    d  S(   Ni*   u   䉂i    u   don't know how to handle %r(   u   䉂i    (   u
   isinstanceu   UnicodeDecodeErroru   objectu	   TypeError(   u   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu	   replacing7  s    	u   test.replacingc             S   s<   t  |  t  o d |  j d  d   <d St d |    d  S(   Ns    u   䉂i    u   don't know how to handle %r(   u   䉂i    (   u
   isinstanceu   UnicodeDecodeErroru   objectu	   TypeError(   u   exc(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   mutatingA  s    u   test.mutating(   u   asciis   (   u   utf-7s   ++(   u   utf-8s   (   u   utf-16s   (   u   utf-32s   (   u   unicode-escapes   \u123g(   u   raw-unicode-escapes   \u123g(   u   unicode-internals   (   u   codecsu   register_erroru   assertRaisesu	   TypeErroru   decode(   u   selfu   baddatau	   replacingu   encodingu   datau   mutating(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   test_mutatingdecodehandler+  s$    		 	 N(    u   __name__u
   __module__u   test_xmlcharrefreplaceu   test_xmlcharnamereplaceu   test_uninamereplaceu   test_backslashescapeu   test_decoderelaxedutf8u   test_charmapencodeu   test_decodeunicodeinternalu   test_callbacksu   test_longstringsu   check_exceptionobjectargsu   test_unicodeencodeerroru   test_unicodedecodeerroru   test_unicodetranslateerroru   test_badandgoodstrictexceptionsu   test_badandgoodignoreexceptionsu    test_badandgoodreplaceexceptionsu*   test_badandgoodxmlcharrefreplaceexceptionsu)   test_badandgoodbackslashreplaceexceptionsu   test_badhandlerresultsu   test_lookupu   test_unencodablereplacementu   test_badregistercallu   test_badlookupcallu   test_unknownhandleru   test_xmlcharrefvaluesu   test_decodehelperu   test_encodehelperu   test_translatehelperu   test_bug828737u   test_mutatingdecodehandler(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   CodecCallbackTest?   s<   
								9			!					(	"	>								;	5		u   CodecCallbackTestc               C   s   t  j j t  d  S(   N(   u   testu   supportu   run_unittestu   CodecCallbackTest(    (    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu	   test_mainM  s    u   __main__(   u   test.supportu   testu   unittestu   sysu   codecsu   html.entitiesu   htmlu   unicodedatau	   PosReturnu   UnicodeEncodeErroru   BadStartUnicodeEncodeErroru   BadObjectUnicodeEncodeErroru   UnicodeDecodeErroru   NoEndUnicodeDecodeErroru   BadObjectUnicodeDecodeErroru   UnicodeTranslateErroru   NoStartUnicodeTranslateErroru   NoEndUnicodeTranslateErroru   NoObjectUnicodeTranslateErroru   TestCaseu   CodecCallbackTestu	   test_mainu   __name__(    (    (    u5   /mit/python/lib/python3.0/test/test_codeccallbacks.pyu   <module>   s    0   	