o
    _~#g-                     @   sV   d dl mZ d dlZd dlZd dlZd dlmZmZm	Z	 d dl
mZ G dd dZdS )    )methodcallerN)
MultiIndexSeries
date_rangec                   @   s   e Zd Zejdddgdd Zdd Zdd	 Zd
d Z	ejde
jejddgdd Zejde
jejgdd Zejdddgdd Zejdg ddd Zdd Zdd ZdS )
TestSeriesfuncrename_axis_set_axis_namec                 C   s   t g dtjdd dD ddgdd}t|d	d
g|}|jjd u s%J |jjddgks/J |jjd u s7J |jjsAJ d	d
gd S )N)         c                 S   s   g | ]}d |fqS )A ).0xr   r   /var/www/static.ux5.de/https/Moving-Object-Detection-with-OpenCV/env/lib/python3.10/site-packages/pandas/tests/generic/test_series.py
<listcomp>   s    z4TestSeries.test_set_axis_name_mi.<locals>.<listcomp>)aBcl1l2)names)indexL1L2)r   r   from_tuplesr   r   namer   )selfr   serresultr   r   r   test_set_axis_name_mi   s   z TestSeries.test_set_axis_name_mic                 C   sP   t dg}d}tjt|d |jddd W d    d S 1 s!w   Y  d S )N   z&No axis named 1 for object type Seriesmatchr   )r   axis)r   pytestraises
ValueErrorr	   )r   r   msgr   r   r   test_set_axis_name_raises   s
   
"z$TestSeries.test_set_axis_name_raisesc                 C   s$   t g d}| }t|| d S )N)TFT)r   _get_bool_datatmassert_series_equal)r   r   r    r   r   r   !test_get_bool_data_preserve_dtype%   s   z,TestSeries.test_get_bool_data_preserve_dtypec                 C   s   d}t dg}t dg}tjt|d | sJ W d    n1 s$w   Y  tjt|d | r7J W d    d S 1 sBw   Y  d S )NMSeries.bool is now deprecated and will be removed in future version of pandasTFr#   )r   r,   assert_produces_warningFutureWarningbool)r   msg_warnr   ser1r   r   r   test_nonzero_single_element*   s   

"z&TestSeries.test_nonzero_single_elementdataTFc                 C   sJ   t |g}d}tjt|d t| W d    d S 1 sw   Y  d S )N(The truth value of a Series is ambiguousr#   )r   r&   r'   r(   r2   )r   r6   seriesr)   r   r   r   #test_nonzero_single_element_raise_17   s
   

"z.TestSeries.test_nonzero_single_element_raise_1c              	   C   s   d}d}t |g}tjt|d, tjt|d |  W d    n1 s'w   Y  W d    d S W d    d S 1 s?w   Y  d S )Nr/   6bool cannot act on a non-boolean single element Seriesr#   )r   r,   r0   r1   r&   r'   r(   r2   r   r6   r3   msg_errr8   r   r   r   #test_nonzero_single_element_raise_2@   s   

"z.TestSeries.test_nonzero_single_element_raise_2)TT)FFc              	   C   s   d}d}t |g}tjt|d t| W d    n1 sw   Y  tjt|d, tjt|d |  W d    n1 sBw   Y  W d    d S W d    d S 1 sZw   Y  d S )Nr/   r7   r#   r   r&   r'   r(   r2   r,   r0   r1   r;   r   r   r   #test_nonzero_multiple_element_raiseL   s   


"z.TestSeries.test_nonzero_multiple_element_raise)r"   r   r   g        c              	   C   s   d}d}d}t |g}tjt|d t| W d    n1 s!w   Y  tjt|d, tjt|d |  W d    n1 sDw   Y  W d    d S W d    d S 1 s\w   Y  d S )Nr/   r7   r:   r#   r>   )r   r6   r3   msg_err1msg_err2r8   r   r   r   !test_nonbool_single_element_raise[   s   


"z,TestSeries.test_nonbool_single_element_raisec                 C   s~   t tjddtdddddd}|d }t|| |d	 }t|| |d
d	d
 }t|| d S )N   i  20130101s)periodsfreqfoo)r   r   1minc                 S   s   |   S N)sum)r   r   r   r   <lambda>x   s    zETestSeries.test_metadata_propagation_indiv_resample.<locals>.<lambda>)r   nprandomdefault_rngr   resamplemeanr,   assert_metadata_equivalentminapply)r   tsr    r   r   r   (test_metadata_propagation_indiv_resamplek   s   z3TestSeries.test_metadata_propagation_indiv_resamplec                 C   s   t tdtd}d|_t tdtd}d|_|j}t|| ddd}| 4}|t dddg |t d	| d|_d|_t	
||g}|jd
ksOJ |jd u sVJ W d    d S 1 saw   Y  d S )N   rH   barc              	      s`   | j D ]* |dkr" dkr"d fdd|jD }t|  | qt|  t| d  q| S )Nconcatfilename+c                    s"   g | ]}t | d rt | qS rJ   )getattr)r   objr   r   r   r      s    
zPTestSeries.test_metadata_propagation_indiv.<locals>.finalize.<locals>.<listcomp>)	_metadatajoinobjsobject__setattr__r\   )r   othermethodkwargsvaluer   r^   r   finalize   s   

z<TestSeries.test_metadata_propagation_indiv.<locals>.finalizer_   r   rZ   __finalize__zfoo+barrJ   )r   ranger   Tr,   rR   contextsetattrrZ   pdrY   )r   monkeypatchr   ser2r    rh   mr   r   r   test_metadata_propagation_indiv{   s    

"z*TestSeries.test_metadata_propagation_indivN)__name__
__module____qualname__r&   markparametrizer!   r*   r.   r5   rM   nanrn   NaTr9   r=   r?   rB   rV   rr   r   r   r   r   r      s     




r   )operatorr   numpyrM   r&   pandasrn   r   r   r   pandas._testing_testingr,   r   r   r   r   r   <module>   s    