
    >ieV                       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 dl
Z
d dlmZ d dlZd dlmZ d dlmZmZ d dlm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% d dl&m'Z' d	 Z(d
 Z)d Z*d Z+d Z,d Z-d Z.d Z/d Z0d Z1d Z2d Z3e
j4        5                    dddg          d             Z6d Z7d Z8d Z9d Z:d Z;e
j4        5                    d e	j<        d g           e	j=        d g           e	j>        d g           ej?        dd gid !           ej?        dd gid !          j@         ej?        dd gid !          jA        g          d"             ZBe
j4        5                    d ej?        dd gid !          j@        jC         ejD        d g          g          d#             ZEe
j4        5                    d$g d%dfg d&dfg d'dfg d(dfd)d*d  eFd+          d gdfg          d,             ZGd- ZHdS ).    )annotationsN)Iterable)Version)PANDAS_GE_200tm)apply_and_enforce)UNKNOWN_CATEGORIES	assert_eqcheck_matching_columns
check_metais_dataframe_likeis_index_likeis_series_like	make_metameta_frame_constructormeta_nonemptymeta_series_constructorpyarrow_strings_enabledraise_on_meta_errorshard_df_on_indexvalid_divisionsget_syncc                 b   t          j        g dt          d          dg d          } t          t          | ddg                    }t          |d         j                  d	gk    sJ t          |d
         j                  g dk    sJ t          |d         j                  ddgk    sJ d S )N)                  abdabd)xy)
         (   2   <   indexr%   r(   r   r$   r   )r%   r&   r'   r   r)   )pd	DataFramelistr   r+   )dfresults     Ilib/python3.11/site-packages/dask/dataframe/tests/test_utils_dataframe.pytest_shard_df_on_indexr2   $   s    	   tH~~66>V>V>V
 
 
B #BR1122Fq	  RD((((q	  LLL0000q	  RH,,,,,,    c                    t          j        g dt          d          g ddg d          } t          |           }t	          |          dk    sJ |j        | j        k                                    sJ t          |j        t          | j                            sJ dD ]F}||         j
        j        d         d         }| |         j
        j        d         d         }||k    sJ G|j        j
        j        d         d         }| j        j
        j        d         d         }||k    sJ t          | j                  }t	          |          dk    sJ |j        | j        j        k    sJ t          |j        t          | j                            sJ |j
        j        d         d         }| j        j
        j        d         d         }||k    sJ |j        j
        j        d         d         }| j        j
        j        d         d         }||k    sJ t          | j                  }t          |t          | j                            sJ t	          |          dk    sJ |j
        j        d         d         }| j        j
        j        d         d         }||k    sJ t          j        | d	
          }t          |          |j        u sJ t          dddd          }t          |t           j                  sJ t	          |          dk    sJ |j        | j        k                                    sJ t          |j        t           j                  sJ t          g d          }|j        g dk                                    sJ t	          |          dk    sJ |j        | j        |j        j                 k                                    sJ t          |j        t           j                  sJ t          d          }t          |t           j                  sJ t	          |          dk    sJ |j        dk    sJ |j        dk    sJ  G d dt*                    }t           |                      }|j        g dk                                    sJ t	          |          dk    sJ |j        | j        |j        j                 k                                    sJ t          |j        t           j                  sJ t          j        dd	gd          }t          ddd|          }t          |j                  t          |          u sJ |j        j        dk    sJ t	          |j                  dk    sJ t          d|          }t          |j                  t          |          u sJ |j        j        dk    sJ t	          |j                  dk    sJ t          ddi|           }t	          |j        j        j                  dk    sJ |j        j        j        d         t2          k    sJ t          d|           }t	          |j        j                  dk    sJ |j        j        d         t2          k    sJ t          ddd|          }t	          |j        j        j                  dk    sJ |j        j        dk    sJ |j        j        sJ t          t7          j        d          |           }t          |t6          j                  sJ t          d|           }t          |t6          j                  sJ t          j        ddd          }t          ||           }||u sJ t          j        d           }t          |          }|t          j        d|j        |j         !          k    sJ t          d|           }t          |t6          j!                  sJ t          tD          |           }t          |t7          j        tD                    j	                  sJ t          t7          j        d"          |           }t          |t6          j#                  sJ tI          j%        tL          d#           sJ d S )$Nr   r   r   abc)      ?g       @g      @abc)r$   r%   r&   r*   r   datar   npartitionsi8Of8r9   r?   )r;   rA   )r:   r@   )r9   r;   r:   rC   r9   c                  &    e Zd ZdZddZd Zd ZdS )&test_make_meta.<locals>.CustomMetadataz-Custom class iterator returning pandas types.r   c                    g d| _         d S )NrB   )types)selfmaxs     r1   __init__z/test_make_meta.<locals>.CustomMetadata.__init__u   s    ???DJJJr3   c                    d| _         | S )Nr   )n)rH   s    r1   __iter__z/test_make_meta.<locals>.CustomMetadata.__iter__x   s    DFKr3   c                    | j         t          | j                  k     r$| j        | j                  }| xj         dz  c_         |S t          )Nr   )rL   lenrG   StopIteration)rH   rets     r1   __next__z/test_make_meta.<locals>.CustomMetadata.__next__|   s?    vDJ''j(!
