
    bMhW                     X    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 Z	d Z
d Zd Zd ZdS )    N)VERSIONSimport_optional_dependencyc                      d} t          j        t          |           5 }t          d           d d d            n# 1 swxY w Y   t	          |j        j        t                    sJ t          dd          }|J d S )Nz3Missing .*notapackage.* pip .* conda .* notapackagematchnotapackageignoreerrors)pytestraisesImportErrorr   
isinstancevalue__context__)r   exc_inforesults      e/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/test_optional_dependency.pytest_import_optionalr      s    AE	{%	0	0	0 2H"=1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 hn0+>>>>>'hGGGF>>>>>s   :>>c                  L    t          j        d           t          d           d S )Nxlrd)r   importorskipr        r   test_xlrd_version_fallbackr      s'    
v&&&&&r   c                 R   d}t          j        |          }d|_        |t          j        |<   |                     t          |d           d}t          j        t          |          5  t          d           d d d            n# 1 swxY w Y   t          dd          }||u sJ t          j        t                    5  t          dd	          }d d d            n# 1 swxY w Y   |J d|_        t          d          }||u sJ t          j        t          d
          5  t          dd           d d d            n# 1 swxY w Y   t          j        t                    5  t          ddd          }d d d            n# 1 swxY w Y   |J t          ddd          }|J d S )N
fakemodule0.9.01.0.01Pandas requires .*1.0.0.* of .fakemodule.*'0.9.0'r   z0.8)min_versionwarnr
   zPandas requires version '1.1.0'z1.1.0)r   r!   r	   )types
ModuleType__version__sysmodulessetitemr   r   r   r   r   tmassert_produces_warningUserWarning)monkeypatchnamemoduler   r   s        r   test_bad_versionr/      s   Dd##F FCK$000?E	{%	0	0	0 1 1"<0001 1 1 1 1 1 1 1 1 1 1 1 1 1 1 (%HHHFV		#K	0	0 I I+LHHHI I I I I I I I I I I I I I I>>> F'55FV	{*K	L	L	L F F"<WEEEEF F F F F F F F F F F F F F F 
	#K	0	0 
 
+W
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 >>>'X7  F >>>>>sH   &BB	B=CC"C!D??EE#FF	Fc                 X   d}t          j        |          }d|_        |t          j        |<   d}t          j        |          }t          |||           |t          j        | d| <   |                     t          |d           d}t          j	        t          |          5  t          d           d d d            n# 1 swxY w Y   t          j        t                    5  t          dd	
          }d d d            n# 1 swxY w Y   |J d|_        t          d          }||u sJ d S )Nr   r   	submodule.r   r    r   zfakemodule.submoduler"   r
   )r#   r$   r%   r&   r'   setattrr(   r   r   r   r   r   r)   r*   r+   )r,   r-   r.   sub_namer1   r   r   s          r   test_submoduler5   D   s   Dd##F FCKH **IFHi((((1CK4$$($$%$000?E	{%	0	0	0 ; ;"#9:::; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 
	#K	0	0 S S+,B6RRRS S S S S S S S S S S S S S S>>> F'(>??FYs$   !B==CC!C??DDc                    d}t          j        |          }|t          j        |<   |                     t
          |d           t          j        t          d          5  t          |           d d d            d S # 1 swxY w Y   d S )Nr   r   zCan't determine .* fakemoduler   )
r#   r$   r&   r'   r(   r   r   r   r   r   )r,   r-   r.   s      r   test_no_version_raisesr7   ]   s    Dd##FCK$000	{*I	J	J	J ) )"4((() ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )s   A::A>A>)r&   r#   r   pandas.compat._optionalr   r   pandas._testing_testingr)   r   r   r/   r5   r7   r   r   r   <module>r;      s    



         
        ' ' '
# # #L  2) ) ) ) )r   