ó
ßüÚ\c           @   sf  d  d l  Z  d  d l m Z d  d l m Z d  d l Z d  d l m Z m Z d  d l m	 Z	 m
 Z
 m Z m Z d  d l m Z d  d l m Z e	 d e ƒ d	 „  ƒ Z e	 d e ƒ d
 „  ƒ Z e	 d e ƒ d „  ƒ Z e	 d e ƒ d „  ƒ Z e	 d e ƒ d „  ƒ Z e	 d e ƒ d „  ƒ Z e	 d e d d g ƒ d „  ƒ Z e	 d e d d g ƒ d „  ƒ Z d S(   iÿÿÿÿN(   t   gen(   t   flatten(   t   delayedt   persist(   t   gen_clustert   inct   slowinct   slowdec(   t   wait(   t   tokeyt   clientc         c   s—   |  j  t d d d ƒ} |  j t t d ƒ d d ƒ} |  j  t d d d ƒ} t | ƒ Vt | j j ƒ  ƒ st t	 ‚ | j
 | j j d k s“ t	 ‚ d  S(	   Ni   t   priorityiÿÿÿÿi
   t   delaygš™™™™™¹?i   t
   processing(   t   submitR   t   mapR   t   rangeR   t   allR   t   valuest   AssertionErrort   taskst   keyt   state(   t   ct   st   at   bt   lowt   futurest   high(    (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pyt   test_submit   s    c         c   s­   |  j  t d d d g d d ƒ} |  j  t t d ƒ d d ƒ} |  j  t d	 d
 d g d d ƒ} t | ƒ Vt | j j ƒ  ƒ s† t ‚ | j	 | d j
 j d k s© t ‚ d  S(   Ni   i   i   R   iÿÿÿÿi
   R   gš™™™™™¹?i   i   i   i    R   (   R   R   R   R   R   R   R   R   R   R   R   R   (   R   R   R   R   R   R   R   (    (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pyt   test_map   s    !!c   
      c   sÖ   t  j d ƒ } | j j d d d ƒ} | j j d d d ƒ} |  j | d d ƒ} |  j t t d ƒ d d ƒ} |  j | d d	 ƒ}	 t |	 ƒ Vt | j	 j
 ƒ  ƒ s­ t ‚ | j t | j ƒ j d k sÒ t ‚ d  S(   Ns
   dask.arrayi
   t   chunksi   R   iÿÿÿÿR   gš™™™™™¹?i   R   t   waiting(   i
   i
   (   i   i   (   i
   i
   (   i   i   (   R   R!   (   t   pytestt   importorskipt   randomt   computeR   R   R   R   R   R   R   R   R   R	   R   R   (
   R   R   R   R   t   dat   xt   yR   R   R   (    (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pyt   test_compute!   s    c   
      #   sÙ   t  j d ƒ } | j j d d d ƒ} | j j d d d ƒ} | j d d ƒ } |  j t t d ƒ d d ƒ} | j d d	 ƒ }	 t |	 ƒ Vt ˆ  j	 j
 ƒ  ƒ s§ t ‚ t ‡  f d
 †  t | j ƒ  ƒ Dƒ ƒ sÕ t ‚ d  S(   Ns
   dask.arrayi
   R    i   R   iÿÿÿÿR   gš™™™™™¹?i   c         3   s+   |  ]! } ˆ  j  t | ƒ j d k Vq d S(   R   R!   N(   R   R!   (   R   R	   R   (   t   .0t   k(   R   (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pys	   <genexpr>;   s   (   i
   i
   (   i   i   (   i
   i
   (   i   i   (   R"   R#   R$   R   R   R   R   R   R   R   R   R   R   t   __dask_keys__(
   R   R   R   R   R&   R'   R(   R   R   R   (    (   R   s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pyt   test_persist/   s    c         c   s¸   t  t ƒ d ƒ } g  t d ƒ D] } t  t ƒ | d d ƒ^ q } t  t ƒ d ƒ } |  j | | | g d i d | 6d | 6ƒ\ } } } t | ƒ V| j | j j d k s´ t	 ‚ d  S(	   Ni   i
   R   gš™™™™™¹?i   R   iÿÿÿÿR   (
   R   R   R   R   R%   R   R   R   R   R   (   R   R   R   R   R   t   it   manyR   (    (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pyt   test_expand_compute@   s    15c         c   sÇ   t  t ƒ d d d ƒ} g  t d ƒ D] } t  t ƒ | d d ƒ^ q% } t  t ƒ d d d ƒ} t | | d	 i d
 | 6d | 6| Œ\ } } } }	 }
 } t | ƒ V| j | j j d k sÃ t	 ‚ d  S(   Ni   t   dask_key_nameR   i   R   gš™™™™™¹?i   R   R   iÿÿÿÿR   (
   R   R   R   R   R   R   R   R   R   R   (   R   R   R   R   R   R.   R/   R   R'   R(   t   zt   w(    (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pyt   test_expand_persistK   s    18t   ncoress	   127.0.0.1i   c      	   #   s]  g  t  d ƒ D]( } t t ƒ | d d d d | ƒ^ q } g  t | ƒ D]. \ } } t t ƒ | d d d d | ƒ^ qH } g  t | ƒ D]. \ } } t t ƒ | d d d d | ƒ^ q‰ } t j | Œ  } t j | Œ  } x7 t d „  ˆ  j j	 ƒ  Dƒ ƒ d	 k  rt
 j d
 ƒ VqÞ Wt ‡  f d †  | Dƒ ƒ s7t ‚ t ‡  f d †  | Dƒ ƒ sYt ‚ d  S(   Ni
   R   gš™™™™™©?R1   s   x-%ds   y-%ds   z-%dc         s   s   |  ] } | j  d  k Vq d S(   t   memoryN(   R   (   R*   t   t(    (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pys	   <genexpr>f   s    i   g{®Gáz„?c         3   s(   |  ] } ˆ  j  | j j d  k Vq d S(   R6   N(   R   R   R   (   R*   R(   (   R   (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pys	   <genexpr>j   s    c         3   s(   |  ] } ˆ  j  | j j d  k Vq d S(   R6   N(   R   R   R   (   R*   R2   (   R   (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pys	   <genexpr>k   s    (   R   R   R   t	   enumerateR   t   daskR   t   sumR   R   R    t   sleept   anyR   (   R   R   R3   R.   t   xsR'   t   yst   zs(    (   R   s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pyt$   test_repeated_persists_same_priorityV   s    ;>>%"c   	      #   sõ   g  t  d ƒ D] } |  j t | d d ƒ^ q } g  | D] } |  j t | d d ƒ^ q8 } g  | D] } |  j t | d d ƒ^ qc } xD t ˆ  j ƒ d k  s¼ t ‡  f d †  | Dƒ ƒ rÍ t j d ƒ VqŠ Wt ‡  f d †  | Dƒ ƒ sñ t	 ‚ d  S(   Ni   R   gš™™™™™©?i   c         3   s(   |  ] } ˆ  j  | j j d  k Vq d S(   R6   N(   R   R   R   (   R*   R2   (   R   (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pys	   <genexpr>t   s    g{®Gáz„?c         3   s(   |  ] } ˆ  j  | j j d  k Vq d S(   R6   N(   R   R   R   (   R*   R'   (   R   (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pys	   <genexpr>w   s    (
   R   R   R   t   lenR   R<   R    R;   R   R   (	   R   R   R3   R.   R=   R'   R>   R(   R?   (    (   R   s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pyt   test_last_in_first_outn   s    1++5(   s	   127.0.0.1i   (   s	   127.0.0.1i   (   R"   t   tornadoR    t	   dask.coreR   R9   R   R   t   distributed.utils_testR   R   R   R   t   distributedR   t   distributed.utilsR	   t   TrueR   R   R)   R-   R0   R4   R@   RB   (    (    (    s@   lib/python2.7/site-packages/distributed/tests/test_priorities.pyt   <module>   s   "

!