##r3   N)r   )__name__
__module____qualname____doc__rJ   rM   rR    r3   r1   CustomMetadatarE   r   sP        ;;	@ 	@ 	@ 	@	 	 		$ 	$ 	$ 	$ 	$r3   rX   r   foonamei4)r9   r:   int64category)parent_meta)r9   r^   r7     UTCtzrc   unitboolc                      t          d           S N)r   rW   r3   r1   <lambda>z test_make_meta.<locals>.<lambda>   s    IdOO r3   )'r,   r-   r.   r   rO   dtypesall
isinstancer+   typevalues__array_interface__r9   dtypeddfrom_pandas_meta
RangeIndexcolumnsSeriesr[   r   Indexcat
categoriesr	   emptynpfloat64	TimestampDatetimeTZDtyperc   re   r]   floatbool_pytestraises	TypeError)	r/   metacolmeta_pointer
df_pointerddfrX   idxr"   s	            r1   test_make_metar   /   s\   	iid5kk@@
 
 
B
 R==Dt99>>>>K29$))+++++dj$rx..11111 * *Cy';FCAFW^7?B
z))))):$8@CL4V<Q?J:%%%% RT??Dt99>>>>:####dj$rx..11111;26:1=L08;J:%%%%:$8@CL4V<Q?J:%%%% RXDdDNN+++++t99>>>>;26:1=L4V<Q?J:%%%% .
+
+
+CS>>SY&&&& 4c5566DdBL)))))t99>>>>K29$))+++++dj"-00000 ;;;<<DLOOO+0022222t99>>>>K29T[%677<<>>>>>dj"-00000 [!!DdBI&&&&&t99>>>>:9$ $ $ $ $ $ $ $$ ^^%%&&DLOOO+0022222t99>>>>K29T[%677<<>>>>>dj"-00000 (Aq6
&
&
&C  D 
tCyy((((:w&&&&tz??a[,,,D
tCyy((((:w&&&&tz??a c:&B777Dtvz$%%****6: #'99999&B777Dtx"##q((((8q!%77777 :G44C@@@Dtvz$%%****:w&&&&: RZ__"555DdBJ''''' Sb)))DdBJ''''' 	T1a  AQB'''D19999 	e$$$AQ<<D2<ad8888888 Tr***DdBH%%%%%U+++DdBHUOO011111RXf%%2666DdBH%%%%%=$;$;<<<<<<<r3   c                     t          j        t          j        g d          t          d          dt	          j        d          t	          j        d          t          j        d          t          j        ddd          t          j	        d	          t	          j
        d
          t          j        t          gdz            t          j        g d          dt          d                    } | j        dd         }t          |          }|j        |j        k                                    sJ |d         d         dk    sJ |d         d         dk    sJ |d         d         dk    sJ |d         d         t	          j        d          k    sJ |d         d         j        dk    sJ |d         d         t	          j        d          k    sJ |d         d         j        dk    sJ |d         d         t          j        d          k    sJ |d         d         t          j        dd          k    sJ |d         d         t          j	        d          k    sJ |d         d         dk    sJ |d          d         t          k    sJ t#          |d!         j        j                  dk    sJ t          |d                   }|j        |d         j        k    sJ |d         |k                                    sJ d S )"N)AliceBobCarolr6   barr   z
2016-01-01r   America/New_York)periodsrc   z1 hours    )NNN)ABCDEFGHIJKDCBAHGFEIJKru   r   r   r   r   rY   r   r   f4r   r\   r   z1970-01-01 00:00:00r   rb   r   1r   r   r   )r,   r-   Categoricalr.   r{   float32int32r}   
date_range	Timedeltavoidr	   ilocr   rj   rk   rp   rO   rx   ry   )df1df2df3ss       r1   test_meta_nonemptyr      s   
, 9 9 9::eA!l++|Q;MNNNi((!3 4q 899 2 2 233	
 	
 ]##  C  (1Q3-C


CJ#*$))+++++s8A;'!!!!s8A;%s8A;%s8A;"*Q--''''s8A;$$$$s8A;"(1++%%%%s8A;$$$$s8A;",'<======s8A;",'<ASTTTTTTTs8A;",s++++++s8A;%s8A;,,,,,s3x|&''1,,,,c#hA7c#hn$$$$HM       r3   c                     t          j        g d          } t          |           }t          j        g dg dgt          | j                  g d          }t	          j        ||           d S )N)r   r   r   r   )rY   rY   rY   )r+   ru   )r,   r-   r   r+   r   assert_frame_equal)r/   resexps      r1   test_meta_duplicatedr      s    	ooo	.	.	.B


C
,			 5 5 56BH%%  C
 #s#####r3   c                    dD ]H} t          j        g t          j        g |           dd          }t          |          }t	          |          t           j        u sJ t	          |j                  t	          |j                  u sJ |j        |j        k    sJ |j        |j        k    sJ |                                }t          |          }|j	        dk    sJ |j	        dk    sJ t	          |j
        j                  t	          |j
        j                  u sJ |j
        j        |j
        j        k    sJ |j        |j        k    sJ Jd S )N)r@   rA   zM8[ns]rp   TrY   orderedr[   r^   )r,   CategoricalIndexrw   r   rm   ry   r   r[   	to_seriesrp   rx   )rp   r   r   r   s       r1   #test_meta_nonempty_empty_categoriesr      s^   & " "!5)))4e
 
 
 C  CyyB/////CN##tCN';';;;;;{ck))))x38####MMOOAyJ&&&&w*$$$$CG&''40@+A+AAAAAw!%-////x16!!!!!#" "r3   c                 
   t          j        dd          } t          |           }t          |          t           j        u sJ |j        | j        k    sJ t          j        dgdd          } t          |           }t          |          t          |           u sJ t          r|j        t          j	        k    sJ n|j        dk    sJ |j        | j        k    sJ t          j        dgd          } t          |           }t          |          t           j        u sJ |j        | j        k    sJ t          j
        dgd	d
