
    bi,O                       d dl mZ d dlZd dlZd dlZd dlZd dlZd dlmZ d dl	m
Z
 d dlZd dlZd dlZd dlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z  d Z!d Z"d Z#d	 Z$d
 Z%d Z&d Z'd Z(d Z)d Z*e
d        Z+ejX                  j[                  ej\                  dk(  d      ejX                  j_                  dddg      d               Z0d Z1d Z2d Z3ejX                  j_                  dd d d g      ejX                  j_                  dg d       d!               Z4d" Z5d# Z6d$ Z7d% Z8d& Z9d' Z:d( Z;d) Z<ejX                  j_                  d*d+d,g      d-        Z=d. Z>d/ Z?d0 Z@ejX                  j_                  d1d2d3d4d5d6gd5d7gfd8d5d6hd5d7hfd9d6id9d7ifd:g d;d<d:g d=d<fg      d>        ZAd? ZBd@ ZCejX                  j_                  dAdBdCg      dD        ZDdE ZEdF ZFdG ZGdH ZHdI ZIejX                  j_                  dJdKdLdMifdLdMifi fdNdMifi fg      dO        ZJdP ZKejX                  j_                  dAdNdLg      dQ        ZLdR ZMdS ZNdT ZOdU ZPdV ZQy)W    )annotationsN)OrderedDict)contextmanager)
_get_pathscanonical_namecollectcollect_envcollect_yamlconfigdeserializeensure_fileexpand_environment_variablesgetmergepaths_containing_keypoprefreshrename	serializeupdateupdate_defaultsc                     ddd} t        d|       dk(  sJ t        d|       dk(  sJ t        d|       dk(  sJ t        d|       dk(  sJ t        d|       dk(  sJ t        d	|       d	k(  sJ y )
N      )foo-bar	fizz_buzzr   foo_barz	fizz-buzzr   znew-keynew_key)r   )cs    Q/home/cdr/jupyterlab/.venv/lib/python3.12/site-packages/dask/tests/test_config.pytest_canonical_namer!   %   s    A&A)Q'9444)Q'9444+q)[888+q)[888)Q'9444)Q'9444    c                     dddid} ddt        ddi      d}t        ||        |dddddd	k(  sJ dddid} dddddd}t        || d
       |dddddd	k(  sJ y )Nr   axyr      br&   zr'   r$   r)   r&   r'   r+   oldpriorityr   r   r,   s     r    test_updater2   /   s    sAhAak3(34A
1aLaAA.Q7777sAhAaAA./A
1a% aAA.Q7777r"   c                    dddddd} ddddddddid}ddt        ddd      dddid}t        ||d| 	      ddddddddidk(  sJ t        ||d|	      t        ||d
      k(  sJ t        ||dd 	      t        ||d      k(  sJ y )Nr   r,   r-   r   d)r&   r'   r+   r   c2r(   znew-defaults)r0   defaultsnewr/   r.   r1   )r4   ons      r    test_update_new_defaultsr:   ;   s    aAA./AaAA.QsAhGAak*:;!CQR8TA!Q!<1AhA    !Q!<	1uA    !Q$?6	1uD   r"   c                     dddiddddidg} dddddd	}dddddd
}t        |||        | dddiddddiddddddd
gk(  sJ |dddddddk(  sJ y )Nr   r   r,   r   r4   r(   )r   r4   r   )r$   r)   extra)r$   r)   	new-extra)r6   )r$   r)   r<   r=   )r   )r6   currentr7   s      r    test_update_defaultsr?   N   s    sAhsAhH !!,q9Gaa(q
9CC84sAhsAhAA&Q7   
 A!!$4qqQQQQr"   c                 R    ddddi} ddgdd}t        ||        |dddddk(  sJ y Nr&   r   r   r'   r+   r(   )r&   wr   r,   s     r    test_update_list_to_dictrE   _   s@    	AAA!f1A
1aLAA&Q////r"   c                 P    dddgi} ddddd}t        ||        |ddgddk(  sJ y rA   rD   r,   s     r    test_update_dict_to_listrG   f   s>    	q!fAAQ'A
1aLq!f1%%%%r"   c                 Z    dddid} ddddid}dddddd	}t        | |      }||k(  sJ y )
Nr   r$   r%   r   r(   r)   r*   r,   r-   )r   )r$   r)   expectedr   s       r    
test_mergerJ   m   sH    sAhAasAh'A11-A6HaA==r"   c                X   dddid}ddddid}dddddd	}| d
z  | dz  }}|j                  t        j                  |             |j                  t        j                  |             t        t	        ||gd            }|||f||fgk(  sJ t        t	        ||g       }||k(  sJ y )Nr   r$   r%   r   r(   r)   r*   r,   r-   a.yamlb.yamlT)pathsreturn_pathsrN   )
write_textyamldumplistr
   r   )tmp_pathr$   r)   rI   papbconfigsr   s           r    test_collect_yaml_pathsrY   w   s    sAhAasAh'A11-A6H (X"5BMM$))A,MM$))A,<r2hTBCGAwQ(((( LBx01FXr"   c                j   dddid}ddddid}| dz  | d	z  }}|j                  t        j                  |             |j                  t        j                  |             t        t	        d
