mò
­fIc           @   s  d  k  l Z l Z l Z l Z d k Z d k Z d k l Z d e i	 d Z
 xZ e i i e i i g D]@ Z e i i e e
 ƒ Z e i i e ƒ Z e p e Z
 Pqh qh Wd f  d „  ƒ  YZ d „  Z d „  Z d	 „  Z d
 „  Z d „  Z d „  Z e d j o e ƒ  n d S(   (   s   verboses
   TestFaileds   TestSkippeds   verifyN(   s	   normalizes   NormalizationTest-3.2.0t   txtt
   RangeErrorc           B   s   t  Z RS(   N(   t   __name__t
   __module__(    (    (    t4   /mit/python/lib/python2.4/test/test_normalization.pyR      s   c         C   s   t  d |  ƒ S(   Nt   NFC(   t	   normalizet   str(   R   (    (    R   R      s    c         C   s   t  d |  ƒ S(   Nt   NFKC(   R   R   (   R   (    (    R   R      s    c         C   s   t  d |  ƒ S(   Nt   NFD(   R   R   (   R   (    (    R   R	      s    c         C   s   t  d |  ƒ S(   Nt   NFKD(   R   R   (   R   (    (    R   R
       s    c         C   sŒ   g  } |  i d ƒ D] } | t | d ƒ q ~ }  x( |  D]  } | t i j o
 t ‚ q: q: Wd i g  } |  D] } | t	 | ƒ qo ~ ƒ S(   Nt    i   u    (
   t   _[1]t   datat   splitt   xt   intt   syst
   maxunicodeR   t   joint   unichr(   R   R   R   (    (    R   t   unistr#   s    3 c          C   s}  t  o t t d d t ƒ ‚ n h  } xªt t ƒ D]œ} d | j o | i d ƒ d } n | i ƒ  } | p q6 n | i d ƒ o | } q6 n yG g  }	 | i d ƒ d  D] }
 |	 t |
 ƒ q² ~	 \ } } } } } Wn t j
 o
 q6 n Xt o	 | GHn t | t | ƒ j o" t | ƒ j o t | ƒ j n | ƒ t | t | ƒ j o t | ƒ j n | ƒ t | t | ƒ j o" t | ƒ j o t | ƒ j n | ƒ t | t | ƒ j o t | ƒ j n | ƒ t | t | ƒ j oF t | ƒ j o4 t | ƒ j o" t | ƒ j o t | ƒ j n | ƒ t | t | ƒ j oF t | ƒ j o4 t | ƒ j o" t | ƒ j o t | ƒ j n | ƒ | d j o d	 | | <q6 q6 Wx“ t t i d	 ƒ D]~ } t | ƒ }  |  | j o qên |  t |  ƒ j o4 t |  ƒ j o" t |  ƒ j o t |  ƒ j n p
 t | ‚ qêWt  d
 d ƒ d  S(   Ns    not found, download from s)   http://www.unicode.org/Public/3.2-Update/t   #i    s   @Partt   ;iÿÿÿÿs   @Part1i   R   u   í•œê¸€(!   t   skip_expectedt   TestSkippedt   TESTDATAFILEt
   part1_datat   opent   lineR   t   stript
   startswitht   partR   R   R   t   c1t   c2t   c3t   c4t   c5R   t   verboset   verifyR   R	   R   R
   t   rangeR   R   t   cR   t   Xt   AssertionErrorR   (   R*   R    R   R#   R"   R   R%   R$   R)   R   R   R!   (    (    R   t	   test_main*   sH     G	B0B0__ \t   __main__(   t   test.test_supportR&   t
   TestFailedR   R'   R   t   ost   unicodedataR   t   extsepR   t   patht   curdirt   pardirR   t   fnt   existsR   R   R   R   R	   R
   R   R,   R   (   R   R   R   R   R&   R'   R   R
   R   R   R	   R   R3   R/   R0   R   R6   R,   (    (    R   t   ?   s(   		 							0