d          } t          |           }t          |          t           j
        u sJ |j        | j        k    sJ |j        | j        k    sJ |j        | j        k    sJ t          j        dgd	d          } t          |           }t          |          t           j        u sJ |j        | j        k    sJ |j        | j        k    sJ t          j        t          j        dd          gd	d          } t          |           }t          |          t           j        u sJ |j        | j        k    sJ |j        | j        k    sJ t          j        dgddgdd          } t          |           }t          |          t           j        u sJ |j        | j        k                                    sJ |j        | j        k    sJ |j        | j        k    sJ t          j        g t(          gdd          } t          |           }t          |          t           j        u sJ |j        | j        k    sJ |j        | j        k    sJ t          j        dgd          t          j        dgd          g}dgdgg}t          j        |ddg|          } t          |           }t          |          t           j        u sJ t-          | j        |j                  D ]7\  }}t          |          t          |          u sJ |j        |j        k    sJ 8|j        | j        k    sJ t          j        dgd          t          j        dgdgd          t          j        t          j        dd          gd          g}dgdgdgg}t          j        |g d|          } t          |           }t          |          t           j        u sJ t-          | j        |j                  D ]7\  }}t          |          t          |          u sJ |j        |j        k    sJ 8|j        | j        k    sJ d S )Nr   rY   rZ   intr[   rp   r]   r9   z
