
"Ic           @   s   d  d k  Z  d  d k l Z l Z l Z d  d k i Z d  d k Z e i Z d Z	 d Z
 d d d  Z d   Z d e i f d     YZ d	   Z e d
 j o e i   n d S(   iN(   t   verboset   have_unicodet
   TestFailedi   i    c         C   s  t  oL | o' d t |   t |  t |  f GqS d t |   t |  f Gn y |  | } Wn1 t j
 o% t p   n t  o	 d GHqn-Xt o/ t  o	 d GHn d t |   t |  f GHn | o[ | d  j oN | | j oA t  o	 d GHn d t |   t |  t |  t |  f GHn | o| | d  j	 oo t |  t |  j p | |  | |  j oA t  o	 d GHn d t |   t |  t |  t |  f GHn t  o	 d GHn d  S(   Ns   %s %% %s =? %s ...s   %s %% %s works? ...s   overflow (this is fine)t   nos   overflow expected on %s %% %ss   %s %% %s == %s != %st   yes(   R    t   reprt   OverflowErrort
   overflowokt   overflowrequiredt   Nonet   len(   t	   formatstrt   argst   outputt   limitt   result(    (    s-   /mit/python/lib/python2.6/test/test_format.pyt
   testformat   s<    $	!	..	.c         G   s/   t  |  |  t o t  t |   |  n d  S(   N(   R   R   t   unicode(   R   R   (    (    s-   /mit/python/lib/python2.6/test/test_format.pyt   testboth:   s    t
   FormatTestc           B   s   e  Z d    Z RS(   c         C   sb
  t  d d d  t  d t i d f  t  d d d  t  d d d  t  d	 d d
  t  d d d  t  d d d d f  t  d d d d f  t  d d d d f  t  d d  d } t  d d d d f  t  d d d d f  t  d d d d f  t  d d d d f  d } d } t  d d d  t  d d d  t  d d d   t  d d d!  t  d" d d#  t  d" d d$  d% } t  d" | d&  t  d" | d'  t  d( | d'  t  d) | d'  t  d* | d+  t  d, | d-  t  d. | d/  t  d0 | d-  t  d1 | d2  t  d1 | d3  t  d4 | d5  t  d6 | d7  t  d8 | d9  t  d: | d&  t  d; | d&  t  d< | d=  t  d> | d?  t  d" t |  d@ dA  dB } t  d | dC  t  d | dD  t  dE | dD  t  dF | dD  t  dG | dH  t  dI | dJ  t  dK | dL  t  dM | dJ  t  dN | dO  t  dN | dP  t  dQ | dR  t  dS | dT  t  dU | dV  t  dW | dC  t  dX | dC  t  dY | dZ  t  d[ | d\  t  d] | d^  t  d_ | d`  t  da | db  t  dc | dd  t  dc | de  t  df | dg  t  dh | di  t  dj | dk  t  dl | dm  t  dn | dm  t  do | dm  t  dp | dq  t  dr | ds  t  dt | du  t  dr | ds  t  d t |  dv dA  dw } t  d | dx  t  d | dy  t  dz | dy  t  d{ | dy  t  d| | d}  t  d~ | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | dx  t  d | dx  t  d | d  t  d | d  t  d | d  t  d | dx  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d | d  t  d t |  d dA  t  d" d d  t  d" d d  t  d" d d  t  d" d d  t  d" d d  t  dc d d  t  dc d d  t  da d d  t  da d d  t  dc d d  t  d d d  t  d d d  t  d d d  t  d d d  t  d d d  t  d d d  t  d" d d  t  d" d d  t  dc d d  t  dc d d  t  da d d  t  da d d  t  d d d  t  d d d  t  d d d  t  d d d  t  d t d  d  t  d d d  t  d d d  t  d d d  t  d d d  t  d t d  d  t o	 d GHn d   } | d d t d  t o  | t d d  d t d  n | d" d t d  | d d t d  | d d t d  | d d t d  | d d t d  | d d t d  d t	 f d     Y} | d |   t d  t
 d j o5 y d t
 d f Wn t j
 o q^
Xt d  n d  S(   Ns   %.1di   t   1s   %.*ds   %.100dtd   0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001s   %#.117xtw   0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001s   %#.118xtx   0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001s   %fg      ?s   1.000000s   %#.*gim   g:~^g      @in   g}Ô%Is   %12.*fi@ s   %#.*Gs   %#.*fs   %#.*Fi    s   %xl   
 t   al    h] t
   174876e800s   %ot   12t   1351035564000s   %dt   10t   100000000000l   
~l!]c t   123456789012345678901234567890s   -123456789012345678901234567890s   %5ds   %31ds   %32ds     -123456789012345678901234567890s   %-32ds    -123456789012345678901234567890 s   %032ds    -0123456789012345678901234567890s   %-032ds   %034ds"   -000123456789012345678901234567890t"   0000123456789012345678901234567890s   %0+34ds"   +000123456789012345678901234567890s   %+34ds"      +123456789012345678901234567890s   %34ds"       123456789012345678901234567890s   %.2ds   %.30ds   %.31dt   0123456789012345678901234567890s   %32.31ds     0123456789012345678901234567890t   123456________________________i   l   E#=*H<V4$ t   1234567890abcdef12345s   -1234567890abcdef12345s   %5xs   %22xs   %23xs    -1234567890abcdef12345s   %-23xs   -1234567890abcdef12345 s   %023xs   -01234567890abcdef12345s   %-023xs   %025xs   -0001234567890abcdef12345t   00001234567890abcdef12345s   %0+25xs   +0001234567890abcdef12345s   %+25xs      +1234567890abcdef12345s   %25xs       1234567890abcdef12345s   %.2xs   %.21xs   %.22xt   01234567890abcdef12345s   %23.22xs    01234567890abcdef12345s   %-23.22xs   01234567890abcdef12345 s   %Xt   1234567890ABCDEF12345s   %#Xt   0X1234567890ABCDEF12345s   %#xt   0x1234567890abcdef12345s   -0x1234567890abcdef12345s   %#.23xs   -0x001234567890abcdef12345s   %#+.23xs   +0x001234567890abcdef12345s   %# .23xs    0x001234567890abcdef12345s   %#+.23Xs   +0X001234567890ABCDEF12345s   %#-+.23Xs
   %#-+26.23Xs
   %#-+27.23Xs   +0X001234567890ABCDEF12345 s	   %#+27.23Xs    +0X001234567890ABCDEF12345s
   %#+027.23Xs   +0X0001234567890ABCDEF12345t   123456_______________l   KSp.']w9
 t    12345670123456701234567012345670s!   -12345670123456701234567012345670s   %5os   %33os   %34os"    -12345670123456701234567012345670s   %-34os"   -12345670123456701234567012345670 s   %034os"   -012345670123456701234567012345670s   %-034os   %036os$   -00012345670123456701234567012345670t$   000012345670123456701234567012345670s   %0+36os$   +00012345670123456701234567012345670s   %+36os$      +12345670123456701234567012345670s   %36os$       12345670123456701234567012345670s   %.2os   %.32os   %.33ot!   012345670123456701234567012345670s   %34.33os"    012345670123456701234567012345670s   %-34.33os"   012345670123456701234567012345670 s   %#os   %#.34os#   -0012345670123456701234567012345670s   %#+.34os#   +0012345670123456701234567012345670s   %# .34os#    0012345670123456701234567012345670s   %#-+.34os
   %#-+37.34os%   +0012345670123456701234567012345670  s	   %#+37.34os%     +0012345670123456701234567012345670s   %#.33os   %#.32os   %034.33ot"   0012345670123456701234567012345670s	   %0#34.33ot    123456__________________________i*   t   42is   -42l   * l* g      E@t   0x1l    t   0X1t   01t   0l    t   0x0t   0X0iB   il   B lB i"   il   " l" s   Testing exceptionsc         S   s   y t  |  |  Wn | j
 o] } t |  | j o t o	 d GHqx q t o	 d GHn d G| Gd Gt t |   GHn- t o	 d GHn d GH  n Xt d |  d  S(   NR   R   s   Unexpected t   :s   Unexpected exceptions"   did not get expected exception: %s(   R   t   strR    R   R   (   R   R   t	   exceptiont   excmsgt   exc(    (    s-   /mit/python/lib/python2.6/test/test_format.pyt   test_exc   s     	! 	s   abc %as2   unsupported format character 'a' (0x61) at index 5s   abc %\u3000s   raw-unicode-escapes4   unsupported format character '?' (0x3000) at index 5s(   %d format: a number is required, not strs   %gs    float argument required, not strs	   no formats4   not all arguments converted during string formattingu   1u	   no formatt   Foobarc           B   s   e  Z d    Z RS(   c         S   s   |  d S(   Ni   (    (   t   self(    (    s-   /mit/python/lib/python2.6/test/test_format.pyt   __oct__  s    (   t   __name__t
   __module__R=   (    (    (    s-   /mit/python/lib/python2.6/test/test_format.pyR;     s   s-   expected string or Unicode object, long foundi   i   s   %*dis!   "%*d"%(maxsize, -127) should fail(   i   (   i   (   i   (   i   (   g      ?(   i@ g      ?l        l    (   R   t   syst   maxintt   floatR    t
   ValueErrorR   R   t	   TypeErrort   longt   maxsizet   MemoryErrorR   (   R<   R   R   t   bigR:   R;   (    (    s-   /mit/python/lib/python2.6/test/test_format.pyt   test_formatA   sT   		(   R>   R?   RI   (    (    (    s-   /mit/python/lib/python2.6/test/test_format.pyR   @   s   c           C   s   t  i t  d  S(   N(   t   test_supportt   run_unittestR   (    (    (    s-   /mit/python/lib/python2.6/test/test_format.pyt	   test_main"  s    t   __main__(   R@   t   test.test_supportR    R   R   RJ   t   unittestt   MAX_Py_ssize_tRF   R   R   R	   R   R   t   TestCaseR   RL   R>   t   main(    (    (    s-   /mit/python/lib/python2.6/test/test_format.pyt   <module>   s   	)		