mò
­fIc           @   sé  d  k  Z  d k l Z l Z l Z l Z d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f d d d f g Z d f  d „  ƒ  YZ d f  d „  ƒ  YZ d	 f  d
 „  ƒ  YZ	 d e  i
 f d „  ƒ  YZ
 d „  Z e d j o e ƒ  n d  S(   N(   s   run_unittests   TESTFNs   unlinks   have_unicodei    i   i   t   BasicIterClassc           B   s   t  Z d „  Z d „  Z RS(   Nc         C   s   | |  _  d |  _ d  S(   Ni    (   t   nt   selft   i(   R   R   (    (    t+   /mit/python/lib/python2.4/test/test_iter.pyt   __init__   s    	c         C   s4   |  i } | |  i j o
 t ‚ n | d |  _ | S(   Ni   (   R   R   t   resR   t   StopIteration(   R   R   (    (    R   t   next   s
    	
(   t   __name__t
   __module__R   R   (    (    (    R   R       s   	t   IteratingSequenceClassc           B   s   t  Z d „  Z d „  Z RS(   Nc         C   s   | |  _  d  S(   N(   R   R   (   R   R   (    (    R   R   !   s    c         C   s   t  |  i ƒ S(   N(   R    R   R   (   R   (    (    R   t   __iter__#   s    (   R	   R
   R   R   (    (    (    R   R       s   	t   SequenceClassc           B   s   t  Z d „  Z d „  Z RS(   Nc         C   s   | |  _  d  S(   N(   R   R   (   R   R   (    (    R   R   '   s    c         C   s3   d | j o |  i j  n o | Sn t ‚ d  S(   Ni    (   R   R   R   t
   IndexError(   R   R   (    (    R   t   __getitem__)   s    !(   R	   R
   R   R   (    (    (    R   R   &   s   	t   TestCasec           B   s×  t  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 d „  Z d „  Z d „  Z d „  Z e o d „  Z n d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z  d „  Z! d  „  Z" d! „  Z# d" „  Z$ e p d# „  Z$ n d$ „  Z% d% „  Z& d& „  Z' d' „  Z( d( „  Z) d) „  Z* d* „  Z+ d+ „  Z, d, „  Z- d- „  Z. d. „  Z/ d/ „  Z0 d0 „  Z1 d1 „  Z2 RS(2   Nc         C   sV   g  } x9 y | i ƒ  } Wn t j
 o Pn X| i | ƒ q	 W|  i | | ƒ d  S(   Ni   (	   R   t   itR   t   valR   t   appendR   t   assertEqualt   seq(   R   R   R   R   R   (    (    R   t   check_iterator4   s      c         C   s8   g  } x | D] } | i | ƒ q W|  i | | ƒ d  S(   N(   R   t   exprR   R   R   R   R   (   R   R   R   R   R   (    (    R   t   check_for_loop?   s
     c         C   s&   |  i t t d ƒ ƒ t d ƒ ƒ d  S(   Ni
   (   R   R   t   itert   range(   R   (    (    R   t   test_iter_basicF   s    c         C   s;   t  d ƒ } t | ƒ } t | ƒ } |  i | | j ƒ d  S(   Ni
   (   R   R   R   R   t   it2R   t   assert_(   R   R   R   R   (    (    R   t   test_iter_idempotencyJ   s    c         C   s&   |  i t t d ƒ ƒ t d ƒ ƒ d  S(   Ni
   (   R   R   R   R   (   R   (    (    R   t   test_iter_for_loopQ   s    c         C   s   t  d ƒ } g  } xX t | ƒ D]J } xA t | ƒ D]3 } x* t | ƒ D] } | i | | | f ƒ qE Wq2 Wq W|  i	 | t
 ƒ d  S(   Ni   (   R   R   R   R   R   t   jt   kR   R   R   t   TRIPLETS(   R   R   R   R   R    R!   (    (    R   t   test_iter_independenceU   s       "c         C   sv   t  d ƒ } g  } t | ƒ D]< } t | ƒ D]) } t | ƒ D] } | | | | f q= q- q ~ } |  i	 | t
 ƒ d  S(   Ni   (   R   R   t   _[1]R   R   R    R!   R   R   R   R"   (   R   R   R   R   R    R$   R!   (    (    R   t   test_nested_comprehensions_iter_   s    Vc         C   sd   t  d ƒ } g  } | D]0 } | D]# } | D] } | | | | f q+ q! q ~ } |  i | t	 ƒ d  S(   Ni   (
   R   R   R$   R   R    R!   R   R   R   R"   (   R   R   R   R   R    R$   R!   (    (    R   t   test_nested_comprehensions_forf   s    Dc         C   s    |  i t d ƒ t d ƒ ƒ d  S(   Ni
   (   R   R   R   R   (   R   (    (    R   t   test_iter_class_forl   s    c         C   s&   |  i t t d ƒ ƒ t d ƒ ƒ d  S(   Ni
   (   R   R   R   R   R   (   R   (    (    R   t   test_iter_class_iterp   s    c         C   s    |  i t d ƒ t d ƒ ƒ d  S(   Ni
   (   R   R   R   R   (   R   (    (    R   t   test_seq_class_fort   s    c         C   s&   |  i t t d ƒ ƒ t d ƒ ƒ d  S(   Ni
   (   R   R   R   R   R   (   R   (    (    R   t   test_seq_class_iterx   s    c         C   s9   d f  d „  ƒ  Y} |  i t | ƒ  d ƒ t d ƒ ƒ d  S(   Nt   Cc           B   s   t  Z d „  Z d „  Z RS(   Nc         C   s   d |  _ d  S(   Ni    (   R   R   (   R   (    (    R   R   ~   s    c         C   s1   |  i } | d |  _ | d j o
 t ‚ n | S(   Ni   id   (   R   R   R   (   R   R   (    (    R   t   __call__€   s
    	
(   R	   R
   R   R,   (    (    (    R   R+   }   s   	i
   (   R+   R   R   R   R   (   R   R+   (    (    R   t   test_iter_callable|   s    	c         C   s2   d g d „ } |  i t | d ƒ t d ƒ ƒ d  S(   Ni    c         C   s   |  d } | d |  d <| S(   Ni    i   (   t   stateR   (   R.   R   (    (    R   t   spamŠ   s    
i
   (   R/   R   R   R   R   (   R   R/   (    (    R   t   test_iter_function‰   s    c         C   s2   d g d „ } |  i t | d ƒ t d ƒ ƒ d  S(   Ni    c         C   s3   |  d } | d j o
 t ‚ n | d |  d <| S(   Ni    i
   i   (   R.   R   R   (   R.   R   (    (    R   R/   ’   s
    

i   i
   (   R/   R   R   R   R   (   R   R/   (    (    R   t   test_iter_function_stop‘   s    c         C   s}   d g d „ } g  } y+ x$ t | d ƒ D] } | i | ƒ q( WWn) t j
 o |  i | t d ƒ ƒ n X|  i	 d ƒ d  S(   Ni    c         C   s3   |  d } | d |  d <| d j o
 t ‚ n | S(   Ni    i   i
   (   R.   R   t   RuntimeError(   R.   R   (    (    R   R/   œ   s
    

i   i
   s   should have raised RuntimeError(
   R/   R   R   t   xR   R2   R   R   R   t   fail(   R   R/   R   R3   (    (    R   t   test_exception_function›   s     c         C   s   d t  f d „  ƒ  Y} g  } y( x! | d ƒ D] } | i | ƒ q, WWn) t j
 o |  i | t d ƒ ƒ n X|  i	 d ƒ d  S(   Nt   MySequenceClassc           B   s   t  Z d „  Z RS(   Nc         C   s'   | d j o
 t ‚ n t i |  | ƒ S(   Ni
   (   R   R2   R   R   R   (   R   R   (    (    R   R   ®   s    
(   R	   R
   R   (    (    (    R   R6   ­   s   i   i
   s   should have raised RuntimeError(
   R   R6   R   R3   R   R2   R   R   R   R4   (   R   R6   R   R3   (    (    R   t   test_exception_sequence¬   s     c         C   s6   d t  f d „  ƒ  Y} |  i | d ƒ t d ƒ ƒ d  S(   NR6   c           B   s   t  Z d „  Z RS(   Nc         C   s'   | d j o
 t ‚ n t i |  | ƒ S(   Ni
   (   R   R   R   R   R   (   R   R   (    (    R   R   ¾   s    
(   R	   R
   R   (    (    (    R   R6   ½   s   i   i
   (   R   R6   R   R   R   (   R   R6   (    (    R   t   test_stop_sequence¼   s    c         C   s&   |  i t t d ƒ ƒ t d ƒ ƒ d  S(   Ni'  (   R   R   R   R   (   R   (    (    R   t   test_iter_big_rangeÅ   s    c         C   s   |  i t g  ƒ g  ƒ d  S(   N(   R   R   R   (   R   (    (    R   t   test_iter_emptyÉ   s    c         C   s    |  i t d ƒ t d ƒ ƒ d  S(   Ni    i   i   i   i   i   i   i   i   i	   i
   (
   i    i   i   i   i   i   i   i   i   i	   (   R   R   R   R   (   R   (    (    R   t   test_iter_tupleÍ   s    c         C   s&   |  i t t d ƒ ƒ t d ƒ ƒ d  S(   Ni
   (   R   R   R   t   xrangeR   (   R   (    (    R   t   test_iter_xrangeÑ   s    c         C   s)   |  i t d ƒ d d d d d g ƒ d  S(   Nt   abcdet   at   bt   ct   dt   e(   R   R   R   (   R   (    (    R   t   test_iter_stringÕ   s    c         C   sM   |  i t t d ƒ ƒ t d ƒ t d ƒ t d ƒ t d ƒ t d ƒ g ƒ d  S(   NR>   R?   R@   RA   RB   RC   (   R   R   R   t   unicode(   R   (    (    R   t   test_iter_unicodeÚ   s    c         C   sA   h  } x t d ƒ D] } d  | | <q W|  i | | i ƒ  ƒ d  S(   Ni
   (   t   dictR   R   t   NoneR   R   t   keys(   R   R   RG   (    (    R   t   test_iter_dictà   s
     c         C   sÁ   t  t d ƒ } z, x% t d ƒ D] } | i d | ƒ q WWd  | i ƒ  Xt  t d ƒ } z3 |  i | d d d d d	 g ƒ |  i | g  ƒ Wd  | i ƒ  y t	 t ƒ Wn t
 j
 o n XXd  S(
   Nt   wi   s   %d
t   rs   0
s   1
s   2
s   3
s   4
(   t   opent   TESTFNt   fR   R   t   writet   closeR   R   t   unlinkt   OSError(   R   RO   R   (    (    R   t   test_iter_fileç   s"       
c         C   sÑ  |  i t t d ƒ ƒ t d ƒ ƒ |  i t t d ƒ ƒ g  ƒ |  i t f  ƒ g  ƒ |  i t t d d d ƒ ƒ t d d d ƒ ƒ h  d d <d d <d	 d
 <} |  i t | ƒ | i ƒ  ƒ |  i t t t ƒ |  i t t d ƒ t	 t
 d ƒ } z, x% t d ƒ D] } | i d | ƒ qWWd  | i ƒ  Xt	 t
 d ƒ } z^ |  i t | ƒ d d d d d g ƒ | i d d ƒ |  i t | ƒ d d d d d g ƒ Wd  | i ƒ  y t t
 ƒ Wn t j
 o n XXd  S(   Ni   i    i
   iÿÿÿÿt   onei   t   twoi   t   threei   i*   RK   s   %d
RL   s   0
s   1
s   2
s   3
s   4
(   R   R   t   listR   R   RB   RI   t   assertRaisest	   TypeErrorRM   RN   RO   R   RP   RQ   t   seekRR   RS   (   R   RB   RO   R   (    (    R   t   test_builtin_listú   s6    ".!  % 
c         C   s±  |  i t t d ƒ ƒ d ƒ |  i t t d ƒ ƒ f  ƒ |  i t g  ƒ f  ƒ |  i t f  ƒ f  ƒ |  i t d ƒ d ƒ h  d d <d d <d d <} |  i t | ƒ t | i ƒ  ƒ ƒ |  i t t t ƒ |  i t t d ƒ t	 t
 d ƒ } z, x% t d ƒ D] } | i d | ƒ qWWd  | i ƒ  Xt	 t
 d ƒ } z@ |  i t | ƒ d ƒ | i d d ƒ |  i t | ƒ d ƒ Wd  | i ƒ  y t t
 ƒ Wn t j
 o n XXd  S(   Ni   i    i   i   i   i   t   abcR?   R@   RA   RU   RV   RW   i*   RK   s   %d
RL   s   0
s   1
s   2
s   3
s   4
(   i    i   i   i   i   (   R?   R@   RA   (   s   0
s   1
s   2
s   3
s   4
(   s   0
s   1
s   2
s   3
s   4
(   R   R   t   tupleR   RB   RI   RY   RZ   RX   RM   RN   RO   R   R   RP   RQ   R[   RR   RS   (   R   RB   R   RO   (    (    R   t   test_builtin_tuple  s8    !"   
c         C   s‰  |  i t d  t d ƒ ƒ t d d ƒ ƒ |  i t d  t d ƒ ƒ g  ƒ |  i t d  f  ƒ f  ƒ |  i t d  d ƒ d ƒ h  d d <d d <d d	 <} |  i t d  | ƒ | i ƒ  ƒ |  i t	 t d  t
 ƒ |  i t	 t d  d
 ƒ d f  d „  ƒ  Y} | d ƒ } | d ƒ } d f  d „  ƒ  Y} | | | g d Œ  } |  i t d „  | ƒ | g d ƒ |  i t d „  t | ƒ ƒ | g d ƒ d  S(   Ni   i   i    R]   RU   RV   i   RW   i   i*   t   Booleanc           B   s   t  Z d „  Z d „  Z RS(   Nc         C   s   | |  _  d  S(   N(   t   truthR   (   R   Ra   (    (    R   R   H  s    c         C   s   |  i S(   N(   R   Ra   (   R   (    (    R   t   __nonzero__J  s    (   R	   R
   R   Rb   (    (    (    R   R`   G  s   	t   Seqc           B   s   t  Z d „  Z d „  Z RS(   Nc         G   s   | |  _ d  S(   N(   t   argsR   t   vals(   R   Rd   (    (    R   R   P  s    c         C   s    d f  d „  ƒ  Y} | |  i ƒ S(   Nt   SeqIterc           B   s#   t  Z d „  Z d „  Z d „  Z RS(   Nc         C   s   | |  _  d |  _ d  S(   Ni    (   Re   R   R   (   R   Re   (    (    R   R   T  s    	c         C   s   |  S(   N(   R   (   R   (    (    R   R   W  s    c         C   sE   |  i } | d |  _ | t |  i ƒ j  o |  i | Sn t ‚ d  S(   Ni   (   R   R   t   lenRe   R   (   R   R   (    (    R   R   Y  s
    	(   R	   R
   R   R   R   (    (    (    R   Rf   S  s   		(   Rf   R   Re   (   R   Rf   (    (    R   R   R  s    (   R	   R
   R   R   (    (    (    R   Rc   O  s   	i   c         C   s   |  S(   N(   R3   (   R3   (    (    R   t   <lambda>c  s    c         C   s   |  S(   N(   R3   (   R3   (    (    R   Rh   d  s    (   R   R   t   filterRH   R   R   RB   RI   RY   RZ   RX   R`   t   bTruet   bFalseRc   R   R   (   R   RB   Rc   Rj   R`   Rk   R   (    (    R   t   test_builtin_filter;  s    (!#c         C   sÂ  |  i t t d ƒ ƒ d ƒ |  i t t d ƒ ƒ d ƒ |  i t d d ƒ d ƒ |  i t d d ƒ d ƒ h  d d <d d	 <d
 d <} |  i t | ƒ d ƒ |  i t | ƒ d ƒ |  i t | i ƒ  ƒ d ƒ |  i t t | i ƒ  ƒ ƒ d ƒ t t	 d ƒ } z+ | i d ƒ | i d ƒ | i d ƒ Wd  | i ƒ  Xt t	 d ƒ } z@ |  i t | ƒ d ƒ | i d d ƒ |  i t | ƒ d ƒ Wd  | i ƒ  y t t	 ƒ Wn t j
 o n XXd  S(   Ni   i   i    i   iÿÿÿÿRU   i   RV   i   RW   i   RK   s   medium line
s   xtra large line
s   itty-bitty line
RL   (   R   R   t   maxR   t   minRB   t
   itervaluesR   RM   RN   RO   RP   RQ   R[   RR   RS   (   R   RB   RO   (    (    R   t   test_builtin_max_ming  s6    !"  
c         C   s  |  i t d  t d ƒ ƒ t d ƒ ƒ |  i t d „  t d ƒ ƒ t d d ƒ ƒ h  d d <d d <d d	 <} |  i t d  | ƒ | i ƒ  ƒ |  i t | d
 „ | ƒ | i ƒ  ƒ | i ƒ  } g  } t d ƒ D]R } | | t | ƒ j  o | | p d  | | t | ƒ j  o | | p d  f qÒ ~ } |  i t d  | t d ƒ t | i ƒ  ƒ ƒ | ƒ t t d ƒ } z0 x) t d ƒ D] } | i d | d ƒ q}WWd  | i ƒ  Xt t d ƒ } z) |  i t t | ƒ t d d d ƒ ƒ Wd  | i ƒ  y t t ƒ Wn t j
 o n XXd  S(   Ni   c         C   s   |  d S(   Ni   (   R3   (   R3   (    (    R   Rh   ‰  s    i   i   RU   RV   i   RW   i   c         C   s   |  | |  f S(   N(   R!   RB   (   R!   RB   (    (    R   Rh     s    RK   i
   t   xys   
RL   i   (   R   R   t   mapRH   R   R   RB   RI   t   itemst   dkeysR$   R   Rg   t   expectedR   t   iterkeysRM   RN   RO   RP   RQ   RR   RS   (   R   RB   RO   R   Rt   R$   Ru   (    (    R   t   test_builtin_map‡  s6    %+!%l	  ) 
c         C   s  |  i t ƒ  g  ƒ |  i t g  Œ  g  ƒ |  i t d  d g Œ  d! d" g ƒ |  i t t d  ƒ |  i t t t d ƒ d ƒ |  i t t t d ƒ t ƒ |  i t t d ƒ ƒ d# d$ d% g ƒ |  i t t d ƒ ƒ d& d' d( g ƒ h  d
 d <d d <d d <} |  i | i
 ƒ  t | | i ƒ  ƒ ƒ d f  d „  ƒ  Y} t t d ƒ } z | i d ƒ Wd  | i ƒ  Xt t d ƒ } z5 |  i t | d	 ƒ | | d ƒ ƒ d) d* d+ g ƒ Wd  | i ƒ  y t t ƒ Wn t j
 o n XX|  i t t d ƒ ƒ g  }	 t d ƒ D] } |	 | f q~	 ƒ d f  d „  ƒ  Y} d | f d „  ƒ  Y} d | f d „  ƒ  Y} |  i t | ƒ  ƒ d ƒ |  i t | ƒ  ƒ d ƒ |  i t | ƒ  ƒ t t d ƒ ƒ ƒ |  i t | ƒ  ƒ t t d ƒ ƒ ƒ |  i t | ƒ  ƒ t t d ƒ ƒ ƒ g  }	 t d ƒ D] } |	 | | f q~	 } x\ | ƒ  | ƒ  | ƒ  f D]B } x9 | ƒ  | ƒ  | ƒ  f D] }
 |  i t | |
 ƒ | ƒ qbWqCWd  S(,   Ni   i   t   abR?   R@   i
   i*   i   i    RU   RV   RW   t   IntsFromc           B   s#   t  Z d „  Z d „  Z d „  Z RS(   Nc         C   s   | |  _ d  S(   N(   t   startR   R   (   R   Rz   (    (    R   R   ¼  s    c         C   s   |  S(   N(   R   (   R   (    (    R   R   ¿  s    c         C   s   |  i } | d |  _ | S(   Ni   (   R   R   (   R   R   (    (    R   R   Â  s    	(   R	   R
   R   R   R   (    (    (    R   Ry   »  s   		RK   s	   a
bbb
cc
RL   iœÿÿÿs   a
s   bbb
iÿÿÿs   cc
ižÿÿÿi   t   NoGuessLen5c           B   s   t  Z d „  Z RS(   Nc         C   s   | d j o
 t ‚ n | S(   Ni   (   R   R   (   R   R   (    (    R   R   Ý  s    
(   R	   R
   R   (    (    (    R   R{   Ü  s   t
   Guess3Len5c           B   s   t  Z d „  Z RS(   Nc         C   s   d S(   Ni   (    (   R   (    (    R   t   __len__ã  s    (   R	   R
   R}   (    (    (    R   R|   â  s   t   Guess30Len5c           B   s   t  Z d „  Z RS(   Nc         C   s   d S(   Ni   (    (   R   (    (    R   R}   ç  s    (   R	   R
   R}   (    (    (    R   R~   æ  s   i   (   i   i   (   i   R?   (   i   R@   (   i    (   i   (   i   (   i    (   i   (   i   (   i    s   a
iœÿÿÿ(   i   s   bbb
iÿÿÿ(   i   s   cc
ižÿÿÿ(   R   R   t   zipRY   RZ   RH   R   R   R   RB   Rs   Ro   Ry   RM   RN   RO   RP   RQ   RR   RS   R<   R$   R   R{   R|   R~   Rg   Ru   R3   t   y(   R   R{   R|   Ry   Ru   R~   RB   RO   R   R$   R€   R3   (    (    R   t   test_builtin_zip©  sV    "!% ! 
@%%%-  c         C   s  d k  l } |  i t | t d ƒ ƒ d ƒ |  i t | t d ƒ d ƒ d ƒ |  i t t | t d ƒ ƒ |  i t | t d ƒ d ƒ d ƒ |  i t | t d ƒ ƒ d ƒ |  i t | t d ƒ d ƒ d ƒ h  d d <d	 d
 <d d <} |  i t | | ƒ d i	 | i
 ƒ  ƒ ƒ d  S(   N(   s   addi   i
   i*   i4   i    i   RU   RV   i   RW   i   t    (   t   operatort   addR   R   t   reduceR   RY   RZ   RB   t   joinRI   (   R   RB   R„   (    (    R   t   test_builtin_reduceö  s    """!c         C   s½   d f  d „  ƒ  Y} t t d ƒ } z | i d d d ƒ Wd  | i ƒ  Xt t d ƒ } z/ d i | | ƒ ƒ } |  i	 | t
 d	 ƒ ƒ Wd  | i ƒ  y t t ƒ Wn t j
 o n XXd  S(
   Nt   OhPhooeyc           B   s#   t  Z d „  Z d „  Z d „  Z RS(   Nc         C   s   t  | ƒ |  _ d |  _ d  S(   Ni    (   R   R   R   R   R   (   R   R   (    (    R   R     s    c         C   s   |  S(   N(   R   (   R   (    (    R   R     s    c         C   s>   |  i } | d |  _ | d j o t d ƒ Sn |  i i ƒ  S(   Ni   i   s   fooled you!(   R   R   RE   R   R   (   R   R   (    (    R   R     s
    	(   R	   R
   R   R   R   (    (    (    R   Rˆ     s   		RK   s   a
s   b
s   c
RL   s    - s   a
 - b
 - fooled you! - c
(   Rˆ   RM   RN   RO   RP   RQ   R†   t   gotR   R   RE   RR   RS   (   R   RO   Rˆ   R‰   (    (    R   t   test_unicode_join_endcase  s       
c         C   s   d  S(   N(    (   R   (    (    R   RŠ   ,  s    c         C   s–  x– t  d ƒ t d ƒ f D]| } x' t d ƒ D] } |  i | | j ƒ q, WxI d d d d d g  h  d d <d d | f	 D] } |  i | | j ƒ qx Wq W|  i t d	 „  ƒ |  i t d
 „  ƒ h  d d <d d <d d <d d <} x: | D]2 } |  i | | j ƒ |  i | | i ƒ  j ƒ qð Wx@ | i ƒ  D]2 } |  i | | i ƒ  j ƒ |  i | | j ƒ q3WxX | i ƒ  D]J \ } } |  i | | f | i ƒ  j ƒ |  i | | f | i ƒ  j ƒ qvWt t d ƒ } z | i d ƒ Wd  | i ƒ  Xt t d ƒ } z_ xX d D]P } | i d d ƒ |  i | | j ƒ | i d d ƒ |  i | d | j ƒ qWWd  | i ƒ  y t t ƒ Wn t j
 o n XXd  S(   Ni   R]   iÿÿÿÿf42.420000000000002i   i   i   x0.012.0c           C   s
   d d j S(   Ni   i   (    (    (    (    R   Rh   6  s    c           C   s
   d t  j S(   Ni   (   Rr   (    (    (    R   Rh   7  s    RU   RV   i   RW   x0.01.0x0.02.0RK   s   a
b
c
RL   i    s   
(   i   i   (   R   R   t   sc5R   R   R   R   RY   RZ   RB   R!   Ro   t   valuest   vt	   iteritemsRM   RN   RO   RP   RQ   t   chunkR[   RR   RS   (   R   RB   R   RO   R   R   R‹   R!   (    (    R   t   test_in_and_not_in/  sT      / *   #   
c         C   s'  d k  l } |  i | d d d d d d g d ƒ d ƒ |  i | d d ƒ d ƒ |  i | d d ƒ d ƒ |  i | d d ƒ d	 ƒ |  i t | d
 d ƒ |  i t | | | ƒ h  d d <d d <d d <d d <} x' | D] } |  i | | | ƒ d ƒ qà W|  i | | i ƒ  d ƒ d ƒ |  i | | i ƒ  d ƒ d ƒ |  i | | i ƒ  d ƒ d	 ƒ t	 t
 d ƒ } z | i d ƒ Wd  | i ƒ  Xt	 t
 d ƒ } zT xM d d d d f D]9 \ } } | i d	 d	 ƒ |  i | | | d ƒ | ƒ q³WWd  | i ƒ  y t t
 ƒ Wn t j
 o n XXd  S(   N(   s   countOfi   i   i   i   t   122325t   2t   6i    i*   RU   RV   RW   x0.01.0x0.02.0RK   s   a
b
c
b
RL   R?   R@   RA   RB   s   
(   i   i   i   i   i   i   (   R?   i   (   R@   i   (   RA   i   (   RB   i    (   Rƒ   t   countOfR   R   RY   RZ   RB   R!   Ro   RM   RN   RO   RP   RQ   t   lettert   countR[   RR   RS   (   R   R–   R”   RB   RO   R•   R!   (    (    R   t   test_countOfX  s>    +*   % 
c      	   C   sY  d k  l } |  i | d d d d d d g d ƒ d ƒ |  i | d d ƒ d ƒ |  i | d d ƒ d ƒ |  i | d d ƒ d ƒ |  i t | d d ƒ |  i t | d d ƒ |  i | d d	 ƒ d ƒ |  i | d d
 ƒ d ƒ |  i t | d d ƒ |  i t | d d ƒ |  i t | | | ƒ t t d ƒ } z | i
 d ƒ Wd  | i ƒ  Xt t d ƒ } zq t | ƒ } |  i | | d ƒ d ƒ |  i | | d ƒ d ƒ |  i | | d ƒ d ƒ |  i t | | d ƒ Wd  | i ƒ  y t t ƒ Wn t j
 o n XXt d ƒ } x- t d ƒ D] } |  i | | | ƒ | ƒ qW|  i t | | d ƒ d  S(   N(   s   indexOfi   i   i   i   i    i   R‘   R’   t   5R“   i*   RK   s
   a
b
c
d
e
RL   s   b
s   d
s   e
s   a
iÿÿÿÿ(   i   i   i   i   i   i   (   i   i   i   i   i   i   (   i   i   i   i   i   i   (   i   i   i   i   i   i   (   i   i   i   i   i   i   (   Rƒ   t   indexOfR   R   RY   t
   ValueErrorRZ   RM   RN   RO   RP   RQ   R   t   fiterRR   RS   R   t   iclassR   R   (   R   RO   R™   R›   R   Rœ   (    (    R   t   test_indexOf{  sF    +  
 c            s[  t  t d ƒ } z|  i t | i d  ƒ |  i t | i d ƒ | i d d g ƒ | i d ƒ | i h  d d  <ƒ | i h  ƒ d f  d	 „  ƒ  Y‰  d
 f  ‡  d †  ƒ  Y} | i | d d d ƒ ƒ | i
 ƒ  t  t ƒ } g  } t d d ƒ D] } | t | ƒ d qî ~ } |  i t | ƒ | ƒ Wd  | i
 ƒ  y t t ƒ Wn t j
 o n XXd  S(   NRK   i*   s   1
s   2
s   3
s   4
s   5
t   Iteratorc           B   s#   t  Z d „  Z d „  Z d „  Z RS(   Nc         C   s"   | |  _  | |  _ |  i  |  _ d  S(   N(   Rz   R   t   finishR   (   R   Rz   RŸ   (    (    R   R   ²  s    		c         C   sC   |  i |  i j o
 t ‚ n t |  i ƒ d } |  i d 7_ | S(   Ns   
i   (   R   R   RŸ   R   t   strt   result(   R   R¡   (    (    R   R   ·  s
    
c         C   s   |  S(   N(   R   (   R   (    (    R   R   ¾  s    (   R	   R
   R   R   R   (    (    (    R   Rž   ±  s   		t   Whateverc              s   t  Z d „  Z ‡  d †  Z RS(   Nc         C   s   | |  _  | |  _ d  S(   N(   Rz   R   RŸ   (   R   Rz   RŸ   (    (    R   R   Â  s    	c            s   ˆ  |  i |  i ƒ S(   N(   Rž   R   Rz   RŸ   (   R   (   Rž   (    R   R   Æ  s    (   R	   R
   R   R   (    (   Rž   (    R   R¢   Á  s   	i   iÐ  i   iÖ  s   
(   s   3
s   4
(   t   fileRN   RO   R   RY   RZ   t
   writelinesRH   Rž   R¢   RQ   R$   R   R   R    Ru   R   RX   RR   RS   (   R   Rž   RO   R   R¢   R$   Ru   (    (   Rž   R   t   test_writelines¤  s*    
4 
c   
      C   sí  d \ } } |  i | | f d ƒ t d ƒ \ } } } |  i | | | f d ƒ y t d ƒ \ } } Wn t j
 o n X|  i d ƒ y t d ƒ \ } } } Wn t j
 o n X|  i d ƒ y t \ } } } Wn t	 j
 o n X|  i d ƒ h  d d <d d <d d <i
 ƒ  \ } } } |  i | | | f d ƒ t t d ƒ } d } z" x | D] }	 | i |	 ƒ qcWWd  | i ƒ  Xt t d ƒ } z, | \ } } } |  i | | | f | ƒ Wd  | i ƒ  y t t ƒ Wn t j
 o n XXt d ƒ h  d d <\ } } \ } |  i | | | f d ƒ d t f d „  ƒ  Y} | ƒ  } |  i | i d ƒ ~ |  i | i d ƒ | ƒ  | ƒ  | ƒ  g } |  i | i d ƒ y t | ƒ \ } } Wn t j
 o n X~ |  i | i d ƒ d  S(   Ni   i   i   i    s   should have raised ValueErrors   should have raised TypeErrori*   RK   s   a
s   bb
s   ccc
RL   i   R+   c           B   s    t  Z d Z d „  Z d „  Z RS(   Ni    c         C   s   |  i d 7_ t i |  ƒ S(   Ni   (   t   clsR–   t   objectt   __new__(   R¦   (    (    R   R¨     s    c         C   s   |  i } | i d 8_ d  S(   Ni   (   R   t	   __class__R¦   R–   (   R   R¦   (    (    R   t   __del__  s    	 (   R	   R
   R–   R¨   Rª   (    (    (    R   R+     s   	(   i   i   (   i   i   (   i    i   i   (   i*   i*   i*   (   s   a
s   bb
s   ccc
(   i    i   i*   (   R?   R@   R   R   R   RA   Rš   R4   Rg   RZ   Ro   RM   RN   RO   t   linest   lineRP   RQ   RR   RS   R§   R+   R3   R–   t   lR   (
   R   R?   RA   R@   RO   R+   R«   R­   R3   R¬   (    (    R   t   test_unpack_iterÙ  sl    0   
%		c         C   sd   t  d ƒ } t | ƒ } |  i t | ƒ t  d ƒ ƒ | i t  d d ƒ ƒ |  i t | ƒ g  ƒ d  S(   Ni   i
   (   R   R?   R   R@   R   R   RX   t   extend(   R   R?   R@   (    (    R   t   test_sinkstate_list*  s
    c         C   sH   d } t | ƒ } |  i t | ƒ t d ƒ ƒ |  i t | ƒ g  ƒ d  S(   Ni    i   i   i   i   i   (   i    i   i   i   i   (   R?   R   R@   R   R   RX   R   (   R   R?   R@   (    (    R   t   test_sinkstate_tuple2  s    c         C   sQ   d } t | ƒ } |  i t | ƒ d d d d d g ƒ |  i t | ƒ g  ƒ d  S(   NR>   R?   R@   RA   RB   RC   (   R?   R   R@   R   R   RX   (   R   R?   R@   (    (    R   t   test_sinkstate_string8  s    %c         C   sW   t  d ƒ } t | ƒ } |  i t | ƒ t d ƒ ƒ d | _ |  i t | ƒ g  ƒ d  S(   Ni   i
   (	   R   R?   R   R@   R   R   RX   R   R   (   R   R?   R@   (    (    R   t   test_sinkstate_sequence>  s
    	c         C   sT   d g d „ } t | d ƒ } |  i t | ƒ t d ƒ ƒ |  i t | ƒ g  ƒ d  S(   Ni    c         C   s6   |  d } | d |  d <| d j o t d ‚ n | S(   Ni    i   i
   s   shouldn't have gotten this far(   R.   R   t   AssertionError(   R.   R   (    (    R   R/   H  s
    
i   (   R/   R   R@   R   R   RX   R   (   R   R@   R/   (    (    R   t   test_sinkstate_callableF  s    c         C   sª   h  d d <d d <d d <d d <d d <} xp t | ƒ | i ƒ  | i ƒ  | i ƒ  f D]D } t | ƒ } |  i t t	 | ƒ ƒ d ƒ |  i t	 | ƒ g  ƒ q^ Wd  S(   Ni   i   i    i   i   i   (
   R?   R   Rv   RŽ   Ro   R@   R   R   Rg   RX   (   R   R?   R@   (    (    R   t   test_sinkstate_dictR  s    3+ c         C   sH   d „  } | ƒ  } |  i t | ƒ t d ƒ ƒ |  i t | ƒ g  ƒ d  S(   Nc          c   s   x t  d ƒ D]
 }  |  Vq Wd  S(   Ni   (   R   R   (   R   (    (    R   t   gen\  s     i   (   R·   R@   R   R   RX   R   (   R   R@   R·   (    (    R   t   test_sinkstate_yield[  s    		c         C   sN   t  d ƒ } t | ƒ } |  i t | ƒ t d ƒ ƒ |  i t | ƒ g  ƒ d  S(   Ni   (   R<   R?   R   R@   R   R   RX   R   (   R   R?   R@   (    (    R   t   test_sinkstate_rangec  s    c         C   si   t  d ƒ } t | ƒ } t | ƒ } |  i t | ƒ t	 t  d ƒ t  d ƒ ƒ ƒ |  i t | ƒ g  ƒ d  S(   Ni   (
   R   R?   t	   enumerateRC   R   R@   R   R   RX   R   (   R   R?   R@   RC   (    (    R   t   test_sinkstate_enumeratei  s
    +(3   R	   R
   R   R   R   R   R   R#   R%   R&   R'   R(   R)   R*   R-   R0   R1   R5   R7   R8   R9   R:   R;   R=   RD   t   have_unicodeRF   RJ   RT   R\   R_   Rl   Rp   Rw   R   R‡   RŠ   R   R—   R   R¥   R®   R°   R±   R²   R³   Rµ   R¶   R¸   R¹   R»   (    (    (    R   R   1   sf   						
									
												 	!	,	 	"	M		(	)	#	)	5	Q									c           C   s   t  t ƒ d  S(   N(   t   run_unittestR   (    (    (    R   t	   test_mainq  s    t   __main__(   t   unittestt   test.test_supportR½   RN   RR   R¼   R"   R    R   R   R   R¾   R	   (   R   R¼   RÀ   R    R   R   R"   R½   RR   RN   R¾   (    (    R   t   ?   s   	ÿ Kÿ ÿ ÿ C	