1970-01-01dr   )freqrc   r[   )r   r[   r   xyxzzzTr   r7   r:   r   )levelsnamescodes)r<   ry   r[   	timedelta)r9   r:   r   )r,   rt   r   rm   r[   rw   r   rp   r{   int_DatetimeIndexrc   r   PeriodIndexTimedeltaIndexr   r   ry   rk   r   r	   
MultiIndexzipr   r   timedelta64)r   r   r   r   idx1idx2s         r1   test_meta_nonempty_indexr     s   
-
&
&
&C


C99%%%%8sx
(A3U%
0
0
0C


C99S		!!!! $yBG##### yG####8sx
(C5u
%
%
%C


C99    8sx

L>8JQV
W
W
WC


C99(((((6SV8sx8sx
.,c
>
>
>C


C99&&&&8sx8sx

R\!S1125
I
I
IC


C99)))))8sx8sx

ugu~t%
P
P
PC


C99+++++Ncn,1133333;#+%%%%8sx

b#5"65
Q
Q
QC


C99+++++;#+%%%%8sxhs%%%rxC'@'@'@AFS1#JE
-vc3Zu
E
E
EC


C99%%%%#*cj11 & &
dDzzT$ZZ''''yDI%%%%%9	!!!! 	!3
%eW3GGG
2>!S112EEEF S1#sOE
-v-D-D-DE
R
R
RC


C99%%%%#*cj11 & &
dDzzT$ZZ''''yDI%%%%%9	!!!!!!r3   c                     t          j        dgdd          } t          |           }t          |          t          |           u sJ |j        dk    sJ |j        | j        k    sJ d S )Nr   rY   uint64r   )r,   rw   r   rm   rp   r[   )r   r   s     r1   test_meta_nonempty_uint64indexr   [  sr    
(A3U(
3
3
3C


C99S		!!!!9    8sxr3   c                 l   t          t          j        d                    } t          | t          j                  sJ t	          j        ddd          }t          |          } | |u sJ t	          j        d          }t          |          } | t	          j        d|j        |j                  k    sJ d S )Nr7   r`   r   ra   rb   rd   )	r   r{   r|   rl   r,   r}   r~   rc   re   )r   r"   s     r1   test_meta_nonempty_scalarr   c  s    C))DdBJ'''''
T1a  AD19999 	e$$$AD2<ad888888888r3   c                    	 t                      5  t          d          # 1 swxY w Y   	 J d            # t          $ r=} | j        d                             d          sJ d| j        d         v sJ Y d } ~ nd } ~ ww xY w	 t          d          5  t          d          # 1 swxY w Y   	 J d            # t          $ r>} | j        d                             d          sJ d| j        d         v sJ Y d } ~ d S d } ~ ww xY w)	Nz	Bad stuffFzshould have erroredr   zMetadata inference failed.
RuntimeErrormyfuncz'Metadata inference failed in `myfunc`.
)r   r   	Exceptionargs
startswith)es    r1   test_raise_on_meta_errorr   q  s   , "" 	, 	,{+++	, 	, 	, 	, 	, 	, 	, 	, 	, 	,++++	  + + +vay##$BCCCCC*********+, ** 	, 	,{+++	, 	, 	, 	, 	, 	, 	, 	, 	, 	,++++	  + + +vay##$NOOOOO**********+s_   6  $6 $6 
A= 3A88A=B6 B  B$$B6 'B$(B6 6
C> 3C99C>c                 R   t          j        g dg dg dg dt          j        g d          t          j        g dt          j                  d          } | j        d d         }t          | |          | u sJ | j        }t          ||j                  |u sJ | j	        }| j
        }t          ||j	                            d          d	
          |u sJ t          ||j
                            d          d	
          |u sJ t          ||j
                            d          d	
          |u sJ t          j        t                    5 }t          ||j	                            d          d
           d d d            n# 1 swxY w Y   t          |j                  dk    sJ |                    ddd          g d         }| g d         }t          j        t                    5 }t          ||d           d d d            n# 1 swxY w Y   d}t          |j                  |k    sJ t          j        t                    5 }t          | j        t          j        g d          d
           d d d            n# 1 swxY w Y   t          |j                  dk    sJ d S )N)r"   r#   z)TFT)r   g      @g      @r5   r   )r9   r:   r;   r   r   fr   rA   T)numeric_equalr?   FzMetadata mismatch found.

Partition type: `pandas.core.series.Series`
+----------+---------+
|          | dtype   |
+----------+---------+
| Found    | int64   |
| Expected | float64 |
+----------+---------+r^   )r9   r   r9   r:   r;   r   )r9   r:   r   r   from_delayed)funcnamea@  Metadata mismatch found in `from_delayed`.

Partition type: `pandas.core.frame.DataFrame`
+--------+----------+----------+
| Column | Found    | Expected |
+--------+----------+----------+
| 'a'    | object   | category |
| 'c'    | -        | float64  |
| 'e'    | category | -        |
+--------+----------+----------+stringzMetadata mismatch found.

Partition type: `pandas.core.series.Series`
+----------+--------+
|          | dtype  |
+----------+--------+
| Found    | object |
| Expected | string |
+----------+--------+)r,   r-   r   rv   r{   r   r   r   r   r   r   astyper   r   
ValueErrorstrvaluer9   )	r/   r   r   r   r   errmeta2r   r   s	            r1   test_check_metar     s   	 $$$00999BI666	
 	
	
 	
B 72A2;D b$2%%%%
Aa  A%%%%
A
Aat,,DAAAQFFFFat,,DAAAQFFFFat,,DAAAQFFFF 
z	"	" @c1dfmmD))????@ @ @ @ @ @ @ @ @ @ @ @ @ @ @sy>>	!
 
 
 
 KKjt44556J6J6JKE
!!!
"C	z	"	" 8c377778 8 8 8 8 8 8 8 8 8 8 8 8 8 8		+  sy>>S     
z	"	" Mc242X666eLLLLM M M M M M M M M M M M M M Msy>>	 
 
 
 
 
 
s6   +FF
F+H

HH
,JJ	Jc                 d   t          j        g d          } t          j        g d          }t          j        t          d          5  t          ||           sJ 	 d d d            n# 1 swxY w Y   t          j        g d          }t          j        t          d          5  t          ||           sJ 	 d d d            n# 1 swxY w Y   t          j        dd	g          }t          j        t          d
          5  t          ||           sJ 	 d d d            d S # 1 swxY w Y   d S )Nr8   r   )r:   r9   r;   zOrder of columns does not matchmatchr   zMissing: \['d'\]r9   r:   zExtra:   \['c'\])r,   r-   r   r   r   r   )r/   r   s     r1   5test_check_matching_columns_raises_appropriate_errorsr     s   	ooo	.	.	.B<000D	z)J	K	K	K 0 0%dB//////0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 < 4 4 4555D	z)=	>	>	> 0 0%dB//////0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 <c
+++D	z)=	>	>	> 0 0%dB//////0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0s6   
A**A.1A.'CCCD%%D),D)c                 `   t          j        dg i          } t          j        | d          }t	          | |            t          j        t                    5 }t	          ||            d d d            n# 1 swxY w Y   dt          |j	                  v sJ dt          |j	                  v sJ d S )Nr"   r   r=   daskpandas)
r,   r-   rq   rr   r   r   r   r   r   r   )r/   r   infos      r1   test_check_meta_typenamer     s    	sBi	 	 B
.
+
+
+Cr2	y	!	! T3               S__$$$$s4:&&&&&&s   A33A7:A7frame_value_countsTFc                p   |r$|                      t          j        dd d           t          j        dg di          }t          j        |d          }t          |          sJ t          |          sJ t          |j                  rJ t          |j                  rJ t          |j                  rJ t          |j                  rJ t          t          j                  rJ t          |          rJ t          |          rJ t          |j                  sJ t          |j                  sJ t          |j                  rJ t          |j                  rJ t          t          j	                  rJ t          |          rJ t          |          rJ t          |j                  rJ t          |j                  rJ t          |j                  sJ t          |j                  sJ t          t          j                  rJ  G d	 d
          } |            }d |_        d |_        t          |          sJ  G d d          } |            }d |_        d |_        t          |          sJ  G d d          } |            }d |_        d |_        t          |          sJ d S )Nvalue_countsc                    d S rh   rW   )r"   s    r1   ri   z(test_is_dataframe_like.<locals>.<lambda>  s    D r3   F)raisingr"   r5   r   r=   c                      e Zd Zej        ZdS )0test_is_dataframe_like.<locals>.DataFrameWrapperN)rS   rT   rU   r,   r-   	__class__rW   r3   r1   DataFrameWrapperr     s        L			r3   r   c                      e Zd Zej        ZdS )-test_is_dataframe_like.<locals>.SeriesWrapperN)rS   rT   rU   r,   rv   r   rW   r3   r1   SeriesWrapperr     s        I			r3   r   c                      e Zd Zej        ZdS ),test_is_dataframe_like.<locals>.IndexWrapperN)rS   rT   rU   r,   rw   r   rW   r3   r1   IndexWrapperr     s        H			r3   r  )setattrr,   r-   rq   rr   r   r"   r+   r   rv   r   rw   rj   ru   rp   r[   )monkeypatchr   r/   r   r   wrapr   r  s           r1   test_is_dataframe_liker    s+     YBL...RWXXX	sIII&	'	'B
