;
อโ"Ic               @   s]   d  Z  d d l Z d d l m Z Gd   d e j  Z d   Z e d k o e   n d S(   uพ    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.

i    N(   u   supportc             B   s_   |  Ee  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d	 S(
   c             C   s$   t  d |  } |  j | |  | S(   Nu   "\N{%s}"(   u   evalu   assertEqual(   u   selfu   nameu   codeu   res(    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   checkletter   s    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 }   j  d j   f d   t | |  D  |  d  S(   Nu   LATIN CAPITAL LETTER Tu   LATIN SMALL LETTER Hu   LATIN SMALL LETTER Eu   SPACEu   LATIN SMALL LETTER Ru   LATIN CAPITAL LETTER Eu   LATIN SMALL LETTER Du   LATIN SMALL LETTER fu   LATIN CAPITAL LeTtEr ou   LATIN SMaLl LETTER xu   LATIN SMALL LETTER Au   LATIN SMALL LETTER Tu   SpAcEu   LATIN SMALL LETTER Su   LATIN small LETTER eu   LATIN SMALL LETTER Pu	   FULL STOPu   The rEd fOx ate the sheep.u    c                s$   g  } |  ] } |   j  |   q
 S(    (   u   checkletter(   u   .0u   _[1]u   args(   u   self(    u*   /mit/python/lib/python3.0/test/test_ucn.pyu
   <listcomp>9   s    (   u   assertEqualu   joinu   zip(   u   selfu   charsu   string(    (   u   selfu*   /mit/python/lib/python3.0/test/test_ucn.pyu   test_general   s<    	%c             C   s   d d  l  } xm d j t t t t d  t d     D]> } d | j   } | j |  } |  j | j	 |  |  q: Wd  S(   Ni    u    u   au   zu   LATIN SMALL LETTER %s(
   u   unicodedatau   joinu   mapu   chru   rangeu   ordu   upperu   lookupu   assertEqualu   name(   u   selfu   unicodedatau   charu   nameu   code(    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   test_ascii_letters=   s    . c             C   s๖   |  j  d d  |  j  d d  |  j  d d  |  j  d d  |  j  d	 d
  |  j  d d  |  j  d d  |  j  d d  |  j  d d  |  j  d d  |  j  d d  |  j  d d  |  j  d d  d d  l } |  j t | j d  d  S(   Nu   HANGUL SYLLABLE GAu   ๊ฐu   HANGUL SYLLABLE GGWEOSSu   ๊ฟจu   HANGUL SYLLABLE DOLSu   ๋u   HANGUL SYLLABLE RYANu   ๋ธu   HANGUL SYLLABLE MWIKu   ๋ฎ u   HANGUL SYLLABLE BBWAEMu   ๋พu   HANGUL SYLLABLE SSEOLu   ์ฐu   HANGUL SYLLABLE YIu   ์u   HANGUL SYLLABLE JJYOSSu   ์ญu   HANGUL SYLLABLE KYEOLSu   ์ผจu   HANGUL SYLLABLE PANu   ํu   HANGUL SYLLABLE HWEOKu   ํธu   HANGUL SYLLABLE HIHu   ํฃi    u   ํค(   u   checkletteru   unicodedatau   assertRaisesu
   ValueErroru   name(   u   selfu   unicodedata(    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   test_hangul_syllablesE   s    c             C   sd   |  j  d d  |  j  d d  |  j  d d  |  j  d d  |  j  d	 d
  |  j  d d  d  S(   Nu   CJK UNIFIED IDEOGRAPH-3400u   ใu   CJK UNIFIED IDEOGRAPH-4DB5u   ไถตu   CJK UNIFIED IDEOGRAPH-4E00u   ไธu   CJK UNIFIED IDEOGRAPH-9FA5u   ้พฅu   CJK UNIFIED IDEOGRAPH-20000u   ๐ u   CJK UNIFIED IDEOGRAPH-2A6D6u   ๐ช(   u   checkletter(   u   self(    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   test_cjk_unified_ideographsW   s    c             C   s   d d  l  } d } xf t d  D]X } t |  } | j | d   } | d  k	 o' |  j | j |  |  | d 7} q q Wd  S(   Ni    i   i   (   u   unicodedatau   rangeu   chru   nameu   Noneu   assertEqualu   lookup(   u   selfu   unicodedatau   countu   codeu   charu   name(    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   test_bmp_characters_   s     c             C   sD   |  j  d d  |  j  d d  |  j  d d  |  j  d d  d  S(	   Nu   PILCROW SIGNu   ยถu   REPLACEMENT CHARACTERu   ๏ฟฝu)   HALFWIDTH KATAKANA SEMI-VOICED SOUND MARKu   ๏พu   FULLWIDTH LATIN SMALL LETTER Au   ๏ฝ(   u   checkletter(   u   self(    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   test_misc_symbolsi   s    c             C   sb   d d  l  } |  j t | j  |  j t | j d  |  j t | j  |  j t | j d  d  S(   Ni    u   xxu   unknown(   u   unicodedatau   assertRaisesu	   TypeErroru   nameu   lookupu   KeyError(   u   selfu   unicodedata(    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   test_errorso   s
    c             C   sy   |  j  t t d d d  |  j  t t t d d d d  d d  |  j  t t d d d  |  j  t t d	 d d  d  S(
   Ns   \N{blah}u   unicode-escapeu   strictu   \N{%s}u   xi  u   asciis   \N{SPACEs   \NSPACE(   u   assertRaisesu   UnicodeErroru   stru   bytes(   u   self(    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   test_strict_error_handlingv   s    !N(   u   __name__u
   __module__u   checkletteru   test_generalu   test_ascii_lettersu   test_hangul_syllablesu   test_cjk_unified_ideographsu   test_bmp_charactersu   test_misc_symbolsu   test_errorsu   test_strict_error_handling(   u
   __locals__(    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   UnicodeNamesTest   s   
		%				
		u   UnicodeNamesTestc               C   s   t  j t  d  S(   N(   u   supportu   run_unittestu   UnicodeNamesTest(    (    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu	   test_main   s    u   __main__(   u   __doc__u   unittestu   testu   supportu   TestCaseu   UnicodeNamesTestu	   test_mainu   __name__(    (    (    u*   /mit/python/lib/python3.0/test/test_ucn.pyu   <module>   s   ~	