§
    á! hÙ  ã                   ó”  — d Z ddlZddlZddlZddlZej        d„ ¦   «         Zej         	                    dddgddgd	œg d
¢g d¢d	œg d¢g d¢dœgg d¢¬¦  «        d„ ¦   «         Z
d„ Zd„ Zd„ Zd„ Zd„ Zej         	                    ddgg d¢¦  «        d„ ¦   «         Zej         	                    ddgg d¢¦  «        d„ ¦   «         Zd„ Zd„ ZdS )ze
A verbatim copy (vendored) of the spec tests.
Taken from https://github.com/data-apis/dataframe-api
é    Nc                  ó   — dd„} | S )NFc                 ó\   — t          j        | ¦  «        }|r|                     d¦  «        n|S )NÚcategory)ÚpdÚ	DataFrameÚastype)ÚdctÚis_categoricalÚdfs      úhc:\xampp_lite_8_4\www\timesheet\venv\Lib\site-packages\pandas/tests/interchange/test_spec_conformance.pyÚmakerzdf_from_dict.<locals>.maker   s-   € ÝŒ\˜#ÑÔˆØ(6Ð>ˆr�yŠy˜Ñ$Ô$Ð$¸BÐ>ó    )F© )r   s    r   Údf_from_dictr      s   € ð?ð ?ð ?ð ?ð €Lr   Ú	test_dataÚfooÚbarÚbazÚqux©ÚaÚb©g      ø?ç      @ç      @©gffffff"@g      %@gš™™™™™'@)é   é   é   é   )ÚAÚB)Ústr_dataÚ
float_dataÚint_data)Úidsc                 óÒ  — t          |                      ¦   «         ¦  «        } || ¦  «        }|                     ¦   «         }t          | |d                  ¦  «        }|D ]ˆ}|                     |¦  «        j        }|dk    sJ ‚t          |t          ¦  «        sJ ‚|                     |¦  «                             ¦   «         |k    sJ ‚|                     |¦  «        j	        dk    sJ ‚Œ‰d S )Nr   )
ÚlistÚkeysÚ__dataframe__ÚlenÚget_column_by_nameÚ
null_countÚ
isinstanceÚintÚsizeÚoffset)r   r   Úcolumnsr   ÚdfXÚcolumn_sizeÚcolumnr-   s           r   Útest_only_one_dtyper6      só   € õ �9—>’>Ñ#Ô#Ñ$Ô$€GØ	ˆ�iÑ	 Ô	 €BØ
×
Ò
Ñ
Ô
€Cå�i ¨¤
Ô+Ñ,Ô,€KØð :ð :ˆØ×+Ò+¨FÑ3Ô3Ô>ˆ
Ø˜QŠˆˆˆÝ˜*¥cÑ*Ô*Ð*Ð*Ð*Ø×%Ò% fÑ-Ô-×2Ò2Ñ4Ô4¸ÒCÐCÐCÐCØ×%Ò% fÑ-Ô-Ô4¸Ò9Ð9Ð9Ð9Ð9ð:ð :r   c           	      óì  —  | g d¢g d¢g d¢g d¢g d¢g d¢dœ¦  «        }|                      ¦   «         }ddd	dd
ddœ}|                     ¦   «         D ]}\  }}|                     |¦  «        }|j        dk    sJ ‚t	          |j        t
          ¦  «        sJ ‚|                     ¦   «         dk    sJ ‚|j        dk    sJ ‚|j        d         |k    sJ ‚Œ~|                     d¦  «        j        d         dk    sJ ‚d S )N©r   r   r   )r   r    é   r   )é	   é
   é   )TFT)r   Ú Úc)r   r   r>   ÚdÚeÚfr   r   é   é   r   r>   r   é@   )	r*   Úitemsr,   r-   r.   r/   r0   r1   Údtype)r   r   r3   r2   r5   ÚkindÚcolXs          r   Útest_mixed_dtypesrI   -   s?  € Ø	ˆà��Ø��Ø ��Ø��Ø$Ð$Ð$Ø��ð	
