;
Ëâ"Ic               @   sƒ  d  d l  m Z d  d l Z d  d l m Z m Z d  d l m Z d  d l Z d  d l	 Z	 d  d l
 m Z d  d l Z d  d l Z d Z d „  Z Gd „  d	 ƒ Z Gd
 „  d ƒ Z Gd „  d e j ƒ Z Gd „  d e j ƒ Z Gd „  d e ƒ Z Gd „  d e ƒ Z Gd „  d e j ƒ Z Gd „  d e ƒ Z Gd „  d e j ƒ Z d Z i e d 6Z e d „ Z e d k o e d e ƒ n d S(   i    (   u   dequeN(   u   supportu	   seq_tests(   u   proxy(   u   StringIOi † c               c   s   t  ‚ d Vd  S(   Ni   (   u   SyntaxError(    (    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   fail   s    c             B   s   |  Ee  Z d  „  Z d S(   c             C   s
   t  ‚ d  S(   N(   u   RuntimeError(   u   selfu   other(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   __eq__   s    N(   u   __name__u
   __module__u   __eq__(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   BadCmp   s   
u   BadCmpc             B   s    |  Ee  Z d  „  Z d „  Z d S(   c             C   s   | |  _  | |  _ d  S(   N(   u   dequeu   result(   u   selfu   dequeu   result(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   __init__   s    	c             C   s   |  j  j ƒ  |  j S(   N(   u   dequeu   clearu   result(   u   selfu   other(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   __eq__   s    N(   u   __name__u
   __module__u   __init__u   __eq__(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu	   MutateCmp   s   
	u	   MutateCmpc             B   s  |  Ee  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 d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d S(   c          
      s…  t  t d d ƒ ƒ ‰  ˆ  j t d ƒ ƒ x$ t d d ƒ D] } ˆ  j | ƒ q8 Wx* t t d d ƒ ƒ D] } ˆ  j | ƒ qe W|  j t ˆ  ƒ t t d d ƒ ƒ ƒ |  j t ˆ  ƒ d ƒ ‡  f d †  t d	 ƒ Dƒ } |  j | t t d d
 ƒ ƒ ƒ |  j t ˆ  ƒ t t d
 d ƒ ƒ ƒ ‡  f d †  t d	 ƒ Dƒ } | j	 ƒ  |  j | t t d d ƒ ƒ ƒ |  j t ˆ  ƒ t t d
 d ƒ ƒ ƒ d  S(   NiûëÿÿixìÿÿiÈ   i  i8ÿÿÿi    iX  c                s!   g  } |  ] } | ˆ  j  ƒ  q
 S(    (   u   popleft(   u   .0u   _[1]u   i(   u   d(    u,   /mit/python/lib/python3.0/test/test_deque.pyu
   <listcomp>)   s    iú   i2   c                s!   g  } |  ] } | ˆ  j  ƒ  q
 S(    (   u   pop(   u   .0u   _[1]u   i(   u   d(    u,   /mit/python/lib/python3.0/test/test_deque.pyu
   <listcomp>-   s    i–   (
   u   dequeu   rangeu   __init__u   appendu   reversedu
   appendleftu   assertEqualu   listu   lenu   reverse(   u   selfu   iu   leftu   right(    (   u   du,   /mit/python/lib/python3.0/test/test_deque.pyu   test_basics   s"      %%
c             C   s¹  |  j  t t d d ƒ |  j  t t d d ƒ t t d ƒ d d ƒ} |  j t | ƒ d ƒ |  j t | ƒ d d	 d
 g ƒ |  j | t t d ƒ d ƒ ƒ | j d ƒ |  j t | ƒ d	 d
 d g ƒ | j d ƒ |  j t | ƒ d d	 d
 g ƒ | j	 d d g ƒ |  j t | ƒ d
 d d g ƒ | j
 d	 d g ƒ |  j t | ƒ d d	 d
 g ƒ t t d ƒ d d ƒ} | j | ƒ t j t j ƒ t t j d ƒ } zO | j t | ƒ ƒ | j ƒ  t t j d ƒ } |  j | j ƒ  t | ƒ ƒ Wd  | j ƒ  t j t j ƒ Xt t d ƒ d d  ƒ} |  j t | ƒ d ƒ t t j d ƒ } zO | j t | ƒ ƒ | j ƒ  t t j d ƒ } |  j | j ƒ  t | ƒ ƒ Wd  | j ƒ  t j t j ƒ Xd  S(   Nu   abciÿÿÿÿiþÿÿÿi
   u   maxleni   u   deque([7, 8, 9], maxlen=3)i   i   i	   i   iÈ   u   wu   ru%   deque([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])(   u   assertRaisesu
   ValueErroru   dequeu   rangeu   assertEqualu   repru   listu   appendu
   appendleftu   extendu
   extendleftu   supportu   unlinku   TESTFNu   openu   writeu   stru   closeu   readu   None(   u   selfu   du   fo(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_maxlen2   sF    
 

 
c             C   s`  t  d ƒ } | j ƒ  xµ | t  d ƒ t  d ƒ t  ƒ  t | ƒ g D]‰ } |  j | | k t | ƒ t | ƒ k o t | ƒ t | ƒ k ƒ |  j | | k t | ƒ t | ƒ k o t | ƒ t | ƒ k ƒ qA Wt t  d
 ƒ } x|| D]t} xk| D]c} |  j | | k t | ƒ t | ƒ k | | f ƒ |  j | | k t | ƒ t | ƒ k | | f ƒ |  j | | k  t | ƒ t | ƒ k  | | f ƒ |  j | | k t | ƒ t | ƒ k | | f ƒ |  j | | k t | ƒ t | ƒ k | | f ƒ |  j | | k t | ƒ t | ƒ k | | f ƒ |  j t | | ƒ t t | ƒ t | ƒ ƒ | | f ƒ qñ Wqä Wd  S(   Nu   xabcu   abcu   abu    u   au   bu   bau   xbau   cba(	   u    u   au   bu   abu   bau   abcu   xbau   xabcu   cba(   u   dequeu   popleftu   listu   assertEqualu   typeu   mapu   cmp(   u   selfu   du   eu   argsu   xu   y(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_comparisonsZ   s$     
+ AF  111111c             C   sO   t  d ƒ } |  j t | j d ƒ | j d ƒ |  j t | ƒ t d ƒ ƒ d  S(   Nu   ai   u   bcdu   abcd(   u   dequeu   assertRaisesu	   TypeErroru   extendu   assertEqualu   list(   u   selfu   d(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_extendk   s    c             C   s²   t  d ƒ } |  j t | j d ƒ | j d ƒ |  j t | ƒ t t d ƒ ƒ ƒ t  ƒ  } | j t d ƒ ƒ |  j t | ƒ t t t d ƒ ƒ ƒ ƒ |  j t | j t	 ƒ  ƒ d  S(   Nu   ai   u   bcdu   abcdiè  (
   u   dequeu   assertRaisesu	   TypeErroru
   extendleftu   assertEqualu   listu   reversedu   rangeu   SyntaxErroru   fail(   u   selfu   d(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_extendleftq   s    "	(c             C   s<  d } t  t | ƒ ƒ } t t | ƒ ƒ } x¢ t | ƒ D]” } | j ƒ  | j d ƒ t j ƒ  d k  o | j | ƒ | j | ƒ n xC t d t | ƒ t | ƒ ƒ D]" } | | | | k p t ‚ q¥ Wq7 Wt  d ƒ } |  j	 | d d ƒ |  j	 | d d ƒ t  ƒ  } |  j
 t | j d ƒ |  j
 t | j d ƒ d  S(	   NiÈ   i    g      à?i   u   supermanu   siÿÿÿÿu   n(   u   dequeu   rangeu   listu   popleftu   popu   randomu   appendu   lenu   AssertionErroru   assertEqualu   assertRaisesu
   IndexErroru   __getitem__(   u   selfu   nu   du   lu   iu   j(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_getitem{   s&     
  $	c             C   sÆ   d } t  t | ƒ ƒ } x" t | ƒ D] } d | | | <q% W|  j t | ƒ d „  t | ƒ Dƒ ƒ t | ƒ } x: t d | d d ƒ D]" } d | | | <d | | | <q† W|  j t | ƒ | ƒ d  S(   NiÈ   i
   c             S   s   g  } |  ] } | d  | q
 S(   i
   (    (   u   .0u   _[1]u   i(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu
   <listcomp>”   s    i   i    iÿÿÿÿi   (   u   dequeu   rangeu   assertEqualu   list(   u   selfu   nu   du   iu   l(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_setitem   s     & c             C   sê   d } t  t | ƒ ƒ } |  j t | j | d ƒ |  j t | j | ƒ x„ t | ƒ D]v } |  j t | ƒ | | ƒ t j t | ƒ t | ƒ ƒ } | | } |  j	 | | k ƒ | | =|  j	 | | k ƒ qV W|  j t | ƒ d ƒ d  S(   Niô  i   i    (
   u   dequeu   rangeu   assertRaisesu
   IndexErroru   __delitem__u   assertEqualu   lenu   randomu	   randrangeu   assert_(   u   selfu   nu   du   iu   ju   val(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_delitem›   s     
c             C   sû  t  d ƒ } t | ƒ } t | ƒ } | j d ƒ |  j d j | ƒ d ƒ t | ƒ } | j d ƒ |  j d j | ƒ d ƒ | j ƒ  |  j t  | ƒ | ƒ xÈ t | d ƒ D]¶ } t | ƒ } t | ƒ } | j | ƒ x! t | ƒ D] } | j d ƒ qå W|  j t  | ƒ t  | ƒ ƒ | j | ƒ |  j t  | ƒ | ƒ | j | | ƒ |  j t  | ƒ | ƒ q­ WxÈ t | d ƒ D]¶ } t | ƒ } t | ƒ } | j | ƒ x! t | ƒ D] } | j d ƒ q±W|  j t  | ƒ t  | ƒ ƒ | j | ƒ |  j t  | ƒ | ƒ | j | | ƒ |  j t  | ƒ | ƒ qxWt | ƒ } t | ƒ } | j t d ƒ | j } x t t d ƒ D] } | ƒ  quW|  j t  | ƒ t  | ƒ ƒ |  j t	 | j d	 ƒ |  j t	 | j d d
 ƒ t ƒ  } | j ƒ  |  j | t ƒ  ƒ d  S(   Nu   abcdei   u    u   eabcdiÿÿÿÿu   bcdeai   i   u   xi
   (
   u   tupleu   lenu   dequeu   rotateu   assertEqualu   joinu   rangeu   BIGu   assertRaisesu	   TypeError(   u   selfu   su   nu   du   iu   eu   ju   dr(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_rotate©   sb    
    	 	
c             C   sõ   t  d ƒ } |  j t | ƒ d ƒ | j ƒ  |  j t | ƒ d ƒ | j ƒ  |  j t | ƒ d ƒ |  j t | j ƒ |  j t | ƒ d ƒ | j d ƒ |  j t | ƒ d ƒ | j d ƒ |  j t | ƒ d ƒ | j	 ƒ  |  j t | ƒ d ƒ d  S(   Nu   abi   i   i    u   cu   d(
   u   dequeu   assertEqualu   lenu   popleftu   popu   assertRaisesu
   IndexErroru   appendu
   appendleftu   clear(   u   selfu   d(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_lenÞ   s    


c             C   s3   t  ƒ  } |  j t | j ƒ |  j t | j ƒ d  S(   N(   u   dequeu   assertRaisesu
   IndexErroru   popu   popleft(   u   selfu   d(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_underflowî   s    	c             C   s‚   t  t d ƒ ƒ } |  j t | ƒ d ƒ | j ƒ  |  j t | ƒ d ƒ |  j t | ƒ g  ƒ | j ƒ  |  j t | ƒ g  ƒ d  S(   Nid   i    (   u   dequeu   rangeu   assertEqualu   lenu   clearu   list(   u   selfu   d(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu
   test_clearó   s    

c             C   sW  t  d ƒ } | j d ƒ |  j | t  d ƒ ƒ | j d ƒ |  j | t  d ƒ ƒ |  j t | j d ƒ |  j | t  d ƒ ƒ t  d d t ƒ  d g ƒ } t  | ƒ } |  j t | j d ƒ x0 t | | ƒ D] \ } } |  j | | k ƒ qË Wxb d
 D]Z } t  d g ƒ } | j t | | ƒ d g ƒ |  j t | j d ƒ |  j | t  ƒ  ƒ qõ Wd  S(   Nu   abcdefghciju   cu
   abdefghciju	   abdefghiju   au   bu   abTF(   TF(   u   dequeu   removeu   assertEqualu   assertRaisesu
   ValueErroru   BadCmpu   RuntimeErroru   zipu   assert_u   Trueu   Falseu   extendu	   MutateCmpu
   IndexError(   u   selfu   du   eu   xu   yu   match(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_removeü   s&      c             C   sj   t  t d ƒ ƒ } t t | ƒ ƒ } |  j t | ƒ t | ƒ ƒ | j | ƒ |  j d t | ƒ k ƒ d  S(   NiÈ   u   ...(   u   dequeu   rangeu   evalu   repru   assertEqualu   listu   appendu   assert_(   u   selfu   du   e(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu	   test_repr  s
    c             C   sµ   t  t d ƒ ƒ } | j | ƒ zt t j t j ƒ t t j d ƒ } t | d | d d ƒ| j ƒ  t t j d ƒ } |  j	 | j
 ƒ  t | ƒ ƒ Wd  | j ƒ  t j t j ƒ Xd  S(   NiÈ   u   wu   fileu   endu    u   r(   u   dequeu   rangeu   appendu   supportu   unlinku   TESTFNu   openu   printu   closeu   assertEqualu   readu   repr(   u   selfu   du   fo(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu
   test_print  s    
 
c             C   s0   |  j  t t d d d ƒ |  j  t t d ƒ d  S(   Nu   abci   i   i   (   u   assertRaisesu	   TypeErroru   deque(   u   self(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu	   test_init)  s    c             C   s   |  j  t t t d ƒ ƒ d  S(   Nu   abc(   u   assertRaisesu	   TypeErroru   hashu   deque(   u   self(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu	   test_hash-  s    c          	   C   s¹   x² d D]ª } t  t | ƒ ƒ } | j | j } } xS t | t ƒ D]B } | | ƒ | ƒ  } | | | k o |  j | | | ƒ qB qB W|  j t | ƒ t t t | t ƒ ƒ ƒ q Wd  S(   Ni    i   i   id   iè  (   i    i   i   id   iè  (   u   dequeu   rangeu   appendu   popleftu   BIGu   assertEqualu   list(   u   selfu   sizeu   du   appendu   popu   iu   x(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu#   test_long_steadystate_queue_popleft0  s      
	c          	   C   sË   xÄ d D]¼ } t  t t | ƒ ƒ ƒ } | j | j } } xS t | t ƒ D]B } | | ƒ | ƒ  } | | | k o |  j | | | ƒ qH qH W|  j t t t | ƒ ƒ ƒ t t t | t ƒ ƒ ƒ q Wd  S(   Ni    i   i   id   iè  (   i    i   i   id   iè  (   u   dequeu   reversedu   rangeu
   appendleftu   popu   BIGu   assertEqualu   list(   u   selfu   sizeu   du   appendu   popu   iu   x(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu$   test_long_steadystate_queue_popright;  s      
	c             C   s‚   t  ƒ  } | j | j } } x t t ƒ D] } | | ƒ q) Wx> t t ƒ D]0 } | ƒ  } | | k o |  j | | ƒ qJ qJ Wd  S(   N(   u   dequeu   appendu   popleftu   rangeu   BIGu   assertEqual(   u   selfu   du   appendu   popu   iu   x(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_big_queue_popleftG  s    	  	c             C   s‚   t  ƒ  } | j | j } } x t t ƒ D] } | | ƒ q) Wx> t t ƒ D]0 } | ƒ  } | | k o |  j | | ƒ qJ qJ Wd  S(   N(   u   dequeu
   appendleftu   popu   rangeu   BIGu   assertEqual(   u   selfu   du   appendu   popu   iu   x(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_big_queue_poprightR  s    	  	c             C   sž   t  ƒ  } | j | j } } x t t ƒ D] } | | ƒ q) WxD t t t ƒ ƒ D]0 } | ƒ  } | | k o |  j | | ƒ qP qP W|  j t | ƒ d ƒ d  S(   Ni    (   u   dequeu   appendu   popu   rangeu   BIGu   reversedu   assertEqualu   len(   u   selfu   du   appendu   popu   iu   x(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_big_stack_right\  s    	  	c             C   sž   t  ƒ  } | j | j } } x t t ƒ D] } | | ƒ q) WxD t t t ƒ ƒ D]0 } | ƒ  } | | k o |  j | | ƒ qP qP W|  j t | ƒ d ƒ d  S(   Ni    (   u   dequeu
   appendleftu   popleftu   rangeu   BIGu   reversedu   assertEqualu   len(   u   selfu   du   appendu   popu   iu   x(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_big_stack_leftg  s    	  	c             C   sZ   t  t d ƒ ƒ } t  | ƒ } |  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ d  S(   NiÈ   (   u   dequeu   rangeu   assertNotEqualu   idu   assertEqualu   list(   u   selfu   du   e(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_roundtrip_iter_initr  s    c             C   s€   t  t d ƒ ƒ } xg d D]_ } t j | | ƒ } t j | ƒ } |  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ q Wd  S(   NiÈ   i    i   i   (   i    i   i   (	   u   dequeu   rangeu   pickleu   dumpsu   loadsu   assertNotEqualu   idu   assertEqualu   list(   u   selfu   du   iu   su   e(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_picklex  s     c             C   s‰   d g } t  | g ƒ } t j | ƒ } |  j t | ƒ t | ƒ ƒ d | d <|  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ d  S(   Ni
   i   i    (   u   dequeu   copyu   deepcopyu   assertEqualu   listu   assertNotEqualu   id(   u   selfu   mutu   du   e(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_deepcopyˆ  s    	
c             C   s‰   d g } t  | g ƒ } t j | ƒ } |  j t | ƒ t | ƒ ƒ d | d <|  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ d  S(   Ni
   i   i    (   u   dequeu   copyu   assertEqualu   listu   assertNotEqualu   id(   u   selfu   mutu   du   e(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu	   test_copy‘  s    	
c             C   sO   xH d t  d ƒ f D]4 } |  j t t t | ƒ ƒ ƒ t t | ƒ ƒ ƒ q Wd  S(   Nu   abcdiÐ  (   u   rangeu   assertEqualu   listu   reversedu   deque(   u   selfu   s(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_reversedš  s     c             C   sG   d d  l  } t ƒ  } x+ t d ƒ D] } | j d ƒ | j ƒ  q" Wd  S(   Ni    id   i   (   u   gcu   dequeu   rangeu   appendu   collect(   u   selfu   gcu   du   i(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_gc_doesnt_blowupž  s    	 N(   u   __name__u
   __module__u   test_basicsu   test_maxlenu   test_comparisonsu   test_extendu   test_extendleftu   test_getitemu   test_setitemu   test_delitemu   test_rotateu   test_lenu   test_underflowu
   test_clearu   test_removeu	   test_repru
   test_printu	   test_initu	   test_hashu#   test_long_steadystate_queue_popleftu$   test_long_steadystate_queue_poprightu   test_big_queue_popleftu   test_big_queue_poprightu   test_big_stack_rightu   test_big_stack_leftu   test_roundtrip_iter_initu   test_pickleu   test_deepcopyu	   test_copyu   test_reversedu   test_gc_doesnt_blowup(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu	   TestBasic   s:   
		(			
				5													
									u	   TestBasicc             B   s)   |  Ee  Z d  „  Z d „  Z d „  Z d S(   c             C   sí   xæ d d t  d ƒ d	 t  d d d ƒ f D]½ } x` t j t j t j t j t j t j f D]4 } |  j t	 t
 | | ƒ ƒ ƒ t	 | | ƒ ƒ ƒ qY W|  j t t
 t j | ƒ ƒ |  j t t
 t j | ƒ ƒ |  j t t
 t j | ƒ ƒ q( Wd  S(
   Nu   123u    iè  u   dog333333ó?iÐ  i˜  i   (   u   dog333333ó?(   u   rangeu	   seq_testsu   Sequenceu   IterFuncu   IterGenu   IterFuncStopu	   itermultiu   iterfuncu   assertEqualu   listu   dequeu   assertRaisesu	   TypeErroru   IterNextOnlyu
   IterNoNextu   ZeroDivisionErroru
   IterGenExc(   u   selfu   su   g(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_constructor©  s    (  2c             C   s9   t  d ƒ } t | ƒ } | j ƒ  |  j t t | ƒ d  S(   Nu   abcdefg(   u   dequeu   iteru   popu   assertRaisesu   RuntimeErroru   next(   u   selfu   du   it(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_iter_with_altered_data³  s    
c             C   s9   t  ƒ  } t | ƒ } | j d ƒ |  j t t | ƒ d  S(   Ni
   (   u   dequeu   iteru   appendu   assertRaisesu   RuntimeErroru   next(   u   selfu   du   it(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu!   test_runtime_error_on_empty_deque¹  s    	N(   u   __name__u
   __module__u   test_constructoru   test_iter_with_altered_datau!   test_runtime_error_on_empty_deque(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   TestVariousIteratorArgs§  s   
	
	u   TestVariousIteratorArgsc             B   s   |  Ee  Z d  S(   N(   u   __name__u
   __module__(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   Deque¿  s   
u   Dequec             B   s   |  Ee  Z d  „  Z d S(   c             C   s
   t  ‚ d  S(   N(   u	   TypeError(   u   self(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   __iter__Ã  s    N(   u   __name__u
   __module__u   __iter__(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   DequeWithBadIterÂ  s   
u   DequeWithBadIterc             B   s2   |  Ee  Z d  „  Z d „  Z d „  Z d „  Z d S(   c          
      s¢  t  t d ƒ ƒ ‰  ˆ  j t d ƒ ƒ x$ t d d ƒ D] } ˆ  j | ƒ q5 Wx* t t d d ƒ ƒ D] } ˆ  j | ƒ qb W|  j t ˆ  ƒ t t d d ƒ ƒ ƒ |  j t ˆ  ƒ d ƒ ‡  f d †  t d ƒ Dƒ } |  j | t t d d	 ƒ ƒ ƒ |  j t ˆ  ƒ t t d	 d ƒ ƒ ƒ ‡  f d
 †  t d ƒ Dƒ } | j	 ƒ  |  j | t t d d ƒ ƒ ƒ |  j t ˆ  ƒ t t d	 d ƒ ƒ ƒ ˆ  j
 ƒ  |  j t ˆ  ƒ d ƒ d  S(   Ni   iÈ   i  i8ÿÿÿi    iX  c                s!   g  } |  ] } | ˆ  j  ƒ  q
 S(    (   u   popleft(   u   .0u   _[1]u   i(   u   d(    u,   /mit/python/lib/python3.0/test/test_deque.pyu
   <listcomp>Ò  s    iú   i2   c                s!   g  } |  ] } | ˆ  j  ƒ  q
 S(    (   u   pop(   u   .0u   _[1]u   i(   u   d(    u,   /mit/python/lib/python3.0/test/test_deque.pyu
   <listcomp>Ö  s    i–   (   u   Dequeu   rangeu   __init__u   appendu   reversedu
   appendleftu   assertEqualu   listu   lenu   reverseu   clear(   u   selfu   iu   leftu   right(    (   u   du,   /mit/python/lib/python3.0/test/test_deque.pyu   test_basicsÈ  s&      %%
%
c             C   s  t  d ƒ } | j ƒ  } |  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ t  | ƒ } |  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ t j | ƒ } t j | ƒ } |  j t	 | ƒ t	 | ƒ ƒ |  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ t  d d d ƒ} | j ƒ  } |  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ t  | ƒ } |  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ t j | ƒ } t j | ƒ } |  j t	 | ƒ t	 | ƒ ƒ |  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ d  S(   Nu   abcu   abcdeu   maxleni   (
   u   Dequeu   __copy__u   assertEqualu   typeu   listu   pickleu   dumpsu   loadsu   assertNotEqualu   id(   u   selfu   du   eu   s(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_copy_pickleÞ  s0    c             C   sQ   t  d ƒ } t | ƒ } |  j t | ƒ t | ƒ ƒ d  } |  j t t | ƒ d  S(   Nu   gallahad(   u   dequeu   proxyu   assertEqualu   stru   Noneu   assertRaisesu   ReferenceError(   u   selfu   du   p(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_weakref  s
    c             C   sK   Gd „  d t  ƒ } | d d d g ƒ } | d d d g ƒ } | | k d  S(	   Nc             B   s   |  Ee  Z d  „  Z d S(   c             S   s
   t  g  ƒ S(   N(   u   iter(   u   self(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   __iter__  s    N(   u   __name__u
   __module__u   __iter__(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   X  s   
u   Xi   i   i   i   i   i   (   u   deque(   u   selfu   Xu   d1u   d2(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_strange_subclass  s    N(   u   __name__u
   __module__u   test_basicsu   test_copy_pickleu   test_weakrefu   test_strange_subclass(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   TestSubclassÆ  s   
		5	u   TestSubclassc             B   s   |  Ee  Z d  d „ Z d S(   i   c             C   s   t  j |  ƒ d  S(   N(   u   dequeu   __init__(   u   selfu   newarg(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   __init__%  s    N(   u   __name__u
   __module__u   __init__(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   SubclassWithKwargs$  s   
u   SubclassWithKwargsc             B   s   |  Ee  Z d  „  Z d S(   c             C   s   t  d d ƒ d  S(   Nu   newargi   (   u   SubclassWithKwargs(   u   self(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   test_subclass_with_kwargs)  s    N(   u   __name__u
   __module__u   test_subclass_with_kwargs(   u
   __locals__(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   TestSubclassWithKwargs(  s   
u   TestSubclassWithKwargsu“
  
Example from the Library Reference:  Doc/lib/libcollections.tex

>>> from collections import deque
>>> d = deque('ghi')                 # make a new deque with three items
>>> for elem in d:                   # iterate over the deque's elements
...     print(elem.upper())
G
H
I
>>> d.append('j')                    # add a new entry to the right side
>>> d.appendleft('f')                # add a new entry to the left side
>>> d                                # show the representation of the deque
deque(['f', 'g', 'h', 'i', 'j'])
>>> d.pop()                          # return and remove the rightmost item
'j'
>>> d.popleft()                      # return and remove the leftmost item
'f'
>>> list(d)                          # list the contents of the deque
['g', 'h', 'i']
>>> d[0]                             # peek at leftmost item
'g'
>>> d[-1]                            # peek at rightmost item
'i'
>>> list(reversed(d))                # list the contents of a deque in reverse
['i', 'h', 'g']
>>> 'h' in d                         # search the deque
True
>>> d.extend('jkl')                  # add multiple elements at once
>>> d
deque(['g', 'h', 'i', 'j', 'k', 'l'])
>>> d.rotate(1)                      # right rotation
>>> d
deque(['l', 'g', 'h', 'i', 'j', 'k'])
>>> d.rotate(-1)                     # left rotation
>>> d
deque(['g', 'h', 'i', 'j', 'k', 'l'])
>>> deque(reversed(d))               # make a new deque in reverse order
deque(['l', 'k', 'j', 'i', 'h', 'g'])
>>> d.clear()                        # empty the deque
>>> d.pop()                          # cannot pop from an empty deque
Traceback (most recent call last):
  File "<pyshell#6>", line 1, in -toplevel-
    d.pop()
IndexError: pop from an empty deque

>>> d.extendleft('abc')              # extendleft() reverses the input order
>>> d
deque(['c', 'b', 'a'])



>>> def delete_nth(d, n):
...     d.rotate(-n)
...     d.popleft()
...     d.rotate(n)
...
>>> d = deque('abcdef')
>>> delete_nth(d, 2)   # remove the entry at d[2]
>>> d
deque(['a', 'b', 'd', 'e', 'f'])



>>> def roundrobin(*iterables):
...     pending = deque(iter(i) for i in iterables)
...     while pending:
...         task = pending.popleft()
...         try:
...             yield next(task)
...         except StopIteration:
...             continue
...         pending.append(task)
...

>>> for value in roundrobin('abc', 'd', 'efgh'):
...     print(value)
...
a
d
e
b
f
c
g
h


>>> def maketree(iterable):
...     d = deque(iterable)
...     while len(d) > 1:
...         pair = [d.popleft(), d.popleft()]
...         d.append(pair)
...     return list(d)
...
>>> print(maketree('abcdefgh'))
[[[['a', 'b'], ['c', 'd']], [['e', 'f'], ['g', 'h']]]]

u
   libreftestc             C   sÑ   d d  l  } t t t t f } t j | Œ  |  o{ t | d ƒ ok d d  l } d  g d } xA t
 t | ƒ ƒ D]- } t j | Œ  | j ƒ  | j ƒ  | | <qn Wt | ƒ n d d l m } t j | |  ƒ d  S(   Ni    u   gettotalrefcounti   (   u
   test_deque(   u   sysu	   TestBasicu   TestVariousIteratorArgsu   TestSubclassu   TestSubclassWithKwargsu   supportu   run_unittestu   hasattru   gcu   Noneu   rangeu   lenu   collectu   gettotalrefcountu   printu   testu
   test_dequeu   run_doctest(   u   verboseu   sysu   test_classesu   gcu   countsu   iu
   test_deque(    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu	   test_main˜  s"    	 
u   __main__u   verbose(    u   collectionsu   dequeu   unittestu   testu   supportu	   seq_testsu   weakrefu   proxyu   copyu   pickleu   iou   StringIOu   randomu   osu   BIGu   failu   BadCmpu	   MutateCmpu   TestCaseu	   TestBasicu   TestVariousIteratorArgsu   Dequeu   DequeWithBadIteru   TestSubclassu   SubclassWithKwargsu   TestSubclassWithKwargsu
   libreftestu   __test__u   Noneu	   test_mainu   __name__u   True(    (    (    u,   /mit/python/lib/python3.0/test/test_deque.pyu   <module>   s2   	ÿ ‹^i