.
+
+
+CR     S!!!!! &&&&& ''''' ***** +++++ .....b!!!!!c""""""$#%     bh'''''ci(((((bi(((((R     S!!!!!RT"""""SU#####"""""#####RX&&&&&! ! ! ! ! ! ! ! DDKDLT"""""        =??DDJDI$        <>>DDJDIr3   c                 t   d } t          j        ddgdg          }t          j        t          d          5  t          | |           d d d            n# 1 swxY w Y   t          j        t          t          j        d	                    5  t          | |           d d d            d S # 1 swxY w Y   d S )
Nc                 4    t          j        g ddg          S )N)r   r   r   r   ru   r+   )r,   r-   rW   r3   r1   funcz,test_apply_and_enforce_message.<locals>.func*  s    |OOOA3????r3   r   r   r   r	  zExtra: *['B', 'C']r   )_funcrs   zMissing: ['D'])r,   r-   r   r   r   r   reescape)r
  r   s     r1   test_apply_and_enforce_messager  )  sG   @ @ @ <c
1#666D	z)=	>	>	> 2 2D11112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 
z3C)D)D	E	E	E 2 2D11112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2s#   AAAB--B14B1c                     t          j        t          j        ddgd                    } t          j        d          5 }t          |            d d d            n# 1 swxY w Y   |rJ d S )Nr   r   Sparser   T)record)r,   rv   arraywarningscatch_warningsr   )serr  s     r1   test_nonempty_series_sparser  5  s    
)BHaV8444
5
5C		 	-	-	- c              s    AA #A c                 j    t          j        g d          } t          |           }|j        dk    sJ d S )NFloat64r   )r,   rv   r   rp   )r  	non_emptys     r1   #test_nonempty_series_nullable_floatr  <  s<    
)Bi
(
(
(Cc""I?i''''''r3   c                    t          j        t          j        ddd          t          j                            d          d          } |                     d          }t          | |           t          j        t                    5  t          | |d           d d d            n# 1 swxY w Y   |
                    d	          }t          | |d
           t          j        t                    5  t          | |           d d d            n# 1 swxY w Y   t          j        t                    5  t          | |dd           d d d            n# 1 swxY w Y   t          j        | d          }|                    dg          }t          | |           t          j        t                    5  t          | |d           d d d            n# 1 swxY w Y   |
                    d	          }t          | |d
           t          j        t                    5  t          | |dd           d d d            d S # 1 swxY w Y   d S )Nr   r   r$   )r   r   r   F)sort_resultsT)drop)check_index)r  r  r   r=   )r,   r-   r{   linspacerandomsort_valuesr
   r   r   AssertionErrorreset_indexrq   rr   )r/   df_sdf_srr   ddf_sddf_srs         r1   test_assert_eq_sortsr(  B  s   	BK1b11	8H8H8L8LMM	N	NB>>#Db$	~	&	& 0 0"d////0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 $''Eb%U++++	~	&	&  "e              	~	&	& D D"eUCCCCD D D D D D D D D D D D D D D .
+
+
+COOSE""Eb%	~	&	& 1 1"e%00001 1 1 1 1 1 1 1 1 1 1 1 1 1 1 D))Fb&e,,,,	~	&	& E E"f%eDDDDE E E E E E E E E E E E E E E E E EsZ   B&&B*-B*2DDD3EEE3GGGH??IIc                    dfd} dfd}t          j        dg di          }t          j        |d	
          }|                    ||          }t          j        t          d          5  t          ||           d d d            n# 1 swxY w Y   t          |||            t          j
                            |           5  t          ||d            d d d            d S # 1 swxY w Y   d S )NFc                 4    	 dt          | i |dS # dw xY w)NTFr   )r   kwargsusing_custom_schedulers     r1   custom_schedulerz2test_assert_eq_scheduler.<locals>.custom_scheduler_  s9    	+%)"T,V,,%*""U"****s    partpd.DataFramereturnc                &    s