ð 	
ñ	
ô 	
€Bð ×
Ò
Ñ
Ô
€Cð ˜A A¨A°B¸RÐ@Ð@€GàŸš™œð %ð %‰ˆ�Ø×%Ò% fÑ-Ô-ˆØŒ !Ò#Ð#Ð#Ð#Ý˜$œ/­3Ñ/Ô/Ð/Ð/Ð/Ø�yŠy‰{Œ{˜aÒÐÐÐØŒ{˜aÒÐÐÐàŒz˜!Œ} Ò$Ð$Ð$Ð$Ð$à×!Ò! #Ñ&Ô&Ô,¨QÔ/°2Ò5Ð5Ð5Ð5Ð5Ð5r   c                 óÞ   —  | ddt           j        dgi¦  «        }|                     ¦   «         }|                     d¦  «        }|j        dk    sJ ‚t          |j        t          ¦  «        sJ ‚d S )Nr   g      ð?g       @r   )ÚmathÚnanr*   r,   r-   r.   r/   ©r   r   r3   rH   s       r   Útest_na_floatrN   J   st   € Ø	ˆ�s˜S¥$¤(¨CÐ0Ð1Ñ	2Ô	2€BØ
×
Ò
Ñ
Ô
€CØ×!Ò! #Ñ&Ô&€DØŒ?˜aÒÐÐÐÝ�d”o¥sÑ+Ô+Ð+Ð+Ð+Ð+Ð+r   c                 óì   —  | dg d¢i¦  «        }|                      ¦   «         }|                     d¦  «        }t          j        t          d¬¦  «        5  |j         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r8   z.*categorical.*)Úmatch)r*   r,   ÚpytestÚraisesÚ	TypeErrorÚdescribe_categoricalrM   s       r   Útest_noncategoricalrU   R   sÁ   € Ø	ˆ�s˜I˜I˜IÐ&Ñ	'Ô	'€BØ
×
Ò
Ñ
Ô
€CØ×!Ò! #Ñ&Ô&€DÝ	Œ•yÐ(9Ð	:Ñ	:Ô	:ð "ð "ØÔ!Ð!ð"ð "ð "ñ "ô "ð "ð "ð "ð "ð "ð "ð "øøøð "ð "ð "ð "ð "ð "s   ÁA)Á)A-Á0A-c                 óø   —  | dg d¢id¬¦  «        }|                      ¦   «                              d¦  «        }|j        }t          |d         t          ¦  «        sJ ‚t          |d         t          ¦  «        sJ ‚d S )NÚweekday)	ÚMonÚTuerX   ÚWedrX   ÚThuÚFriÚSatÚSunT)r
   Ú
is_orderedÚis_dictionary)r*   r,   rT   r.   Úbool)r   r   rH   Úcategoricals       r   Útest_categoricalrc   Z   s�   € Ø	ˆØ	ÐSÐSÐSÐTØð
ñ 
ô 
€Bð
 ×ÒÑÔ×0Ò0°Ñ;Ô;€DØÔ+€KÝ�k ,Ô/µÑ6Ô6Ð6Ð6Ð6Ý�k /Ô2µDÑ9Ô9Ð9Ð9Ð9Ð9Ð9r   c                 ó  —  | g d¢g d¢g d¢dœ¦  «        }|                      ¦   «         }|                     ¦   «         dk    sJ ‚|                     ¦   «         dk    sJ ‚|                     ¦   «         dk    sJ ‚t	          |                     ¦   «         ¦  «        g d¢k    sJ ‚t	          |                     d¦  «                             ¦   «         ¦  «        t	          |                     d¦  «                             ¦   «         ¦  «        k    sJ ‚d S )	N)TTF)r   r   r   r   )ÚxÚyÚzr   r   )r   r   )re   rg   )r*   Únum_columnsÚnum_rowsÚ
