
    1-Ph                        d dl mZ d dlZd dlZd dlmZ d dlmZ d dl	m
Z
 d dlmZmZ dZ ej        d	          d
             Zed             Zd Zej                            e d          d             Zej                            e d          d             Zej                            e d          d             Zej                            dej        dgfej        d ed          gfej        dgfej         e            fej         e            fej         e            fe edgfg          d             Z!dS )    )contextmanagerN)has_mpl)io)manage_plugins)fetchassert_stacklevelpilT)autousec               #   `   K   t          j        d           d V  t          j                     d S )Nr	   )r   
use_pluginreset_plugins     \/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/skimage/io/tests/test_plugin.py_use_pil_pluginr      s4      M%	EEEr   c               #      K   t           j                                        } 	 dV  | t           _        dS # | t           _        w xY w)zDContexts where `preferred_plugins` can be modified w/o side-effects.N)r   preferred_pluginscopy)r   s    r   protect_preferred_pluginsr      sN       '8==??=+<(((+<(<<<<s	   4 Ac                      t          j        t                    5  t          j        d           d d d            d S # 1 swxY w Y   d S )Nasd)pytestraises
ValueErrorr   r   r   r   r   test_failed_user      s    	z	"	" ) )!%((() ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )s   <A A zmatplotlib not installed)reasonc                  V   t          j        t                     t           j        d         d         \  } }t          j                            | t                     t          j        d           t           j        d         d         \  } }t          j                            | d           d S )Nimreadr   
matplotlib)r   r   priority_pluginplugin_storenptestingassert_equal)plugfuncs     r   test_use_priorityr'   $   s    o...,X6q9JD$JD/222l+++,X6q9JD$JD,/////r   c                  |   ddl m} m} t                      5  dgdgdt          _        t	          j                     dD ]3}t          j        |         d         \  }}|t          | |          k    sJ 4t          j        d         d         \  }}|t          |d          k    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr   
pil_pluginmatplotlib_pluginr	   r   )allimshow)r   imsaver-   )	skimage.io._pluginsr*   r+   r   r   r   r   r!   getattr)r*   r+   plugin_typer%   r&   s        r   test_load_preferred_plugins_allr2   /   s%   AAAAAAAA	"	$	$ < <497|n+U+U($&&&/ 	< 	<K'4[A!DJD$7:{;;;;;;;#0:1=
dw0(;;;;;;;< < < < < < < < < < < < < < < < < <s   BB11B58B5c                  f   ddl m} m} t                      5  dgt          j        d<   t	          j                     t          j        d         d         \  }}|| j        k    sJ t          j        d         d         \  }}||j	        k    sJ |j
                    	 d d d            d S # 1 swxY w Y   d S )Nr   r)   r	   r   r-   )r/   r*   r+   r   r   r   r   r!   r   r-   
__module__)r*   r+   r%   r&   s       r   "test_load_preferred_plugins_imreadr5   >   s   AAAAAAAA	"	$	$ A A6;W(2$&&&#0:1=
dz(((((#0:1=
d(////////A A A A A A A A A A A A A A A A A As   BB&&B*-B*)r&   argsimageior   zdata/camera.pngavailable_pluginsc                     d}t          j        t          |          5 } | |  d d d            n# 1 swxY w Y   t          |          dk    sJ t	          |d           d S )Nz0.*use `imageio` or other I/O packages directly.*)match   )offset)r   warnsFutureWarninglenr   )r&   r6   regexrecords       r   )test_deprecation_warnings_on_plugin_funcsrC   L   s     ?E	m5	1	1	1 Vd              v;;!fR((((((s   044)"
contextlibr   numpyr"   r   "skimage._shared._dependency_checksr   skimager   
skimage.ior   skimage._shared.testingr   r   r    fixturer   r   r   markskipifr'   r2   r5   parametrizer   call_pluginplugin_infoplugin_ordertupler   find_available_pluginsr0   rC   r   r   r   <module>rS      s,   % % % % % %      6 6 6 6 6 6       % % % % % % < < < < < < < <     = = =) ) )
 K(BCC0 0 DC0 K(BCC< < DC< K(BCC
A 
A DC
A 	$	(EE*;$<$<=>	)%	%%''"		5577#		"EEGG,	2*+, ) ) ) ) )r   