J d            | dz   S )Nnot using custom schedulerr   rW   )r.  r,  s    r1   check_custom_schedulerz8test_assert_eq_scheduler.<locals>.check_custom_schedulerg  s!    %CC'CCCCaxr3   r"   )r   r   r   r   r   r=   )r   r2  r   )	scheduler)r.  r/  r0  r/  )r,   r-   rq   rr   map_partitionsr   r   r"  r
   r   configset)r-  r3  r/   r   ddf2r,  s        @r1   test_assert_eq_schedulerr9  \  s   "+ + + + +      
sLLL)	*	*B
.
+
+
+C43??D	~-I	J	J	J  $               dD$45555	#3	4	4 . .$----. . . . . . . . . . . . . . . . . .s$   /BBB	C))C-0C-r<   r"   r   r=   c                z    t          |           t          j        u sJ t          |           t          j        u sJ d S rh   )r   r,   rv   r   r-   r<   s    r1   test_meta_constructor_utilitiesr<  x  s@     #4((BI5555!$''2<777777r3   c                   t          j        t          d          5  t          |            d d d            n# 1 swxY w Y   t          j        t          d          5  t	          |            d d d            d S # 1 swxY w Y   d S )Nznot supported by meta_seriesr   znot supported by meta_frame)r   r   r   r   r   r;  s    r1   %test_meta_constructor_utilities_raiser>    s    
y(F	G	G	G & &%%%& & & & & & & & & & & & & & &	y(E	F	F	F % %t$$$% % % % % % % % % % % % % % % % % %s   8<<A;;A?A?zdivisions, validr5   )r   r   r   )r   r   r   )r   r   r   )r5   T){   Fnanc                0    t          |           |k    sJ d S rh   )r   )	divisionsvalids     r1   test_valid_divisionsrD    s#     9%%......r3   c                    	 dd l } n# t          $ r d } Y nw xY wt          r:| 8t          | j                  t          d          k    rt                      du sJ nt                      du sJ t          j                            ddi          5  t                      du sJ 	 d d d            n# 1 swxY w Y   t          j                            ddi          5  t                      du sJ 	 d d d            d S # 1 swxY w Y   d S )Nr   z12.0.0TFzdataframe.convert-string)	pyarrowImportErrorr   r   __version__r   r   r6  r7  )pas    r1   test_pyarrow_strings_enabledrJ    s      
 	2NBN##wx'8'888&((D00000&((E1111 