||g            }||gk(  sJ t        t	        d||g            rJ t        t	        dg             rJ y )Nr   r$   r%   r   r(   r)   r*   rL   rM   y.arP   rC   r&   )rQ   rR   rS   rT   r   )rU   r$   r)   rV   rW   rN   s         r    test_paths_containing_keyr\      s    sAhAasAh'A (X"5BMM$))A,MM$))A,%eB8<=ERD==(RH=>>>(B78888r"   c                   dddid}ddddid}dddddd	}| d
z  | dz  }}|j                  t        j                  |             |j                  t        j                  |             t        t	        | g       }||k(  sJ y )Nr   r$   r%   r   r(   r)   r*   r,   r-   rL   rM   rP   )rQ   rR   rS   r   r
   )rU   r$   r)   rI   rV   rW   r   s          r    test_collect_yaml_dirr^      s    sAhAasAh'A11-A6H (X"5BMM$))A,MM$))A,Lz23FXr"   c              #  .  K   t        j                  t        j                   |       j                        }|t         j                  z  }	 t        j
                  | |       d  t        j
                  | |       y # t        j
                  | |       w xY wwN)statS_IMODEosst_modeS_IREADchmod)path	perm_origperm_news      r    no_read_permissionsrj      sb     RWWT]223I4<<'H"
x 
y!y!s   AB	A: #B:BBwin32z$Can't make writeonly file on windows)reasonkind	directoryfilec                N   ddd}ddd}| dz  | dz  }}|j                  t        j                  |             |j                  t        j                  |             |d	k(  r| }i }n|}|}t        |      5  t	        t        | g
       }||k(  sJ 	 d d d        y # 1 sw Y   y xY w)Nr   r   r%   r(      rB   rL   rM   rn   rP   )rQ   rR   rS   rj   r   r
   )	rU   rm   r$   r)   rV   rW   	cant_readrI   r   s	            r    #test_collect_yaml_permission_errorsrs      s    
 aAaA (X"5BMM$))A,MM$))A,{			Y	' "H:67!!!" " "s   6BB$c                J   | dz  j                  d       t        j                  t              5 }t	        t        | g             d d d        dt        j                        v sJ dt        |j                        v sJ dt        |j                        v sJ y # 1 sw Y   UxY w)NrL      {rP   is malformedzoriginal error messagewrite_bytespytestraises
ValueErrorrT   r
   strvaluerU   recs     r     test_collect_yaml_malformed_filer      s    %%d+	z	" -c\
+,-s399~%%%S^+++#s399~555	- -   BB"c                J   | dz  j                  d       t        j                  t              5 }t	        t        | g             d d d        dt        j                        v sJ dt        |j                        v sJ dt        |j                        v sJ y # 1 sw Y   UxY w)NrL   s   [1234]rP   rv   zmust have a dictrw   r~   s     r    #test_collect_yaml_no_top_level_dictr      s    %%i0	z	" -c\
+,-s399~%%%S^+++SYY///	- -r   c            	     Z    ddddddddd} d	d
dd	ddg ddd}t        |       }||k(  sJ y )N123Truehello456z[1, 2, "3"]z/not/parsable/as/literalznot included)DASK_A_BDASK_CDASK_D	DASK_E__X	DASK_E__YDASK_FDASK_GFOO{   T  r%   )r   r   3)a_br   r4   efgr	   )envrI   ress      r    test_envr      sY    ,	C S!'H c
C(??r"   preprocc                    | S r`    r&   s    r    <lambda>r      s    ! r"   c                "    | j                         S r`   )lowerr   s    r    r   r      s    qwwy r"   c                "    | j                         S r`   )upperr   s    r    r   r      s    AGGI r"   zv,out))NoneN)NullN)FalseF)r   Tc                @    d | |      i}t        |      }|d|ik(  sJ y )NDASK_Ar$   r   )r   voutr   r   s        r    test_env_special_valuesr      s.     WQZ
 C