num_chunksr(   Úcolumn_namesÚselect_columnsÚselect_columns_by_name)r   r   r3   s      r   Útest_dataframern   f   s(  € Ø	ˆØ!Ð!Ð!¨	¨	¨	Ð8IÐ8IÐ8IÐJÐJñ
ô 
€Bð ×
Ò
Ñ
Ô
€Cà�?Š?ÑÔ Ò!Ð!Ð!Ð!Ø�<Š<‰>Œ>˜QÒÐÐÐØ�>Š>ÑÔ˜qÒ Ð Ð Ð Ý�× Ò Ñ"Ô"Ñ#Ô#   Ò6Ð6Ð6Ð6Ý�×"Ò" 6Ñ*Ô*×7Ò7Ñ9Ô9Ñ:Ô:½dØ×"Ò" :Ñ.Ô.×;Ò;Ñ=Ô=ñ?ô ?ò ð ð ð ð ð r   r0   Ún_chunks))r;   r   )é   r   )rp   r9   c                 ó(  —  |dt          t          | ¦  «        ¦  «        i¦  «        }|                     ¦   «         }t          |                     |¦  «        ¦  «        }t	          |¦  «        |k    sJ ‚t          d„ |D ¦   «         ¦  «        | k    sJ ‚d S )Nre   c              3   ó>   K  — | ]}|                      ¦   «         V — Œd S ©N)ri   ©Ú.0Úchunks     r   ú	<genexpr>z%test_df_get_chunks.<locals>.<genexpr>{   s,   è è € Ð4Ð4 Eˆu�~Š~ÑÔÐ4Ð4Ð4Ð4Ð4Ð4r   )r(   Úranger*   Ú
get_chunksr+   Úsum©r0   ro   r   r   r3   Úchunkss         r   Útest_df_get_chunksr}   u   s“   € à	ˆ�s�D¥ t¡¤Ñ-Ô-Ð.Ñ	/Ô	/€BØ
×
Ò
Ñ
Ô
€CÝ�#—.’. Ñ*Ô*Ñ+Ô+€FÝˆv‰;Œ;˜(Ò"Ð"Ð"Ð"ÝÐ4Ð4¨VÐ4Ñ4Ô4Ñ4Ô4¸Ò<Ð<Ð<Ð<Ð<Ð<r   c                 óN  —  |dt          t          | ¦  «        ¦  «        i¦  «        }|                     ¦   «         }t          |                     d¦  «                             |¦  «        ¦  «        }t          |¦  «        |k    sJ ‚t          d„ |D ¦   «         ¦  «        | k    sJ ‚d S )Nre   r   c              3   ó>   K  — | ]}|                      ¦   «         V — Œd S rs   )r0   rt   s     r   rw   z)test_column_get_chunks.<locals>.<genexpr>„   s*   è è € Ð0Ð0 ˆu�zŠz‰|Œ|Ð0Ð0Ð0Ð0Ð0Ð0r   )r(   rx   r*   Ú
get_columnry   r+   rz   r{   s         r   Útest_column_get_chunksr�   ~   s¡   € à	ˆ�s�D¥ t¡¤Ñ-Ô-Ð.Ñ	/Ô	/€BØ
×
Ò
Ñ
Ô
€CÝ�#—.’. Ñ#Ô#×.Ò.¨xÑ8Ô8Ñ9Ô9€FÝˆv‰;Œ;˜(Ò"Ð"Ð"Ð"ÝÐ0Ð0¨Ð0Ñ0Ô0Ñ0Ô0°DÒ8Ð8Ð8Ð8Ð8Ð8r   c                 ó€  —  | ddgddgdœ¦  «        }|                      ¦   «         }|                     ¦   «         D ]6}|                     ¦   «         dk    sJ ‚|                     ¦   «         dk    sJ ‚Œ7|                     d¦  «        j        d         dk    sJ ‚|                     d¦  «        j        d         dk    sJ ‚d S )Nr   r   r   r   r   r   )r*   Úget_columnsr0   rj   r€   rF   rM   s       r   Útest_get_columnsr„   ‡   sÔ   € Ø	ˆ˜Q ˜F¨#¨s¨Ð4Ð4Ñ	5Ô	5€BØ
×
Ò
Ñ
Ô
€CØ—’Ñ!Ô!ð &ð &ˆØ�yŠy‰{Œ{˜aÒÐÐÐØ�ŠÑ Ô  AÒ%Ð%Ð%Ð%Ð%ð �>Š>˜!ÑÔÔ" 1Ô%¨Ò*Ð*Ð*Ð*Ø�>Š>˜!ÑÔÔ" 1Ô%¨Ò*Ð*Ð*Ð*Ð*Ð*r   c                 ób  — g d¢} | d|i¦  «        }|                      ¦   «         }|                     d¦  «        }|                     ¦   «         }|d         \  }}|j        dk    sJ ‚|j        dk    sJ ‚|                     ¦   «         \  }}	|d         dk    sJ ‚|dk    rŽ|d         }
t          j        t          j        t          j	        t          j
        dœ|
         }t          |¦  «        D ]C\  }}|                     |j        ||
