Ë
    ¤ehê  ã                   óT   — d Z ddlZddlZddlmZ ddlmZmZ ddl	m
Z  G d„ d«      Zy)zž
test_insert is specifically for the DataFrame.insert method; not to be
confused with tests with "insert" in their names that are really testing
__setitem__.
é    N)ÚPerformanceWarning)Ú	DataFrameÚIndexc                   ó6   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)	ÚTestDataFrameInsertc                 ó¾  — t        t        j                  j                  d«      j	                  d«      t        j
                  d«      g d¢¬«      }|j                  dd|d   «       t        j                  |j                  t        g d	¢«      «       t        j                  |d   |d   d
¬«       |j                  dd|d   «       t        j                  |j                  t        g d¢«      «       t        j                  |d   |d   d
¬«       t        j                  t        d¬«      5  |j                  dd|d   «       d d d «       d}t        j                  t        |¬«      5  |j                  dd|d   «       d d d «       d|j                  _        |j                  dd|d   «       |j                  j                   dk(  sJ ‚y # 1 sw Y   ŒˆxY w# 1 sw Y   ŒXxY w)Né   )é   é   r
   )ÚcÚbÚa)ÚindexÚcolumnsr   Úfoor   )r   r   r   r   F)Úcheck_namesÚbarr   )r   r   r   r   r   zalready exists©Úmatché   r   zcannot insert c, already existsÚ	some_nameÚbaz)r   ÚnpÚrandomÚdefault_rngÚstandard_normalÚarangeÚinsertÚtmÚassert_index_equalr   r   Úassert_series_equalÚassert_almost_equalÚpytestÚraisesÚ
