o
    ?Hh                     @   s   d dl Z d dlmZ d dlZd dlmZmZ edG dd dZG dd dZG d	d
 d
Z	G dd dZ
G dd deZedG dd dZe dd Zdd Zdd Zdd Zdd ZdS )    N)	signature)_is_deprecated
deprecatedqwertyc                   @      e Zd ZdS )
MockClass1N__name__
__module____qualname__ r   r   d/home/air/sanwanet/gpt-api/venv/lib/python3.10/site-packages/sklearn/utils/tests/test_deprecation.pyr      s    r   c                   @   s0   e Zd Zeddd Zededd ZdS )
MockClass2mockclass2_methodc                 C      d S Nr   selfr   r   r   method      zMockClass2.methodzn_features_ is deprecatedc                 C      dS )zNumber of input features.
   r   r   r   r   r   n_features_   s   zMockClass2.n_features_N)r	   r
   r   r   r   propertyr   r   r   r   r   r      s    
r   c                   @   s   e Zd Ze dd ZdS )
MockClass3c                 C   r   r   r   r   r   r   r   __init__   r   zMockClass3.__init__N)r	   r
   r   r   r   r   r   r   r   r      s    r   c                   @   r   )
MockClass4Nr   r   r   r   r   r   $   s    r   c                   @   s   e Zd ZdZdd ZdS )
MockClass5zAInherit from deprecated class but does not call super().__init__.c                 C   s
   || _ d S r   )a)r   r   r   r   r   r   +   s   
zMockClass5.__init__N)r	   r
   r   __doc__r   r   r   r   r   r   (   s    r   	a messagec                       s    e Zd ZdZ fddZ  ZS )
MockClass6z*A deprecated class that overrides __new__.c                    s   t |dksJ t | S )Nr   )lensuper__new__)clsargskwargs	__class__r   r   r$   3   s   zMockClass6.__new__)r	   r
   r   r   r$   __classcell__r   r   r(   r   r!   /   s    r!   c                   C   r   )Nr   r   r   r   r   r   mock_function8   r   r+   c                  C   sP  t jtdd t  W d    n1 sw   Y  t jtdd t   W d    n1 s1w   Y  t jtdd t  W d    n1 sKw   Y  t jtdd td W d    n1 sfw   Y  t jtdd td W d    n1 sw   Y  t jtdd t	 } W d    n1 sw   Y  | dksJ d S )Nr   )matchr   r   *   r    r   )
pytestwarnsFutureWarningr   r   r   r   r   r!   r+   )valr   r   r   test_deprecated=   s&   

r2   c                   C   sX   t tjsJ t t jsJ t tjsJ t tjrJ t tjs$J t t	s*J d S r   )
r   r   r$   r   r   r   r   r   r   r+   r   r   r   r   test_is_deprecatedM   s   r3   c                   C   s   t t t d S r   )pickleloadsdumpsr+   r   r   r   r   test_pickleX   s   r7   c                  C   s6   t  G dd d} tt| j g dksJ d S )Nc                   @   s   e Zd ZdddZdS )z2test_deprecated_class_signature.<locals>.MockClass      c                 S   r   r   r   )r   r   bcr   r   r   r   _   s   z;test_deprecated_class_signature.<locals>.MockClass.__init__N)r8   r9   )r	   r
   r   r   r   r   r   r   	MockClass]   s    r<   )r   r:   r;   )r   listr   
parameterskeys)r<   r   r   r   test_deprecated_class_signature\   s   "r@   )r4   inspectr   r.   sklearn.utils.deprecationr   r   r   r   r   r   r   r!   r+   r2   r3   r7   r@   r   r   r   r   <module>   s$   
