๓
ฆี\c           @` s*  d  d l  m Z m Z m Z d  d l Z d  d l m Z m Z m Z m	 Z	 d  d l
 m Z d  d l m Z m Z m Z i d  d 6d d 6d d	 6d
 d 6d d 6d d 6d d 6Z d   Z d   Z d   Z d   Z d   Z d   Z d e f d     YZ d   Z d   Z d   Z d   Z d   Z d S(   i    (   t   absolute_importt   divisiont   print_functionN(   t   start_state_from_daskt   get_synct   finish_taskt   sortkey(   t   order(   t   GetFunctionTestMixint   inct   addt   f0i   t   f1t   f2i   t   f3i   t   f4i   t   f5i   t   f6c          C` su  i d d 6d d 6t  d f d 6t d d f d 6}  t |   } i	 i d d 6d d 6d 6i t d d g  d 6t g   d 6t g   d 6t d g  d 6d 6i t g   d 6t d g  d 6t d g  d 6t d g  d 6d	 6t g   d
 6t g   d 6t g   d 6d g d 6i t d g  d 6d 6i t d g  d 6t d g  d 6t d g  d 6d 6} | | k sqt  d  S(   Ni   t   xi   t   yt   zt   wt   cachet   dependenciest
   dependentst   finishedt   releasedt   runningt   readyt   waitingt   waiting_data(   R	   R
   R   t   sett   AssertionError(   t   dskt   resultt   expected(    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_start_state   s(    1
c          C` so   i t  d f d 6}  i d d 6} t |  |  } | d d t d g  k sR t  | d d g k sk t  d  S(   Nt   at   bi   R   R   (   R	   R   R   R    (   R!   R   R"   (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_start_state_looks_at_cache%   s
    #c          C` sN   i d d 6d d 6t  d f d 6}  t |   } | d i d d 6k sJ t  d  S(   Ni   R   R   R   R   (   R	   R   R    (   R!   R"   (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_start_state_with_redirects-   s    !c           C` s0   t  i t d f d 6 d d g k s, t  d  S(   Ni   R   R   (   R   R	   R    (    (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt4   test_start_state_with_independent_but_runnable_tasks3   s    c          C` sึ   i d t  d f g d 6d d d d g d 6t  d f d 6}  t |   } t | d j    d g k sj t  d | d	 k r d | d	 k s t  t d
   d D  } | d | k sผ t  | d | k sา t  d  S(   Ni   i   R%   i   i   R&   t   cR   R   c         s` s   |  ] } | t    f Vq d  S(   N(   R   (   t   .0t   k(    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pys	   <genexpr>>   s    t   abcR   R   (   R	   R   t   listt   keysR    t   dict(   R!   t   statet   deps(    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt#   test_start_state_with_tasks_no_deps7   s    %&c          C` sม  i d d 6d d 6t  d f d 6t d d f d 6}  t |   j } t |   } | d j d  t d d g  | d	 <d } d } | | d
 d <t |  | | t   |  | i	 i d d 6d d 6d
 6i t d d g  d 6t g   d 6t g   d 6t d g  d 6d 6t d g  d 6t d g  d 6t d g  d	 6i t g   d 6t d g  d 6t d g  d 6t d g  d 6d 6d g d 6i  d 6i t d g  d 6t d g  d 6d 6k sฝt  d  S(   Ni   R   i   R   R   R   R   s
   other-taskR   R   R   R   R   R   R   R   (	   R	   R
   R   t   getR   t   removeR   R   R    (   R!   R   R1   t   taskR"   (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_finish_taskC   s2    1
t   TestGetAsyncc           B` s   e  Z e e  Z d    Z RS(   c         C` s.   |  j  i t d f d 6d d 6d d d d  S(   NR   R   i   t   num_workersi   (   R4   R	   (   t   self(    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_get_sync_num_workersd   s    (   t   __name__t
   __module__t   staticmethodR   R4   R;   (    (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyR8   a   s   c          ` s   y d d l  m }  Wn t k
 r( d  SX|        f d   } t j j d    & t i | d f d 6d d 6d  Wd  QXd  S(   Ni    (   t   Chestc         ` s   d   k s t   |  d S(   NR   i   (   R    (   R   (   R   (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   inc2o   s    R   R   R   i   (   t   chestR?   t   ImportErrort   daskt   configR   R   (   R?   R@   (    (   R   s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_cache_optionsh   s    	c          C` s@   d d d d g }  t  |  d t d d	 d
 d g k s< t  d  S(   NR   i   R   i    t   key(   R   i   (   R   i    (   R   i    (   R   i    (   R   i   (   R   i    (   t   sortedR   R    (   t   L(    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_sort_keyw   s    c          ` sg   d   }  i |  d f d 6  d d l  m }   f d   }   f d   } |   d d | d	 | d  S(
   Nc         S` s   |  d S(   Ni   (    (   R   (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   <lambda>}   t    i   R%   i    (   R4   c         ` sI   |  d k s |  d  k s t  |   k s0 t  t | t  sE t  d  S(   NR%   (   t   NoneR    t
   isinstanceR0   (   RF   t   dR1   (   R!   (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   start_callback   s    c         ` sg   |  d k s |  d  k s t  | d k s< | d  k s< t  |   k sN t  t | t  sc t  d  S(   NR%   i   (   RL   R    RM   R0   (   RF   t   valueRN   R1   t	   worker_id(   R!   (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   end_callback   s    RO   RR   (   t   dask.threadedR4   (   t   fR4   RO   RR   (    (   R!   s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_callback|   s    	c          ` sะ   d t  f d     Y    f d   }  d d l m } y' | i |  f d 6d  t s[ t  Wnm   k
 rห } d t |  k s t  d t |  k s t  | j d	 k sณ t  | j d
 k sฬ t  n Xd  S(   Nt   MyExceptionc           B` s   e  Z d    Z d   Z RS(   c         S` s   | |  _  | |  _ d  S(   N(   R%   R&   (   R:   R%   R&   (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   __init__   s    	c         S` s   d S(   Ns   My Exception!(    (   R:   (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   __str__   s    (   R<   R=   RW   RX   (    (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyRV      s   	c           ` s     d d   d  S(   Ni   i   (    (    (   RV   (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyRT      s    i    (   R4   R   s   My Exception!R%   i   i   (	   t	   ExceptionRS   R4   t   FalseR    t   strt   dirR%   R&   (   RT   R4   t   e(    (   RV   s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_exceptions_propagate   s    c          ` s   g      f d     f d   t  d  D }  t |   } d   t |  f |  d <t |  d    t    k s{ t  d  S(   Nc         ` s     j  |   d  S(   N(   t   append(   t   i(   RH   (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyR_   ช   s    c         ` s%   i  |  ] }   | f d  | f  q S(   R   (    (   R+   R`   (   R_   (    s4   lib/python2.7/site-packages/dask/tests/test_local.pys
   <dictcomp>ญ   s   	 i
   c          W` s   d  S(   N(   RL   (   t   args(    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyRJ   ฏ   RK   R   (   t   rangeRG   R.   R   R    (   R!   t   x_keys(    (   RH   R_   s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   test_orderingง   s    (   t
   __future__R    R   R   RC   t
   dask.localR   R   R   R   t
   dask.orderR   t   dask.utils_testR   R	   R
   t   fib_daskR$   R'   R(   R)   R3   R7   R8   RE   RI   RU   R^   Rd   (    (    (    s4   lib/python2.7/site-packages/dask/tests/test_local.pyt   <module>   s"   "7										