Ñò
à"Ic        
   @   sÃ   d  d k  Z  d  d k Z d  d k l Z d  d k Z e i d d e d d ƒd  d k l Z d  d k l	 Z	 e
 d	 ƒ Z e
 d
 ƒ Z d e  i f d „  ƒ  YZ d „  Z e d j o e ƒ  n d S(   iÿÿÿÿN(   t   test_supportt   ignoret   categoryt   messages    .*complex divmod.*are deprecated(   t   random(   t   atan2t   inft   nant   ComplexTestc           B   sú   e  Z d  „  Z d d „ Z d d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d	 „  Z
 d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z e i d ƒ i d ƒ o d „  Z n RS(   c         C   sò   t  | t ƒ o‚ t  | t ƒ o< t i i |  | i | i ƒ t i i |  | i | i ƒ qî t i i |  | i | ƒ t i i |  | i d ƒ n] t  | t ƒ o6 t i i |  | | i ƒ t i i |  d | i ƒ n t i i |  | | ƒ d  S(   Ng        (   t
   isinstancet   complext   unittestt   TestCaset   assertAlmostEqualt   realt   imag(   t   selft   at   b(    (    s.   /mit/python/lib/python2.6/test/test_complex.pyR      s     g•Ö&è.>c         C   s‹   t  | ƒ t  | ƒ j o | | } } n | d j o t  | ƒ | j  S| d j o t  | ƒ | j  S|  i t  | | | ƒ | j  ƒ d S(   s*   Return true iff floats x and y "are close"i    N(   t   abst   assert_(   R   t   xt   yt   eps(    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   assertCloseAbs#   s    c         C   s6   |  i  | i | i | ƒ |  i  | i | i | ƒ d S(   s-   Return true iff complexes x and y "are close"N(   R   R   R   (   R   R   R   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   assertClose/   s    c         C   s   |  i  | | j ƒ d  S(   N(   R   (   R   R   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   assertIs4   s    c         C   sà   | | } | d j o\ | | } |  i  | | ƒ | i | ƒ } |  i  | | ƒ | i | ƒ } |  i  | | ƒ n | d j o\ | | } |  i  | | ƒ | i | ƒ } |  i  | | ƒ | i | ƒ } |  i  | | ƒ n d S(   s8   Compute complex z=x*y, and check that z/x==y and z/y==x.i    N(   R   t   __div__t   __truediv__(   R   R   R   t   zt   q(    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt	   check_div7   s    


c         C   s-  g  } t  d d ƒ D] } | t | ƒ q ~ } g  } | D]# } | D] } | t | | ƒ qE q; ~ } x/ | D]' } x | D] } |  i | | ƒ q{ Wqn W|  i t d d ƒ d
 ƒ |  i t d d ƒ d ƒ xB t  d ƒ D]4 } |  i t t ƒ  t ƒ  ƒ t t ƒ  t ƒ  ƒ ƒ qØ W|  i t t i d d ƒ d  S(   Niûÿÿÿi   gZb××çtii   y                g¬÷N’~hid   y              ð?i    y      ð?        y      ð?        y      ð?      ð?y                (   t   xranget   floatR
   R   R   t   assertRaisest   ZeroDivisionErrorR   (   R   t   _[1]t   it   simple_realt   _[2]R   R   t   simple_complex(    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_divI   s    07   c         C   s9   |  i  t i d d ƒ d ƒ |  i t t i d	 d
 ƒ d  S(   Ni   y                i   y              ð?i    y       @        y      ð?      ð?y      ð?      ð¿y      ð?      ð?y                (   R   R
   R   R"   R#   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_truediv^   s    c         C   s9   |  i  t i d d ƒ d ƒ |  i t t i d d	 ƒ d  S(
   Ni   y                g      ø?i   i    y      @        y      ø?        y      @        y                (   R   R
   t   __floordiv__R"   R#   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_floordivb   s    c         C   s   |  i  t t i d d ƒ d  S(   Ni   y              ð?l    i'  y      ð?      ð?l›                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       (   R"   t   OverflowErrorR
   t
   __coerce__(   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_coercef   s    c         C   s  |  i  t t i d d ƒ |  i t i d	 d  ƒ t ƒ |  i t i d
 d ƒ t	 ƒ |  i t i d d ƒ t
 ƒ |  i t i d d ƒ t
 ƒ |  i t i d d ƒ t	 ƒ |  i  t t i d d ƒ |  i  t t i d d ƒ |  i  t t i d d ƒ |  i  t t i d d ƒ d  S(   Ni   y              ð?l    i'  i   y               @y      ð?      ð?l›                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       y      ð?      ð?y      ð?      ð?y      ð?      ð?y      ð?      ð?y       @       @y      ð?      ð?y      ð?      ð?y      ð?      ð?y       @       @y      ð?      ð?y       @       @y      ð?      ð?y       @       @y      ð?      ð?y       @       @y      ð?      ð?y       @       @(   R"   R-   R
   t   __eq__t   assertEqualt   __lt__t   Nonet   NotImplementedR   t   Truet   Falset   __ne__t	   TypeErrort   __le__t   __gt__t   __ge__(   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_richcomparei   s    c         C   sO   |  i  t d i d	 ƒ d
 } y | d Wn t j
 o n X|  i d ƒ d  S(   Ni   y              ð?i    y                g¤p=
×£
@y        ¸…ëQ¸@s   modulo parama can't be 0y      ð?      ð?y                y¤p=
×£
@¸…ëQ¸@(   R"   R#   t   __mod__t   fail(   R   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_modu   s    c         C   s   |  i  t t d d ƒ d  S(   Ni   y              ð?i    y                y      ð?      ð?y                (   R"   R#   t   divmod(   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_divmod€   s    c         C   sÂ  |  i  t d d ƒ d ƒ |  i  t d d ƒ d ƒ |  i t t d d ƒ |  i  t d d ƒ d d ƒ |  i  t d d	 ƒ d ƒ |  i t t d d d ƒ d } |  i | d d ƒ |  i | d d d ƒ |  i d d ƒ |  i d d ƒ y d | Wn t j
 o n X|  i d ƒ y d d  Wn t j
 o n X|  i d ƒ |  i | d | d ƒ |  i | d | d ƒ |  i | d | d ƒ |  i d! d ƒ d" } |  i t t | | d ƒ d  S(#   Ni   y              ð?i    y                g      ð?i   g        iÿÿÿÿiÈ   g¤p=
×£
@y        ¸…ëQ¸@y              @s,   should fail 0.0 to negative or complex poweri   y               @ii   i—ÿÿÿiâÿÿÿgffffff@y        ffffff@y      ð?      ð?y                y                y       @        y                y      ð?      ð?y      ð?      ð?y      ð?      ð?y¤p=
×£
@¸…ëQ¸@y      ð?        y      ð?        y      @       Ày      ð?        yffffff@ffffff@(   R   t   powR"   R#   t
   ValueErrorR1   R>   (   R   R   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_powƒ   s6    c         C   sV   x8 t  d ƒ D]* } |  i t t ƒ  d t ƒ  d ƒ ƒ q W|  i t d d ƒ ƒ d  S(   Nid   gíµ ÷Æ°>g        (   R    R   R
   R   (   R   R%   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_boolcontextª   s     (c         C   s#   |  i  t d d ƒ i ƒ  d ƒ d  S(   Ng333333@gš™™™™™#@y        š™™™™™#@y333333@š™™™™™#À(   R   R
   t	   conjugate(   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_conjugate¯   s    c   
         sk  d dQ d „  ƒ  Y} d t  f d „  ƒ  Y} |  i t | dR ƒ ƒ dS ƒ |  i t | dT ƒ ƒ dU ƒ |  i t t | d  ƒ ƒ |  i t t | d  ƒ ƒ |  i t d ƒ dV ƒ |  i t d ƒ dW ƒ |  i t d
 ƒ dX ƒ |  i t d ƒ dY ƒ |  i t dZ ƒ d[ ƒ |  i t d d ƒ d\ ƒ |  i t d d ƒ d] ƒ |  i t d d
 ƒ d^ ƒ |  i t d d ƒ d_ ƒ |  i t d d ƒ d` ƒ |  i t d d
 ƒ da ƒ |  i t d d ƒ db ƒ |  i t d d ƒ dc ƒ |  i t d d
 ƒ dd ƒ |  i t de ƒ df ƒ |  i t d ƒ dg ƒ |  i t d ƒ dh ƒ |  i t d ƒ di ƒ |  i t dj d	 ƒ dk ƒ |  i t d d ƒ dl ƒ |  i t d d ƒ dm ƒ |  i t d d ƒ dn ƒ |  i t d	 d ƒ do ƒ |  i t d d ƒ dp ƒ |  i t d	 d ƒ d ƒ |  i t d d ƒ d ƒ |  i t d ƒ dq ƒ |  i t d ƒ d ƒ |  i t ƒ  d ƒ |  i t d ƒ d ƒ |  i t d ƒ d 
ƒ |  i t d ƒ dr ƒ |  i t d ƒ ds ƒ d" t f d# „  ƒ  Y} |  i t | dt ƒ ƒ du ƒ |  i t d$ d% d& d' ƒ dv ƒ |  i t d$ dw ƒ dx ƒ |  i t d$ dy d& d' ƒ dz ƒ |  i t d$ d{ d& d| ƒ d} ƒ d. „  } |  i | t d d ƒ i ƒ | d ƒ ƒ |  i | t d d/ ƒ i ƒ | d/ ƒ ƒ |  i | t d d ƒ i ƒ | d ƒ ƒ |  i | t d/ d ƒ i ƒ | d/ ƒ ƒ d~ } |  i	 t | ƒ | j ƒ ~ |  i t t d d ƒ |  i t t d d ƒ |  i t d0 ƒ d ƒ t
 i o  |  i t t d0 ƒ ƒ d€ ƒ n |  i t t d1 ƒ |  i t t d ƒ |  i t t d‚ ƒ |  i t t dƒ ƒ |  i t t d4 ƒ |  i t t d  ƒ |  i t t d5 ƒ |  i t t d6 ƒ |  i t t d d7 ƒ |  i t t d d8 ƒ |  i t t d d7 ƒ |  i t t d9 ƒ |  i t t d: ƒ |  i t t d; ƒ |  i t t d< ƒ |  i t t d= ƒ |  i t t d> ƒ |  i t t d? ƒ t
 i o: |  i t t t d d@ ƒ ƒ |  i t t t dA ƒ ƒ n dB t f dC „  ƒ  Y‰  dD d„ ‡  f dE †  ƒ  Y} |  i ˆ  t | ƒ  ƒ dF d… dG „  ƒ  Y} |  i t | dH ƒ ƒ d8 ƒ |  i t d$ | dI ƒ d& | dJ ƒ ƒ d† ƒ |  i t t | d  ƒ ƒ dK t f dL „  ƒ  Y} dM t f dN „  ƒ  Y}	 d" t f dO „  ƒ  Y} |  i t | d ƒ ƒ dP ƒ |  i t |	 d ƒ ƒ d ƒ |  i t t | d ƒ ƒ d  S(‡   Nt   OSc           B   s   e  Z d  „  Z d „  Z RS(   c         S   s   | |  _  d  S(   N(   t   value(   R   RI   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   __init__´   s    c         S   s   |  i  S(   N(   RI   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   __complex__µ   s    (   t   __name__t
   __module__RJ   RK   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRH   ³   s   	t   NSc           B   s   e  Z d  „  Z d „  Z RS(   c         S   s   | |  _  d  S(   N(   RI   (   R   RI   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRJ   ·   s    c         S   s   |  i  S(   N(   RI   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRK   ¸   s    (   RL   RM   RJ   RK   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRN   ¶   s   	i   y              $@s   1+10ji
   y                g      $@l   
 l    g      ð?g…ëQ¸	@i:  g      s@l   :g        i    l    y        …ëQ¸	@g…ëQ¸	Àt   1t   1jy              ð?s   -1iÿÿÿÿs   +1s   (1+2j)y               @s
   (1.3+2.2j)gÍÌÌÌÌÌô?y        š™™™™™@t   complex2c           B   s   e  Z RS(    (   RL   RM   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRQ   à   s    R   i   R   i   y              7@y              G@i   y              @iýÿÿÿy              @c         S   s   t  |  d ƒ S(   s7   Function that produces different results for 0. and -0.g      ð¿(   R   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   split_zerosê   s    g       €s
     3.14+J  s   1+1j ji   y              @t    t    t   3 9t   2i*   s   1+s   1+1j+1js   --s   (1+2js   1+2j)s   1+(2j)s	   (1+2j)123iô  R   t   EvilExcc           B   s   e  Z RS(    (   RL   RM   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRW     s   t   evilcomplexc              s   e  Z ‡  f d  †  Z RS(   c            s
   ˆ  ‚ d  S(   N(    (   R   (   RW   (    s.   /mit/python/lib/python2.6/test/test_complex.pyRK     s    (   RL   RM   RK   (    (   RW   (    s.   /mit/python/lib/python2.6/test/test_complex.pyRX     s   t   float2c           B   s   e  Z d  „  Z d „  Z RS(   c         S   s   | |  _  d  S(   N(   RI   (   R   RI   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRJ   !  s    c         S   s   |  i  S(   N(   RI   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt	   __float__#  s    (   RL   RM   RJ   RZ   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRY      s   	g      E@g      1@g      7@t   complex0c           B   s   e  Z d  Z d „  Z RS(   s:   Test usage of __complex__() when inheriting from 'complex'c         S   s   d S(   Ny              E@(    (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRK   ,  s    (   RL   RM   t   __doc__RK   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyR[   *  s   t   complex1c           B   s#   e  Z d  Z d d „ Z d „  Z RS(   s3   Test usage of __complex__() with a __new__() methody                c         S   s   t  i |  d | ƒ S(   Ni   (   R
   t   __new__(   R   RI   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyR^   1  s    c         S   s   |  S(   N(    (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRK   3  s    (   RL   RM   R\   R^   RK   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyR]   /  s   c           B   s   e  Z d  Z d „  Z RS(   s`   Make sure that __complex__() calls fail if anything other than a
            complex is returnedc         S   s   d  S(   N(   R3   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRK   9  s    (   RL   RM   R\   RK   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyRQ   6  s   y              E@(    y      ð?      $@y      ð?      $@y      ð?      $@y      ð?      $@y      ð?      $@y      $@        y      $@        y      $@        y      $@        y      $@        y      ð?      $@y      ð?      $@y      ð?      $@y      ð?      $@y      ð?      $@y      ð?      $@y      ð?      $@y      ð?      $@y      ð?      $@y…ëQ¸	@        y…ëQ¸	@        y…ëQ¸	@        y      s@        y      s@        y…ëQ¸	@        y…ëQ¸	@        y…ëQ¸	@        y      s@        y      s@        y…ëQ¸	À        y…ëQ¸	À        y      ð?        y      ð?       @yÍÌÌÌÌÌô?š™™™™™@y      ð?      ð?y      ð?      ð?y      1@      7@y      1@      7@y      1@      7@y      1@      7@y      1@      G@y      ð?       @y      @      @y      À      @y…ëQ¸	@      ð?y…ëQ¸	@      ð?y…ëQ¸	@      ð?y      @      @y      @      @y      @      @(    (    y      1@      7@(   t   objectR1   R
   R"   R8   R3   R   R   R   R   R    t   have_unicodet   unicodeRC   t   intt   longR!   t	   Exception(
   R   RH   RN   RQ   RR   t   cRX   RY   R[   R]   (    (   RW   s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_constructor²   s¸    	((((
 
+c         C   sr   xk t  d d ƒ D]Z } |  i t | ƒ t t | d ƒ ƒ ƒ | d :} |  i t | ƒ t t | d ƒ ƒ ƒ q Wd  S(   Niâÿÿÿi   i    g      @g        (   R    R1   t   hashR
   (   R   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt	   test_hash@  s
     %
c         C   s’   g  } t  d d ƒ D]4 } t  d d ƒ D] } | t | d | d ƒ q' q ~ } x: | D]2 } |  i | i d | i d d t | ƒ ƒ qX Wd  S(   Ni÷ÿÿÿi	   g      @g      @i   g      à?(   R    R
   R   R   R   R   (   R   R$   R   R   t   numst   num(    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_absF  s    Q c         C   sï  |  i  t d ƒ d ƒ |  i  t d ƒ d ƒ |  i t d ƒ d ƒ |  i  d t t d ƒ ƒ ƒ |  i  d t t d ƒ ƒ ƒ |  i  d t t d ƒ ƒ ƒ |  i  d t t d ƒ ƒ ƒ |  i  t t d t ƒ ƒ d	 ƒ |  i  t t d t ƒ ƒ d
 ƒ |  i  t t t d ƒ ƒ d ƒ |  i  t t t t ƒ ƒ d ƒ |  i  t t t d ƒ ƒ d ƒ |  i  t t d t ƒ ƒ d ƒ |  i  t t t t ƒ ƒ d ƒ |  i  t t d t ƒ ƒ d ƒ |  i  t t d t ƒ ƒ d ƒ |  i  t t d t ƒ ƒ d ƒ d  S(   Ni   y              @s   (1+6j)s   (1-6j)y                s   (-1+-0j)y              Àg      ð?s	   (1+inf*j)s	   (1-inf*j)s   (inf+1j)s   (-inf+inf*j)s   (nan+1j)s	   (1+nan*j)s   (nan+nan*j)i    s   inf*js   -inf*js   nan*jy      ð?      @y      ð?      Ày      ð?        y      ð¿       €y      ð?      Ày      ð?      Ày      ð?      @y      ð?      @(   R1   t   reprt   assertNotEqualR
   t   INFt   NAN(   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt	   test_reprK  s"       c         C   s   |  i  d d ƒ d  S(   Ni   y              @iÿÿÿÿy      ð?      @y      ð¿      Ày      ð¿      À(   R1   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_negb  s    c      
   C   sÒ   d } d	 } d  } zb t t i d ƒ } | | I| IJ| i ƒ  t t i d ƒ } |  i | i ƒ  d | | f ƒ Wd  | d  j	 o | i o | i ƒ  n y t i	 t i ƒ Wn t
 t f j
 o n XXd  S(
   Ng¤p=
×£
@y        ¸…ëQ¸@gffffff@y        ffffff@t   wbt   rbs   %s %s
y¤p=
×£
@¸…ëQ¸@yffffff@ffffff@(   R3   t   openR    t   TESTFNt   closeR1   t   readt   closedt   ost   removet   OSErrort   IOError(   R   R   R   t   fo(    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt	   test_filee  s    
$c         C   s¦   |  i  d
 i ƒ  d ƒ |  i  d i ƒ  d ƒ |  i  d i ƒ  d ƒ |  i  d i ƒ  d ƒ |  i  t d	 t ƒ i ƒ  d t f ƒ |  i  t t d	 ƒ i ƒ  t d f ƒ d  S(   Ni   y               @g      ð?g       @g       Àg        y               €g       €i    y      ð?       @(   g      ð?g       @y      ð?       À(   g      ð?g       À(   g        g       @(   g        g       €(   R1   t   __getnewargs__R
   Rn   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_getnewargsx  s    %t   doublet   IEEEc         C   sZ   d \ } } |  i  t | i d ƒ t d d ƒ ƒ |  i  t | i d ƒ t d d ƒ ƒ d  S(   Ny                y               €g      ð¿g        g       €(   y                y               €(   t   assertEqualsR   R   (   R   t   z1t   z2(    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   test_plus_minus_0j  s    %(   RL   RM   R   R   R   R   R   R)   R*   R,   R/   R<   R?   RA   RD   RE   RG   Rf   Rh   Rk   Rp   Rq   R~   R€   R!   t   __getformat__t
   startswithR†   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyR      s0   											'			Ž						c           C   s   t  i t ƒ d  S(   N(   R    t   run_unittestR   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt	   test_main‡  s    t   __main__(   R   Ry   t   testR    t   warningst   filterwarningst   DeprecationWarningR   t   mathR   R!   Rn   Ro   R   R   RŠ   RL   (    (    (    s.   /mit/python/lib/python2.6/test/test_complex.pyt   <module>   s   ÿ v	