o
    _~#g]                     @   sh   d dl Zd dlZd dlZd dlmZmZ d dlmZ	 dd Z
dd Zdd Zd	d
 Zdd Zdd ZdS )    N)	DataFrame
MultiIndexc                 C   s   |   }| j}t|| d S )N)to_numpyvaluestmassert_numpy_array_equal)idxresultexp r   /var/www/static.ux5.de/https/Moving-Object-Detection-with-OpenCV/env/lib/python3.10/site-packages/pandas/tests/indexes/multi/test_conversion.pytest_to_numpy   s   r   c                  C   s  g d} t | }|jdd}t| }t|| | }||_t|| g d} t j| ddgd}|jdd}t| }ddg|_t|| | }||_t|| t | }|jdddgd}t| }ddg|_t|| |jddgd}||_ddg|_t|| d	}tj	t
|d
 |jdd W d    n1 sw   Y  d}tj	t|d
 |jdgd W d    n1 sw   Y  t tdtjdddg}|jdd}tttjddddttjddddd}t|| | }||_t|| |jdddgd}tttjddddttjddddd}t|| |jddgd}||_t|| d S )N))   one)r   two)   r   )r   r   Findexfirstsecondnames)r   name)r   z1'name' must be a list / sequence of column names.matchz<'name' should have same length as number of levels on index.   20130101   )periodsint64)dtype)r   r   )r   r   )r   from_tuplesto_framer   r   assert_frame_equalr   columnspytestraises	TypeError
ValueErrorfrom_productrangepd
date_rangenprepeatarangetile)tuplesr   r	   expectedmsgr   r   r   test_to_frame   sn   




r4   c                     s   t jtjddddg dtjg dddg d	gg d
d  fddt jD } ttjddddg dtjg dddg d	d
} jdd}|j	
 }t|| | |ks[J d S )N19910905   z
US/Eastern)r   tz)r   r   r   r   r   r   )ar8   br9   cr:   T)ordered)xr<   yzr<   r=   )datesr8   r9   r:   r   c                    s   i | ]\}}| j | jqS r   )levelsr    ).0ir   mir   r   
<dictcomp>f   s    z0test_to_frame_dtype_fidelity.<locals>.<dictcomp>Fr   )r   from_arraysr+   r,   Categorical	enumerater   r   r"   dtypesto_dictr   r#   )original_dtypesexpected_dfdf	df_dtypesr   rC   r   test_to_frame_dtype_fidelity[   s(   	
rO   c                  C   sF   g d} t jg dg dg dg| d}| j }|| ks!J d S )N)r>   r   r8   )r8   r9   r:   )r<   r=   r>   )qwer   )r   rF   r"   r$   tolist)r2   rD   r	   r   r   r   $test_to_frame_resulting_column_orderw   s   rT   c                  C   s   ddg} ddg}t j| |d}tjtdd |  W d    n1 s%w   Y  |jdd}t| ||d	}t|| d d
g}t j| |d}tjtdd |  W d    n1 s^w   Y  |jdd}t| |d
d
gd	}t|| d S )N)r   r   )r      r8   r   z%Cannot create duplicate column labelsr   T)allow_duplicates)r   r$   r   )	r   r!   r%   r&   r(   r"   r   r   r#   )datar   r   r	   r2   r   r   r   test_to_frame_duplicate_labels   s"   

rX   c                 C   s&   t jddd}|  }t|| d S )N))foor   )rY   r   )barr   )bazr   )quxr   )r\   r   F)tupleize_cols)r+   Indexto_flat_indexr   assert_index_equal)r   r2   r	   r   r   r   test_to_flat_index   s   ra   )numpyr-   r%   pandasr+   r   r   pandas._testing_testingr   r   r4   rO   rT   rX   ra   r   r   r   r   <module>   s    I