dz  z  z   ¦  «        j        }||k    sJ d|› d	�¦   «         ‚ŒBd S d S )
N)r   r   éÿÿÿÿr   r   Údatar   )é   é   é    rD   rˆ   zBuffer at index z	 mismatch)r*   r€   Úget_buffersÚbufsizeÚptrÚ__dlpack_device__ÚctypesÚc_int8Úc_int16Úc_int32Úc_int64Ú	enumerateÚfrom_addressÚvalue)r   Úarrr   r3   rH   ÚbufXÚdataBufÚ	dataDtypeÚdeviceÚ_ÚbitwidthÚctypeÚidxÚtruthÚvals                  r   Útest_bufferr¢   “   sd  € Ø
ˆ*ˆ*€CØ	ˆ�s˜C�jÑ	!Ô	!€BØ
×
Ò
Ñ
Ô
€CØ�>Š>˜!ÑÔ€DØ×ÒÑÔ€Dà˜fœÑ€GˆYàŒ?˜QÒÐÐÐØŒ;˜!ÒÐÐÐØ×)Ò)Ñ+Ô+�I€FˆAð �QŒ<˜1ÒÐÐÐà�‚{€{Ø˜Q”<ˆåŒ}Ý”Ý”Ý”ð	
ð 
ð
 ôˆõ $ C™.œ.ð 	Cð 	C‰JˆC�Ø×$Ò$ W¤[°3¸(Àa¹-Ñ3HÑ%HÑIÔIÔOˆCØ˜%’<�<�<Ð!B°CÐ!BÐ!BÐ!B‘<”<�<�<ð €{ð	Cð 	Cr   )Ú__doc__r�   rK   rQ   Úpandasr   Úfixturer   ÚmarkÚparametrizer6   rI   rN   rU   rc   rn   r}   r�   r„   r¢   r   r   r   ú<module>r¨      sÇ  ððð ð €€€Ø €€€à €€€à Ð Ð Ð ð „ðð ñ „ðð „×ÒØà�eˆn E¨5 >Ð2Ð2ØˆoˆoÐ$5Ð$5Ð$5Ð6Ð6Øˆlˆl   Ð.Ð.ðð
 	/Ð.Ð.ð ñ ô ð:ð :ñô ð:ð6ð 6ð 6ð:,ð ,ð ,ð"ð "ð "ð	:ð 	:ð 	:ðð ð ð „×Ò˜& *Ð-Ð/JÐ/JÐ/JÑKÔKð=ð =ñ LÔKð=ð „×Ò˜& *Ð-Ð/JÐ/JÐ/JÑKÔKð9ð 9ñ LÔKð9ð	+ð 	+ð 	+ðCð Cð Cð Cð Cr   