m๒
ญfIc           @   sZ   d  Z  d k Z d k l Z d e i f d     YZ d   Z e d j o e   n d S(   sพ    Test script for the Unicode implementation.

Written by Bill Tutt.
Modified for Python 2.0 by Fredrik Lundh (fredrik@pythonware.com)

(c) Copyright CNRI, All Rights Reserved. NO WARRANTY.

N(   s   test_supportt   UnicodeNamesTestc           B   sY   t  Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d	   Z
 RS(
   Nc         C   s$   t  d |  } |  i | |  | S(   Nu	   u"\N{%s}"(   t   evalt   namet   rest   selft   assertEqualt   code(   R   R   R   R   (    (    t*   /mit/python/lib/python2.4/test/test_ucn.pyt   checkletter   s    c         C   sค   d d d d d d d d d d	 d
 d d d d d d d d d d d d d d d g } d } |  i d i g  } t | |  D] } | |  i |   qz ~  |  d  S(   Ns   LATIN CAPITAL LETTER Ts   LATIN SMALL LETTER Hs   LATIN SMALL LETTER Et   SPACEs   LATIN SMALL LETTER Rs   LATIN CAPITAL LETTER Es   LATIN SMALL LETTER Ds   LATIN SMALL LETTER fs   LATIN CAPITAL LeTtEr os   LATIN SMaLl LETTER xs   LATIN SMALL LETTER As   LATIN SMALL LETTER Tt   SpAcEs   LATIN SMALL LETTER Ss   LATIN small LETTER es   LATIN SMALL LETTER Ps	   FULL STOPu   The rEd fOx ate the sheep.u    (	   t   charst   stringR   R   t   joint   _[1]t   zipt   argsR   (   R   R   R   R   R   (    (    R   t   test_general   s    T?c         C   s}   d  k  } xm d i t t t t d  t d     D]> } d | i   } | i	 |  } |  i | i |  |  q7 Wd  S(   Nt    t   at   zs   LATIN SMALL LETTER %s(   t   unicodedataR   t   mapt   chrt   xranget   ordt   chart   upperR   t   lookupR   R   R   (   R   R   R   R   R   (    (    R   t   test_ascii_letters=   s    	. c         C   s๓   |  i d d  |  i d d  |  i d d  |  i d d  |  i d	 d
  |  i d d  |  i d d  |  i d d  |  i d d  |  i d d  |  i d d  |  i d d  |  i d d  d  k } |  i t | i d  d  S(   Ns   HANGUL SYLLABLE GAu   ๊ฐs   HANGUL SYLLABLE GGWEOSSu   ๊ฟจs   HANGUL SYLLABLE DOLSu   ๋s   HANGUL SYLLABLE RYANu   ๋ธs   HANGUL SYLLABLE MWIKu   ๋ฎ s   HANGUL SYLLABLE BBWAEMu   ๋พs   HANGUL SYLLABLE SSEOLu   ์ฐs   HANGUL SYLLABLE YIu   ์s   HANGUL SYLLABLE JJYOSSu   ์ญs   HANGUL SYLLABLE KYEOLSu   ์ผจs   HANGUL SYLLABLE PANu   ํs   HANGUL SYLLABLE HWEOKu   ํธs   HANGUL SYLLABLE HIHu   ํฃu   ํค(   R   R   R   t   assertRaisest
   ValueErrorR   (   R   R   (    (    R   t   test_hangul_syllablesE   s    	c         C   sd   |  i d d  |  i d d  |  i d d  |  i d d  |  i d	 d
  |  i d d  d  S(   Ns   CJK UNIFIED IDEOGRAPH-3400u   ใs   CJK UNIFIED IDEOGRAPH-4DB5u   ไถตs   CJK UNIFIED IDEOGRAPH-4E00u   ไธs   CJK UNIFIED IDEOGRAPH-9FA5u   ้พฅs   CJK UNIFIED IDEOGRAPH-20000u   ๐ s   CJK UNIFIED IDEOGRAPH-2A6D6u   ๐ช(   R   R   (   R   (    (    R   t   test_cjk_unified_ideographsW   s    c         C   s|   d  k  } d } xf t d  D]X } t |  } | i | d   } | d  j	 o' |  i	 | i
 |  |  | d 7} q q Wd  S(   Ni    i   i   (   R   t   countR   R   t   unichrR   R   t   NoneR   R   R   (   R   R"   R   R   R   R   (    (    R   t   test_bmp_characters_   s    	 c         C   sD   |  i d d  |  i d d  |  i d d  |  i d d  d  S(	   Ns   PILCROW SIGNu   ยถs   REPLACEMENT CHARACTERu   ๏ฟฝs)   HALFWIDTH KATAKANA SEMI-VOICED SOUND MARKu   ๏พs   FULLWIDTH LATIN SMALL LETTER Au   ๏ฝ(   R   R   (   R   (    (    R   t   test_misc_symbolsi   s    c         C   s_   d  k  } |  i t | i  |  i t | i d  |  i t | i  |  i t | i d  d  S(   Nu   xxu   unknown(   R   R   R   t	   TypeErrorR   R   t   KeyError(   R   R   (    (    R   t   test_errorso   s
    	c         C   sp   |  i t t d d d  |  i t t d d d d d  |  i t t d d d  |  i t t d d d  d  S(	   Ns   \N{blah}s   unicode-escapet   stricts   \N{%s}t   xi  s   \N{SPACEs   \NSPACE(   R   R   t   UnicodeErrort   unicode(   R   (    (    R   t   test_strict_eror_handlingv   s    				(   t   __name__t
   __module__R   R   R   R    R!   R%   R&   R)   R.   (    (    (    R   R       s   		%				
		c           C   s   t  i t  d  S(   N(   t   test_supportt   run_unittestR    (    (    (    R   t	   test_main   s    t   __main__(   t   __doc__t   unittestt   testR1   t   TestCaseR    R3   R/   (   R1   R6   R    R3   (    (    R   t   ?   s   	~	