ValueErrorÚname©ÚselfÚdfÚmsgs      úe/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pandas/tests/frame/indexing/test_insert.pyÚtest_insertzTestDataFrameInsert.test_insert   sv  € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<Ü—)‘)˜A“,Ú#ô
ˆð 	�	‰	�!�U˜B˜s™GÔ$Ü
×Ñ˜bŸj™j¬%Ò0FÓ*GÔHÜ
×Ñ˜r #™w¨¨5©	¸uÕEà
�	‰	�!�U˜B˜s™GÔ$Ü
×Ñ˜bŸj™j¬%Ò0MÓ*NÔOÜ
×Ñ˜r #™w¨¨5©	¸uÕEä�]‰]œ:Ð-=Ô>ñ 	'Ø�I‰I�a˜˜b ™gÔ&÷	'ð 0ˆÜ�]‰]œ:¨SÔ1ñ 	'Ø�I‰I�a˜˜b ™gÔ&÷	'ð &ˆ�
‰
Œà
�	‰	�!�U˜B˜s™GÔ$Ø�z‰z�‰ +Ò-Ð-Ñ-÷	'ð 	'ú÷	'ð 	'ús   Ä)GÅ%GÇGÇGc                 óŽ  — t        dddgi«      }|j                  i ¬«      }|j                  ddddg«       |j                  i ¬«      }t        ddgddggddg¬«      }t        j                  ||«       |j                  dd	d
dg«       |j                  i ¬«      }t        g d¢g d¢gg d¢¬«      }t        j                  ||«       y )Nr   çš™™™™™ñ?çš™™™™™@©r   r   r   r   r	   r   çÍÌÌÌÌÌô?çffffff@)r1   r   r.   )r2   r	   r/   )r   r   r   )r   Úrenamer   r   Úassert_frame_equal)r(   r)   ÚresultÚexpecteds       r+   Útest_insert_column_bug_4032z/TestDataFrameInsert.test_insert_column_bug_4032.   s»   € ä˜˜c 3˜ZÐ(Ó)ˆà�Y‰Y˜rˆYÓ"ˆØ
�	‰	�!�S˜1˜a˜&Ô!Ø—‘ 2�Ó&ˆä˜q #˜h¨¨C¨Ð1¸CÀ¸:ÔFˆÜ
×Ñ˜f hÔ/à
�	‰	�!�S˜3 ˜*Ô%Ø—‘ 2�Ó&ˆäšmª]Ð;Â_ÔUˆÜ
×Ñ˜f hÕ/ó    c                 óþ   — t        «       }|j                  ddg d¢d¬«       |j                  ddg d¢d¬«       |j                  ddg d¢d¬«       t        g d¢g d	¢g d
¢gg d¢¬«      }t        j                  ||«       y )Nr   ÚA)ÚgÚhÚiT)Úallow_duplicates)ÚdÚeÚf)r   r   r   )r   r?   r;   )r   r@   r<   )r   rA   r=   )r:   r:   r:   r0   )r   r   r   r4   )r(   r)   Úexps      r+   Útest_insert_with_columns_dupsz1TestDataFrameInsert.test_insert_with_columns_dups?   sm   € ä‹[ˆØ
�	‰	�!�Sš/¸Dˆ	ÔAØ
�	‰	�!�Sš/¸Dˆ	ÔAØ
�	‰	�!�Sš/¸Dˆ	ÔAÜÚšoªÐ?Êô
ˆô 	×Ñ˜b #Õ&r8   c                 ó  — t        t        j                  j                  d«      j	                  d«      «      }|d   }|rd }nt
        }t        j                  |«      5  t        d«      D ]  }|d   |z  ||dz   <   Œ 	 d d d «       |r>d|j                  d<   |j                  d   |d   d   k(  sJ ‚|j                  d   dk7  sJ ‚y d|j                  d<   |j                  d   |d   d   k(  sJ ‚|j                  d   dk(  sJ ‚y # 1 sw Y   Œ‡xY w)	Nr	   )é   r   r   éd   r   r   éc   )r   r   )r   r   r   r   r   r   r   Úassert_produces_warningÚrangeÚilocÚvalues)r(   Úusing_array_managerÚusing_copy_on_writer)   ÚserÚexpected_warningÚns          r+   Útest_insert_item_cachez*TestDataFrameInsert.test_insert_item_cacheJ   s  € Ü”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆØ�‰eˆáØ#Ñô  2Ðä×'Ñ'Ð(8Ó9ñ 	&Ü˜3“Zò &�Ø˜q™E A™I��1�q‘5’	ñ&÷	&ñ ØˆC�H‰H�Q‰KØ—7‘7˜4‘= B q¡E¨!¡HÒ,Ð,Ð,Ø—7‘7˜4‘= BÒ&Ð&Ñ&àˆC�J‰J�q‰MØ—7‘7˜4‘= B q¡E¨!¡HÒ,Ð,Ð,Ø—7‘7˜4‘= BÒ&Ð&Ñ&÷	&ð 	&ús   ÁDÄDc                 ó  — t        t        j                  j                  d«      j	                  ddd¬«      d¬«      }t        j                  d «      5  t        j                  g d¢«      |d	<   d d d «       y # 1 sw Y   y xY w)
Nr	   r   rF   )r   rF   )ÚsizeÚInt64)Údtype)r   r	   r   r   )r   r   r   r   Úintegersr   rH   Úarray©r(   r)   s     r+   Útest_insert_EA_no_warningz-TestDataFrameInsert.test_insert_EA_no_warninga   sk   € ô Ü�I‰I×!Ñ! !Ó$×-Ñ-¨a°¸8Ð-ÓDÈGô
ˆô ×'Ñ'¨Ó-ñ 	*Ü—h‘hšyÓ)ˆBˆs‰G÷	*÷ 	*ñ 	*ús   ÁA6Á6A?c                 ó²   — t        ddgddgdœ«      }d}t        j                  t        |¬«      5  |j	                  dd|«       d d d «       y # 1 sw Y   y xY w)	Nr   r	   r   rE   )Úcol1Úcol2zJExpected a one-dimensional object, got a DataFrame with 2 columns instead.r   Únewcol)r   r#   r$   r%   r   r'   s      r+   Útest_insert_framez%TestDataFrameInsert.test_insert_framej   sY   € ä  A °°A°Ñ7Ó8ˆð Yð 	ô �]‰]œ:¨SÔ1ñ 	'Ø�I‰I�a˜ 2Ô&÷	'÷ 	'ñ 	'ús   °AÁAc                 óº   — t        dddgi«      }|j                  t        j                  d«      dd«       t	        j
                  |t        ddgddgdœ«      «       y )Nr   r   r	   r   r   )r   r   )r   r   r   Úint64r   r4   rX   s     r+   Útest_insert_int64_locz)TestDataFrameInsert.test_insert_int64_loct   sN   € ä˜˜a ˜V�}Ó%ˆØ
�	‰	”"—(‘(˜1“+˜s AÔ&Ü
×Ñ˜b¤)°1°a°&ÀÀ1¸vÑ,FÓ"GÕHr8   N)
Ú__name__Ú
__module__Ú__qualname__r,   r7   rC   rQ   rY   r^   ra   © r8   r+   r   r      s&   „ ò.ò60ò"	'ò'ò.*ò'óIr8   r   )Ú__doc__Únumpyr   r#   Úpandas.errorsr   Úpandasr   r   Úpandas._testingÚ_testingr   r   re   r8   r+   ú<module>rl      s-   ðñó
 Û å ,÷õ ÷fIò fIr8   