
    bMh                     d   d dl Zd dlZd dlmc mZ d dlZd dlm	Z	m
Z
 d dlmZ d dlmZ ej        d             Zej        j        ej        d                         Zej        ej                            dej        ej        g          ej                            dd g ej        g d          fd	g ej        g d          fd
g ej        g d          fd d	g ej        g dg dg          j        fd dg ej        g dg dg          j        fg d ej        g dg dg dg          j        fd	dg ej        g dg dg          j        fd	dg ej        g dg dg          j        fd	dg ej        g dg dg          j        fg	          d                                     Zd ZdS )    N)	DataFrameSeries)	get_arrayc                 r   t          g dg dd          }g d|d<   |d d          }t          d |j        j        D                       sJ |                                 |j        j        d         j                                        sJ t          j        t          |d          t          |d                    sJ |j        j        d	         j                                        rJ |j        j        d         j                                        rJ |j        j        d	         j                                        sJ |j        j        d
         j                                        rJ | rHd|j
        d<   |j        j        d	         j                                        rJ |j        d         dk    sJ d S d S )N         皙?g?g333333?ab         cc              3   H   K   | ]}|j                                         V  d S )N)refshas_reference).0blks     e/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/copy_view/test_internals.py	<genexpr>z#test_consolidate.<locals>.<genexpr>   s0      FFCsx%%''FFFFFF    r   r   r   r	   g        )r   r   )r   r   r   )r   all_mgrblocks_consolidate_inplacer   r   npshares_memoryr   ilocloc)using_copy_on_writedfsubsets      r   test_consolidater(      s    
99	:	:BiiBsG UF FF6;3EFFFFFFFF !!! ;a %3355555 Ib#..	&#0F0FGGGGG {!!$)7799999 w~a %33555557>!!//11111w~a %3355555  %D7>!$)7799999vf~$$$$% % %$r   c                  *   t          j        dd          5  t          g dg dd          } | d d          }d|j        d<   | j        d         dk    sJ dt           j        j        _        t          g dg dd          } | d d          }d|j        d<   | j        d         d	k    sJ dt           j        j        _        t          g dg dd          } | d d          }d|j        d<   | j        d         dk    sJ 	 d d d            d S # 1 swxY w Y   d S )
Nzmode.copy_on_writeFr   r   r   r   )r   r   Tr   )pdoption_contextr   r#   optionsmodecopy_on_write)r&   r'   s     r   test_switch_optionsr/   3   s~    
	/	7	7 " "YYY___==>>AAADwt}!!!!(,
%YYY___==>>AAADwt}!!!!(-
%YYY___==>>AAADwt}!!!!!'" " " " " " " " " " " " " " " " " "s   C$DDDdtypez	locs, arr)r   r   )ir	   )r   r   r	   r
   c                 x   t          g dg dg dg dg dt          g dt                    d          }|                    |          }|                                }|                    d 	          }|j                            ||d
           t          j        ||           | rSt          |j
                  D ]<\  }}||vr3t          j        t          ||          t          ||                    sJ =d S |j
        D ]5}t          j        t          ||          t          ||                    rJ 6d S )Nr   r   )      	   )
         )         )r   r   r   )r0   )r   r   r   defdeepT)inplace)r   r   objectastypecopyr   isettmassert_frame_equal	enumeratecolumnsr!   r"   r   )	r%   locsarrr0   r&   df_origdf2icols	            r   test_iset_splits_blocks_inplacerT   Q   sp   ( 
v666	
 	
	
 	
B **U

CggiiG
''t'

CHMM$TM***"g&&& Q
++ 	Q 	QFAs}}'	"c(:(:Ic3<O<OPPPPP	Q 	Q : 	Q 	QC'	"c(:(:Ic3<O<OPPPPPP	Q 	Qr   c                  f   t          dg di          t          d          D ]}                     d           t          j        j        d         j        j                  dk    sJ t          dg di          fdt          d	          D             }t          d
          D ]}                     d           t          j        j        d         j        j                  dk    sJ j        j        d         j        j        dk    sJ t          d          D ]}                     d           j        j        d         j        j        dk    sJ |d d         }t          d          D ]}                     d           j        j        d         j        j        dk    sJ d S )Nr   r   i  FrC   r   i  c                 <    g | ]}                     d           S )FrC   )rH   )r   rR   r&   s     r   
<listcomp>z,test_exponential_backoff.<locals>.<listcomp>   s'    
3
3
312777
3
3
3r   i     i  i  i  i,  )	r   rangerH   lenr   r   r   referenced_blocksclear_counter)rR   dfsr&   s     @r   test_exponential_backoffr^      s   	C#	$	$B3ZZ  
Urw~a %788C????	C#	$	$B
3
3
3
3c


3
3
3C2YY  
Urw~a %788C????7>!!/477773ZZ  
U 7>!!/47777
dsd)C3ZZ  
U 7>!!/3666666r   )numpyr!   pytestpandas.util._test_decoratorsutil_test_decoratorstdpandasr*   r   r   pandas._testing_testingrJ   pandas.tests.copy_view.utilr   skip_array_manager_invalid_testr(   mark
single_cpur/   parametrizeintpint8arrayTrT   r^    r   r   <module>rr      s        ) ) ) ) ) ) ) ) )                  1 1 1 1 1 1 # %  % $# %F #" " $# "8 #27BG"455
hbh|||$$%
hbh|||$$%
hbh|||$$%
Q<<<6779:
Q<<<6779:	HBHlllLLL,,,GHHJK
Q<<<6779:
Q<<<6779:
Q<<<6779:
 Q Q  65 $# Q<7 7 7 7 7r   