mς
­fIc           @   s   d  Z  d k l Z d k Z d k l Z l Z l Z e d  Z	 d e i
 f d     YZ d   Z e d j o e   n d S(	   s0   
   Tests for fpformat module
   Nick Mathewson
(   s   run_unittestN(   s   fixs   scis
   NotANumbert    t   FpformatTestc           B   s5   t  Z d   Z d   Z d   Z d   Z d   Z RS(   Nc         C   sY   t  | |  } t | t  o t |  } n d | t |  f } |  i
 | |  d  S(   Ns   %.*f(   t   fixt   nt   digitst   resultt
   isinstancet
   StringTypet   reprt   floatt   expectedt   selft   assertEquals(   R   R   R   R   R
   (    (    t/   /mit/python/lib/python2.4/test/test_fpformat.pyt   checkFix   s
    c         C   s«   t  | |  } t | t  o t |  } n d | t |  f } | i	 d  \ } } t |  d j  o | d d | d } n d | | f } |  i | |  d  S(   Ns   %.*et   ei   i    t   0i   s   %se%s(   t   sciR   R   R   R   R   R   R	   R
   t   splitt   numt   expt   lenR   R   (   R   R   R   R   R   R   R
   (    (    R   t   checkSci   s    c         C   s>   |  i t d d d  d  |  i t d d d  d  d  S(   Nf100.0i   s   33.333s
   3.333e+001(   R   R   R   R   (   R   (    (    R   t   test_basic_cases+   s    c         C   s   x t  d  D]w } xn d d d d d d d d f D]L } xC | d | | d | f D]& } |  i | |  |  i | |  qV Wq4 Wq Wd  S(	   Ni   f1000.0i   iθ  f0.002f1.0f10000000000.0f-1.0(   t   ranget   dt   valt   realValR   R   R   (   R   R   R   R   (    (    R   t   test_reasonable_values/   s     !  c         C   s   |  i t d d  d d d  |  i t d d d d  d  d } |  i t | d	  |  y t | d	  Wn t j
 o n X|  i d
  d  S(   Nf1.0iθ  s   1.R   t   1i    s   1e+1000s   Throatwobbler Mangrovei
   s   No exception on non-numeric sci(   R   R   R   R   t   yachtt
   NotANumbert   fail(   R   R   (    (    R   t   test_failing_values6   s    !!(   t   __name__t
   __module__R   R   R   R   R!   (    (    (    R   R      s
   				c           C   s   t  t  d  S(   N(   t   run_unittestR   (    (    (    R   t	   test_mainF   s    t   __main__(   t   __doc__t   test.test_supportR$   t   unittestt   fpformatR   R   R   t   typeR   t   TestCaseR   R%   R"   (   R   R   R)   R   R%   R$   R   R   (    (    R   t   ?   s   	2	