
    ri
                     f   d Z ddlZddlZddlmZ ddlmZmZm	Z	 ddl
mZ ej                  j                  dg d      d        Zej                  j                  dg d      d	        Zd
 Zd Zej                  j                  dded   d   fded   d   fded   d   fg      d        Zd Zd Zy)z(Tests for dataframe detection functions.    N)dependent_packages)is_df_or_seriesis_pandas_dfis_polars_df)_convert_containerconstructor_name)pyarrow	dataframepolarsc                     t        g dg dg|       }t        |      sJ t        t        j                  g d            rJ y )N            r      r   r   r   )r   r   npasarrayr   dfs     `/var/www/auto_recruiter/arenv/lib/python3.12/site-packages/sklearn/utils/tests/test_dataframe.pytest_is_df_or_seriesr      s<    	Y	24D	EB2rzz)45555    c                 f    t        g dg dg|       }| dv rt        |      rJ y t        |      sJ y )Nr   r   )r	   r   )r   r   r   s     r   !test_is_pandas_df_other_librariesr      s<    	Y	24D	EB00####Br   c                      t        j                  d      } | j                  g dg      }t        |      sJ t        t	        j
                  g d            rJ t        d      rJ y)z8Check behavior of is_pandas_df when pandas is installed.pandasr   r   N)pytestimportorskip	DataFramer   r   r   )pdr   s     r   test_is_pandas_dfr$      sV    			X	&B	yk	"BBJJy1222Ar   c                 b    t        t        j                  g d            rJ t        d      rJ y)z0Check is_pandas_df when pandas is not installed.r   r   N)r   r   r   )hide_available_pandass    r   &test_is_pandas_df_pandas_not_installedr'   %   s*     BJJy1222Ar   zconstructor_name, minversionr	   r
   r   r   c                 j    t        g dg dg| |      }| dv rt        |      rJ y t        |      sJ y )Nr   r   )
minversion)r	   r
   )r   r   )r   r)   r   s      r   !test_is_polars_df_other_librariesr*   ,   sF     
	I
B
 33####Br   c                  @     G d d      }  |        }t        |      rJ y)z@Check is_polars_df for object that looks like a polars dataframec                       e Zd Zd Zy)Ntest_is_polars_df_for_duck_typed_polars_dataframe.<locals>.NotAPolarsDataFramec                 $    g d| _         d| _        y )Nr   	my_schemacolumnsschemaselfs    r   __init__zWtest_is_polars_df_for_duck_typed_polars_dataframe.<locals>.NotAPolarsDataFrame.__init__D   s    $DL%DKr   N__name__
__module____qualname__r5    r   r   NotAPolarsDataFramer-   C   s    	&r   r;   Nr   )r;   not_a_polars_dfs     r   1test_is_polars_df_for_duck_typed_polars_dataframer>   @   s'    & &
 *+OO,,,,r   c                  <     G d d      } t         |              rJ y)z?Check that is_polars_df return False for non-dataframe objects.c                       e Zd Zd Zy)*test_is_polars_df.<locals>.LooksLikePolarsc                 (    ddg| _         ddg| _        y )Nabr0   r3   s    r   r5   z3test_is_polars_df.<locals>.LooksLikePolars.__init__P   s    :DL*DKr   Nr6   r:   r   r   LooksLikePolarsrA   O   s    	%r   rE   Nr<   )rE   s    r   test_is_polars_dfrF   L   s"    % %
 O-....r   )__doc__numpyr   r    sklearn._min_dependenciesr   sklearn.utils._dataframer   r   r   sklearn.utils._testingr   markparametrizer   r   r$   r'   r*   r>   rF   r:   r   r   <module>rN      s    .   8 P P 5 +-OP6 Q6 +-OP  Q  "	&y1!45	(2156	%h/23	 	 	-/r   