
    Eg                          d dl Zd dlZd dlmZmZ d dlmZ  G d d          Z	 G d de	          Z
 G d de	          ZdS )	    N)	DataFrameSeriesc                       e Zd Zej        d             Zd Zd Zd Zej	        
                    dddg          d             Zd	 Zd
 ZdS )SharedSetAxisTestsc                      t          d          )NzImplemented by subclasses)NotImplementedError)selfs    ]/var/www/sysmax/venv/lib/python3.11/site-packages/pandas/tests/frame/methods/test_set_axis.pyobjzSharedSetAxisTests.obj   s    !"=>>>    c                     t          d          d t          |                   }|                                }||_        |                    |d          }t          j        ||           d S )Nabcdr   axislistlencopyindexset_axistmassert_equalr	   r   	new_indexexpectedresults        r
   test_set_axisz SharedSetAxisTests.test_set_axis   s]    LL3s88,	88::"ia00
&)))))r   c                    t          d          d t                             }j        d d                                          }||_                            |dd          t          j        |           usJ |sYj        dk    rt          j	                  rJ n6t          fdt          j        d                   D                       rJ                     |dd          t          j        |           usJ j        dk    rt          j	                  sJ n6t          fdt          j        d                   D                       sJ                     |d	          t          j        |           usJ |rZj        dk    rt          j	                  sJ nt          fd
t          j        d                   D                       sJ nYj        dk    rt          j	                  rJ n6t          fdt          j        d                   D                       rJ                     |d          t          j        |           j        dk    rt          j	                  sJ d S t          fdt          j        d                   D                       sJ d S )Nr   r   T)r   r      c              3   ~   K   | ]7}t          j        j        d d |f         j        d d |f                   V  8d S Nr   shares_memoryiloc.0ir   r   s     r
   	<genexpr>z8SharedSetAxisTests.test_set_axis_copy.<locals>.<genexpr>(   sa         $V[A%6AGG     r   Fc              3   ~   K   | ]7}t          j        j        d d |f         j        d d |f                   V  8d S r!   r"   r%   s     r
   r(   z8SharedSetAxisTests.test_set_axis_copy.<locals>.<genexpr>4   sa          QQQT!2CHQQQTNCC     r   r   c              3   ~   K   | ]7}t          j        j        d d |f         j        d d |f                   V  8d S r!   r"   r%   s     r
   r(   z8SharedSetAxisTests.test_set_axis_copy.<locals>.<genexpr>B   sa         $V[A%6AGG     r   c              3   ~   K   | ]7}t          j        j        d d |f         j        d d |f                   V  8d S r!   r"   r%   s     r
   r(   z8SharedSetAxisTests.test_set_axis_copy.<locals>.<genexpr>J   sa          QQQT!2CHQQQTNCC     r   )r   c              3   ~   K   | ]7}t          j        j        d d |f         j        d d |f                   V  8d S r!   r"   )r&   r'   origress     r
   r(   z8SharedSetAxisTests.test_set_axis_copy.<locals>.<genexpr>U   s`          !!!Q$111a4AA     r   )r   r   r$   r   r   r   r   r   ndimr#   anyrangeshapeall)r	   r   using_copy_on_writer   r   r-   r.   r   s    `   @@@r
   test_set_axis_copyz%SharedSetAxisTests.test_set_axis_copy   s   LL3s88,	x{88::"iad;;
&)))S    " 	x1}}+FC888888     "39Q<00       
 iae<<
&)))S    8q==#FC000000     sy|,,        ia00
&)))S     	x1}}'444444     "39Q<00        
 X]]'444444     sy|,,       
 ll95l11
#&&&8q==#C.......     sy|,,         r   c                     t          d          d t          |                   }|                                }||_        |                    |          }t          j        ||           d S )Nr   r   r   s        r
   !test_set_axis_unnamed_kwarg_warnsz4SharedSetAxisTests.test_set_axis_unnamed_kwarg_warnsZ   sY    LL3s88,	88::"i((
)))))r   r      fooc                     t          j        t          d          5  |                    t	          d          |           d d d            d S # 1 swxY w Y   d S )NzNo axis namedmatchabcr   )pytestraises
ValueErrorr   r   )r	   r   r   s      r
   test_set_axis_invalid_axis_namez2SharedSetAxisTests.test_set_axis_invalid_axis_named   s     ]:_=== 	1 	1LLe4L000	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1s   %AAAc                     d}t          j        t          |          5  d |_        d d d            d S # 1 swxY w Y   d S )NzNIndex\(\.\.\.\) must be called with a collection of some kind, None was passedr;   )r>   r?   	TypeErrorr   r	   r   msgs      r
   *test_set_axis_setattr_index_not_collectionz=SharedSetAxisTests.test_set_axis_setattr_index_not_collectionj   s    % 	 ]9C000 	 	CI	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   377c                    dt          |           dt          |          dz
   d}t          j        t          |          5  t	          j        t          |          dz
            |_        d d d            n# 1 swxY w Y   |j        dk    rKt          j        t          d          5  |j        d d d         |_        d d d            d S # 1 swxY w Y   d S d S )Nz#Length mismatch: Expected axis has z elements, new values have r   z	 elementsr;      zLength mismatch)	r   r>   r?   r@   nparanger   r/   columnsrD   s      r
   (test_set_axis_setattr_index_wrong_lengthz;SharedSetAxisTests.test_set_axis_setattr_index_wrong_lengths   sc   5#c(( 5 5"3xxz5 5 5 	 ]:S111 	0 	0	#c((Q,//CI	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 8q==z1BCCC / /!k##A#./ / / / / / / / / / / / / / / / / / =s$   *A88A<?A<)CCCN)__name__
__module____qualname__r>   fixturer   r   r5   r7   markparametrizerA   rF   rL    r   r
   r   r      s        ^? ? ^?* * *@ @ @D* * * [VaZ001 1 101
  / / / / /r   r   c                   .    e Zd Zej        d             ZdS )TestDataFrameSetAxisc                 @    t          g dg dg ddg d          }|S )N)g?g@gffffff
@)g      @gffffff@g@)g@g      @gffffff@)ABC)i  i  i  )r   )r   )r	   dfs     r
   r   zTestDataFrameSetAxis.obj   s?    !//oooNN$$$
 
 
 	r   NrM   rN   rO   r>   rP   r   rS   r   r
   rU   rU      s/        ^  ^  r   rU   c                   .    e Zd Zej        d             ZdS )TestSeriesSetAxisc                 R    t          t          j        d          g dd          }|S )N   )r   r8         int64)r   dtype)r   rI   rJ   )r	   sers     r
   r   zTestSeriesSetAxis.obj   s'    RYq\\WEEE
r   Nr[   rS   r   r
   r]   r]      s/        ^  ^  r   r]   )numpyrI   r>   pandasr   r   pandas._testing_testingr   r   rU   r]   rS   r   r
   <module>ri      s                     s/ s/ s/ s/ s/ s/ s/ s/l    -       *     r   