c
C3*r"   c                   dddid}ddddid}dd	i}d
dddddd}| dz  | dz  }}|j                  t        j                  |             |j                  t        j                  |             t        ||g|      }||k(  sJ y )Nr   r$   r%   r   r(   r)   r*   DASK_W4rq   r,   )rC   r&   r'   r+   rL   rM   )r   )rQ   rR   rS   r   )rU   r$   r)   r   rI   rV   rW   r   s           r    test_collectr     s    sAhAasAh'AS/CQ11%5A>H (X"5BMM$))A,MM$))A,b"X3'FXr"   c                l    | j                  dd       t        g       } |j                  d      dk(  sJ y )NDASK_FOObarfoo)setenvr   r   )monkeypatchr   s     r    test_collect_env_noner     s4    z5)R[F6::e%%%r"   c                     dddid} t        d|       dk(  sJ t        d|       dk(  sJ t        dd	|       d	k(  sJ t        j                  t              5  t        d|        d d d        y # 1 sw Y   y xY w)
Nr   r$   r   r%   r&   r   r[   zy.br   )r   ry   rz   KeyErrorr4   s    r    test_getr     s|    sAhAs1"""uQ1$$$uc!$+++	x	  E!  s   A//A8c                n   dddid}ddi}| dz  }| dz  }| dz  dz  }|j                  t        j                  |             t        ||d	       t        j                  |j                               }||k(  sJ |j                  t        j                  |             t        ||d	       t        j                  |j                               }||k(  sJ t        j                  |       t        ||d
	       |j                         }d|v sJ t        j                  |j                               }|rJ y )Nr   r$   r%   r&   r   source.yamldestF)sourcedestinationcommentTr   )rQ   rR   rS   r   	safe_load	read_textrc   remove)rU   r$   r)   r   r   r   resulttexts           r    test_ensure_filer   !  s   sAhA	c
A%FfDV#m3K
diil#v4?^^K1134FQ;; diil#v4?^^K1134FQ;;IIk v4>  "DD==^^K1134F:vr"   c                 f   t         j                  j                  d      5  t        d   dk(  sJ t         j                  j                  d      5  t        d   dk(  sJ 	 d d d        t        d   dk(  sJ 	 d d d        dt        vsJ t         j                  j                  ddi      5  t        d   dk(  sJ 	 d d d        dt        vsJ t         j                  j                  dddd      5  t        d   ddd	did
k(  sJ 	 d d d        dt        vsJ i } t         j                  j                  ddi|        | d   d   dk(  sJ ddd} t         j                  j                  ddddd|        | dddddk(  sJ y # 1 sw Y   #xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w)Nr   )abcr   r   r   r   r(   )abc.xabc.yzabc.z.ar$   r-   r   r   r&   r   )e_fg-hrq      )r   c-de-fg_h)r   r   r   r   daskr   setr   s    r    test_setr   C  s   	S	! $e}###[[___% 	(%=C'''	(e}###	$ 	%	& $e}###$	1qQ?	@ @e}aasAh ????@
AKKOOWcN1O-U8C=C !AKKOOAa!<QOG!Aa8888+	( 	($ $$ $@ @s;   /FF F*F/F'F	FFF$'F0c                    t         j                  j                  dd      5  t        d   dddk(  sJ 	 d d d        dt        vsJ t         j                  j                  ddddd	      5  t        d   dddd
k(  sJ 	 d d d        dt        vsJ t         j                  j                  ddddidd	      5  t        d   dddd
k(  sJ 	 d d d        dt        vsJ y # 1 sw Y   xY w# 1 sw Y   mxY w# 1 sw Y   ,xY w)Nr   r   )foo__barfoo__bazr   )r   baz)foo.barzfoo.bazr(   rq   )	foo__buzzr   )r   r   buzzr   r   r"   r    test_set_kwargsr   ^  s   	!a	0 5e}! 44445 
Q15Q	O @e}!Q ????@ 
%1!56!a	P @e}!Q ????@5 5
@ @
@ @s#   C ,C,9C8 C),C58Dc                 Z   t         j                  j                  dddii      5  t        d   ddik(  sJ t         j                  j                  ddi      5  t        d   dddk(  sJ 	 d d d        t        d   ddik(  sJ 	 d d d        dt        vsJ y # 1 sw Y   -xY w# 1 sw Y    xY w)Nr   r&   r   r   r   r%   r   r   r"   r    test_set_nestedr   n  s    	%#s,	- +e}c
***[[__gs^, 	9%=#C$8888	9e}c
***	+
 	9 	9+ +s#   2B!B)B!B	B!!B*c                     dd l } t        j                  j                  | j	                               5  t        j                  j                  d      5  	 d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)Nr   r   r   )r'   )	threadingr   r   r   Lock)r   s    r    test_set_hard_to_copyablesr   w  sb    	9>>+	, [[__q_! 		 	 	 s#   !A3A'A3'A0	,A33A<mkdirTFc                    dddid}|dz  }|dz  }|j                  t        j                  |             | r|j                          t	        ||       |j                         sJ |dz  j                         sJ y )Nr   r$   r%   r   r   )r   r   )rQ   rR   rS   r   r   is_direxists)r   rU   r$   r   r   s        r    test_ensure_file_directoryr     su    sAhA%FfD
diil#

v40;;=== ((***r"   c                $   dddid}| dz  }|j                  t        j                  |             | dz  }t        j                  j
                  }	 |t        j                  _        t        |       |t        j                  _        |j                         sJ t        j                  |      \  }t        j                  j                  |      d   t        j                  j                  |      d   k(  sJ y # |t        j                  _        w xY w)Nr   r$   r%   r   r   )r   )rQ   rR   rS   r   r   PATHr   r   rc   listdirrg   split)rU   r$   r   r   r   fns         r    2test_ensure_file_defaults_to_DASK_CONFIG_directoryr     s    sAhA%F
diil#V#K;;D &6"::k"DR77==Q277==#8#;;;;	  s   !C8 8Dc                    ddddd} t        j                  t              5  t        d|        d d d        t        dd| 	      dk(  sJ t        d
|       dk(  sJ t        d|       dk(  sJ | dddiik(  sJ y # 1 sw Y   LxY w)Nr   r   )zba-rr   r(   )r   asdr&   r   rq   )defaultr   zfoo.ba_rr   r   r   )ry   rz   r   r   r   s    r    test_popr     s    *15F	x	   C sAf-222z&)Q...uV$)))eeQZ((((   s   A;;Bc                     g } i }t        ddi||        |ddik(  sJ t        g ddi||        |dddk(  sJ t        g d	d
i||        |dddk(  sJ y )Nr$   r   )r   r6   DASK_B2)rN   r   r   r6   r   r,   r   r   r(   r$   r   )r   r   )r6   r   s     r    test_refreshr     sx    HFS!HVh?c1X"8S/&8L11%%%%"8S/&8L11%%%%r"   zinp,out)1r   )r   r   )$FOOr   r   r   r   ))r   r   )r   r   r$   A)r   r   r   r,   )r   r   r   c                H    | j                  dd       t        |      |k(  sJ y )Nr   r   )r   r   )r   inpr   s      r    !test_expand_environment_variablesr     s'     ue$',333r"   c                    d}| j                  dt        |             i }t        j                  j	                  |       t        d|      |k(  sJ t        d|      |k(  sJ y )Nr(   r   r   r   a-b)r   r|   r   r   r   r   )r   r}   r4   s      r    test_env_var_canonical_namer    s_    Ez3u:.
AKKq!uQ5(((uQ5(((r"   c                 Z   dddii} g d}|D ](  }t         j                  j                  ||       dk(  r(J  t         j                  j                  dddii|       5  |D ](  }t         j                  j                  ||       dk(  r(J  	 d d d        t         j                  j                  dd	d
iddi|       5  t         j                  j                  d|       d	d
ik(  sJ t         j                  j                  d|       dk(  sJ 	 d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)Nzx-yr   r   )zx_y.a_bzx-y.a-bx_y.a-br   x_yr   r   c_dr   r   )r   r   r  zx_y.e_f)r   r   r   r   )r   keysks      r    test_get_set_canonical_namer    s%   	A,D 3{{q+s2223 
%%.q	9 7 	7A;;??1Q?/3666	77
 
%%A!>?	J 9{{y3qzAAA{{y3q8889 97 7
9 9s   *DD<AD!D!D*key
custom_key
custom-keyc                   d}t         j                  j                  | |i      5  t         j                  j                  d      |k(  sJ t         j                  j                  d      |k(  sJ 	 d d d        y # 1 sw Y   y xY w)Nr   r
  r  r   r   r   r   )r	  r}   s     r    test_get_set_roundtripr    sf    E	#u	& 6{{|,555{{|,5556 6 6s   A	A77B c                 f    t         j                  j                  d dddddii      ddiddk(  sJ y )Nr   r   r$   r)   r   )r   r   r   r   r"   r    test_merge_None_to_dictr    sB    ;;4a03a/B1XG   r"   c                     dt         j                  j                  v sJ dt         j                  j                  v sJ dt         j                  j                  d      v sJ y )Nztemporary-directory	dataframecompressionzdataframe.shuffle)r   r   r   r   r"   r    test_core_filer    sN     DKK$6$6666$++,,,,,DKKOO,?@@@@r"   c                 D   t        j                  d      } t        j                  t              j
                  j
                  }t        j                  |dz  j                               }t        j                  |dz  j                               }| j                  ||       y )N
jsonschema	dask.yamldask-schema.yaml)
ry   importorskippathlibPath__file__parentrR   r   r   validate)r  root_dirr   schemas       r    test_schemar!    su    $$\2J||H%,,33H^^X3>>@AF^^X(::EEGHF'r"   c                    t        j                  t              j                  j                  } t	        j
                  | dz  j                               }t	        j
                  | dz  j                               }fd ||       y )Nr  r  c           
        | j                         D ]r  \  }}t        |       t        |d         k7  r0t        dj                  t	        |       t	        |d                     t        |t              sa | |   |d   |          t y )N
propertiesa  
The dask.yaml and dask-schema.yaml files are not in sync.
This usually happens when we add a new configuration value,
but don't add the schema of that value to the dask-schema.yaml file
Please modify these files to include the missing values: 

    dask.yaml:        {}
    dask-schema.yaml: {}

Examples in these files should be a good start, 
even if you are not familiar with the jsonschema spec)itemsrT   r{   formatsorted
isinstancedict)r   sr  r   test_matchess       r    r+  z-test_schema_is_complete.<locals>.test_matches
  s    GGI 	7DAqAw$q// L MSFq	6!L/#:M  !T"QqT1\?1#56	7r"   )r  r  r  r  rR   r   r   )r  r   r   r+  s      @r    test_schema_is_completer,    sg    ||H%,,33H^^X3>>@AF^^X(::EEGHF7$  r"   c                 <   dddddd} ddd	d
dd iddid}t        j                  t              5 }t        | |       d d d        j                  D cg c]  }t        |j                         c}g dk(  sJ |ddddd	ii d ddk(  sJ y # 1 sw Y   PxY wc c}w )Nr   zfoo.yabz	not.foundsuper)r   zx.yza.bz	not-foundz	super.oldr   r   r(   rB   r)   r.   rq   )r   r&   r$   r/  r   )zRDask configuration key 'foo-bar' has been deprecated; please use 'foo.bar' insteadzLDask configuration key 'x.y' has been deprecated; please use 'foo.y' insteadzIDask configuration key 'a.b' has been deprecated; please use 'ab' insteadzRDask configuration key 'super.old' has been deprecated; please use 'super' instead)r   r'   r+   )r   r&   r$   r.  r/  )ry   warnsFutureWarningr   rT   r|   message)aliasesr   rC   wis       r    test_renamer5    s     G 14[	F 
m	$ 'wv&'&'ff-C

O- 2    q!1X   ' '-s   BBBzargs,kwargsr   fuse_ave_widthr   zfuse-ave-widthc                J   t        j                  t              5 }t        j                  j
                  | i |5  t        j                  j                  d      dk(  sJ 	 d d d        d d d        dt        d   j                        v sJ y # 1 sw Y   .xY w# 1 sw Y   2xY w)Noptimization.fuse.ave-widthr   r   )	ry   r0  r1  r   r   r   r   r|   r2  )argskwargsinfos      r    test_deprecations_on_setr<  >  s     
m	$ I[[__d-f- 	I;;??#@ASHHH	II )CQ,@@@@	I 	II Is"    B%B BB	BB"c                $   i }| j                  dd       t        j                  t              5 }t        j
                  j                  |       d d d        dt        d   j                        v sJ t        d|      dk(  sJ y # 1 sw Y   8xY w)NDASK_FUSE_AVE_WIDTHr   r   r8  r   r   )
r   ry   r0  r1  r   r   r   r|   r2  r   )r   r4   r;  s      r    "test_deprecations_on_env_variablesr?  M  s    
A,e4	m	$ &1%&(CQ,@@@@,Q73>>>& &s   !BBc                V   i }| dz  j                  t        j                  |di             t        j                  t
              5 }t        j                  j                  || g       d d d        dt        d   j                        v sJ t        d|      dk(  sJ y # 1 sw Y   8xY w)Nr  r   )r   rN   r8  r   r   )rQ   rR   rS   ry   r0  r1  r   r   r   r|   r2  r   )rU   r	  r4   r;  s       r    test_deprecations_on_yamlrA  V  s    
A''		3*(=>	m	$ 81XJ78(CQ,@@@@,Q73>>>8 8s   #BB(c                    t         j                  j                  ddi      5  t         j                  j                  d      dk(  sJ t         j                  j                  dd       dk(  sJ t         j                  j                  dd      dk(  sJ t         j                  j                  dd      du sJ t         j                  j                  dd      du sJ t         j                  j                  dd      dk(  sJ t         j                  j                  ddd	i      dd	ik(  sJ t         j                  j                  dd
g      d
gk(  sJ 	 d d d        y # 1 sw Y   y xY w)Nr   r   )override_withr   FTr   r   worldoner  r   r"   r    test_get_override_withrF  a  s?   	%	( H{{u%...{{uD9UBBB {{uE:eCCC{{uE:eCCC{{uD9TAAA{{uC8C???{{uWg4FGWL
 
 	
 
 {{uUG<GGGH H Hs   D3EE(c                    t         j                  j                  dt         j                  j                  d      i      5  t	        ddddiii      } t        |       }t         j                  j                  t         j                  j                  |       t         j                  j                  d      dk(  sJ 	 d d d        y # 1 sw Y   y xY w)Narray.svg.sizearraysvgsize   )r   r   r   r   r   r   r   global_config)
serializedr   s     r    test_config_serializationrO  r  s    	*DKKOO<L,MN	O 8%&#)?@A
Z(4;;44f={{/0C7778 8 8s   A9CCc            	         t        dt        ddddiii      i      } t        j                  j	                  d|       dk(  sJ y )NDASK_INTERNAL_INHERIT_CONFIGrI  rJ  rK  rL  rH  r   )r	   r   r   r   r   r   s    r    test_config_inheritancerR  }  sI    	'Gefc]=S3T)UVF ;;??+F?;sBBBr"   c                   | j                  dd       | j                  dd       | j                  t        dg        dt        j                  j                  t        j                  dd      t        j                  j                  t        j                  j                  d	      d
d      g}t               }||k(  sJ t        |      t        t        |            k(  sJ | j                         5 }|j                  dd       t               }||dgz   k(  sJ t        |      t        t        |            k(  sJ 	 d d d        | j                         5 }|j                  dd       t               }|dg|dd  z   k(  sJ t        |      t        t        |            k(  sJ 	 d d d        | j                         5 }t        j                  j                  ddd      }|j                  t        dt        j                  |gz          t               }t        j                  j                  |dd      |v sJ t        |      t        t        |            k(  sJ 	 d d d        y # 1 sw Y   &xY w# 1 sw Y   xY w# 1 sw Y   y xY w)NDASK_CONFIGF)raisingDASK_ROOT_CONFIGPREFIXESz	/etc/dasketcr   ~z.configr   r   includethisrg   )delenvsetattrsiterc   rg   joinsysprefix
expanduserr   lenr   contextr   rW  )r   rI   rN   mra  s        r    test__get_pathsrf    s'    }e4)59j"- 	
SZZ/
RWW'',i@H
 LEHu:SZ(((				 -!		*I;....5zSU_,,,	- 
			 -!	#Y/hqrl22225zSU_,,,	- 
			 -!i8			$
DMMVH$<=ww||FE62e;;;5zSU_,,,- -- -- -- -s'   /A
IAI+8BI7I(+I47J c                 R    t         j                  j                  t               k(  sJ y r`   )r   r   rN   r   r   r"   r    test_default_search_pathsrh    s    ;;
,,,r"   )R
__future__r   rc   r  r^  ra   r`  collectionsr   
contextlibr   ry   rR   dask.configr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r!   r2   r:   r?   rE   rG   rJ   rY   r\   r^   rj   markskipifplatformparametrizers   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r!  r,  r5  r<  r?  rA  rF  rO  rR  rf  rh  r   r"   r    <module>rq     s   " 	    
 # %       ,5	8&R"0&$9 " " LLG$J   +v!67" 8"(602 02EF O&D96  4-0+ 1+ <$)& 
Vq%j!!
Vq%j!
ve%)	*#O,LM	44
)9" | <=6 >6A(!4> 	$%S
!	#R(S
!	#R(AA? !13C DE? F?H"8C"-J-r"   