o
    _~#g6                     @   s   d dl Z d dlZd dlZd dlm  mZ d dlZejdd Z	ejdd Z
dd Zdd	 Zd
d Zdd Zdd Zeddd Zdd ZdS )    Nc                  C   s   t d} t| ddd  | S )Npandas_dummy_backendplotc                  _   s   dS )N
used_dummy )argskwargsr   r   /var/www/static.ux5.de/https/Moving-Object-Detection-with-OpenCV/env/lib/python3.10/site-packages/pandas/tests/plotting/test_backend.py<lambda>   s    zdummy_backend.<locals>.<lambda>)types
ModuleTypesetattr)dbr   r   r   dummy_backend   s   
r   c                   c   s:    t dd dV  W d   dS 1 sw   Y  dS )z*Restore the plotting backend to matplotlibplotting.backend
matplotlibN)pandasoption_contextr   r   r   r   restore_backend   s   "r   c                  C   sT   d} t jt| d tdd W d    n1 sw   Y  tjjjdks(J d S )Nz9Could not find plotting backend 'not_an_existing_module'.matchr   not_an_existing_moduler   )pytestraises
ValueErrorr   
set_optionoptionsplottingbackendmsgr   r   r   test_backend_is_not_module   s
   r    c                 C   sH   |  tjd| tdd tddksJ tjjd|u s"J d S )Nr   r   )	setitemsysmodulesr   r   
get_optionr   _core_get_plot_backend)monkeypatchr   r   r   r   r   test_backend_is_correct!   s   r(   c                 C   sH   |  tjd| tg d}tddksJ |jdddks"J d S )Nr            r   r   )r   r   )r!   r"   r#   r   	DataFramer$   r   r'   r   r   dfr   r   r   $test_backend_can_be_set_in_plot_call+   s   r0   c                 C   s   | | |tjd| |d }|  |d d tjj	d|u s'J t
dd tjj	 |u s8J W d    d S 1 sCw   Y  d S )Nr   zmy_backend-0.0.0.dist-infozentry_points.txts@   [pandas_plotting_backends]
my_ep_backend = pandas_dummy_backend
my_ep_backendr   )syspath_prependr!   r"   r#   mkdirwrite_bytesr   r   r%   r&   r   )r   tmp_pathr'   r   	dist_infor   r   r   test_register_entrypoint3   s   
"r7   c                 C   s|   t d}| tjd| tjjjdksJ t	j
tdd tdd W d    n1 s.w   Y  tjjjdks<J d S )Npandas_plot_backendr   z6Could not find plotting backend 'pandas_plot_backend'.r   r   )r
   r   r!   r"   r#   r   r   r   r   r   r   r   r   )r'   moduler   r   r   (test_setting_backend_without_plot_raisesE   s   
r:   r   c                  C   sF   d} t jt| d tjjd W d    d S 1 sw   Y  d S )NzVmatplotlib is required for plotting when the default backend "matplotlib" is selected.r   r   )r   r   ImportErrorr   r   r%   r&   r   r   r   r   test_no_matplotlib_okS   s
   "r<   c                 C   s>   |  tjd| tdd tdg di}|jdd d S )Nr   r   Ar)   znot a real kind)kind)r!   r"   r#   r   r   r-   r   r.   r   r   r   test_extra_kinds_ok]   s   r?   )r"   r
   r   pandas.util._test_decoratorsutil_test_decoratorstdr   fixturer   r   r    r(   r0   r7   r:   skip_if_installedr<   r?   r   r   r   r   <module>   s"    



	