4e<	=	= 2 2&((E111112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 
4d;	<	< 1 1&((D000001 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1s0    B--B14B1C::C>C>)I
__future__r   r  r  collections.abcr   numpyr{   r   r,   r   packaging.versionr   r   dask.dataframe	dataframerq   dask.dataframe._compatr   r   dask.dataframe.corer   dask.dataframe.utilsr	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   
dask.localr   r2   r   r   r   r   r   r   r   r   r   r   r   markparametrizer  r  r  r  r(  r9  r-   rv   rw   	from_dictr"   r+   r<  rn   r  r>  r   rD  rJ  rW   r3   r1   <module>rX     st   " " " " " " 				  $ $ $ $ $ $          % % % % % %        4 4 4 4 4 4 4 4 1 1 1 1 1 1                                 "       - - -Q= Q= Q=h$! $! $!N	$ 	$ 	$" " "*M" M" M"`     9 9 9, , ,(I I IX0 0 0 ' ' ' -e}==9 9 >=9x	2 	2 	2  ( ( (E E E4. . .8 
aS	1#!cA3ZQ///cA3ZQ///1cA3ZQ///5
 
8 8
 
8
 
cA3ZQ///18! % % % 	D	E	E	D
UU5\\1	u% / / /1 1 1 1 1r3   