
    >[gr                        d dl Zd dlZd dlmZmZ d dlmZmZm	Z	m
Z
mZ  e ej                               Zd Zej                   j#                  d e	d ddd       e	d ddd       e	d ddd       e	d ddd       e	ej$                   ej$                  dd       e	ej$                   ej$                  dd       e	ej$                   ej$                  dd       e	ej$                   ej$                  dd       e	d	d
dd       e	d	d
dd       e	d	d
dd       e	d	d
dd      g      d        Zej                   j#                  de      d        Zej                   j#                  de      d        Zy)    N)assert_allcloseassert_array_equal)_LINKSHalfLogitLinkIntervalMultinomialLogit_inclusive_low_highc                      t        j                  t        d      5  t        dddd       ddd       y# 1 sw Y   yxY w)z5Test that interval with low > high raises ValueError.z-One must have low <= high; got low=1, high=0.)match   r   FN)pytestraises
ValueErrorr        X/var/www/html/bid-api/venv/lib/python3.12/site-packages/sklearn/_loss/tests/test_link.pytest_interval_raisesr      s4    	I
 	Aue$
 
 
s   4=intervalr   FTc                    t        |       \  }}t        j                  ||d      }| j                  |      sJ | j                  t        j                  || j
                  f         | j                  k(  sJ | j                  t        j                  || j                  f         | j                  k(  sJ | j                  t        j                  || j
                  | j                  f         | j                  xr | j                  k(  sJ y )N
   )num)	r	   nplinspaceincludesr_lowlow_inclusivehighhigh_inclusive)r   r   r    xs       r   test_is_in_ranger#      s    & $H-IC
C2&AQ RUU1hll?348N8NNNN RUU1hmm#3459P9PPPP RUU1hllHMM#ABC:8#:#:  r   linkc                 "   t         j                  j                  |      } |        } d\  }}| j                  r:d}|j	                  dd||f      }t        | t              rK| j                  |      }n9t        | t              r|j	                  dd|      }n|j	                  dd|      }t        | j                  | j                  |            |       | j                  |      }t        | j                  | j                  |            |       y )Nd   Nr   i   r   r    sizer   )r   randomRandomStateis_multiclassuniform
isinstancer   symmetrize_raw_predictionr   r   r$   inverse)r$   global_random_seedrng	n_samples	n_classesraw_predictiony_preds          r   test_link_inverse_identityr8   <   s     ))

 2
3C6D$Iy 	2Y	<RSd,-!;;NKN	D-	(2YH2YHDIIdll>:;^L\\.)FDLL6!23V<r   c                    t         j                  j                  d      } |        } d\  }}| j                  r:d}|j	                  dd||f      }t        | t              r&| j                  |      }n|j                  dd|      }| j                  |d       }t        j                  |      }| j                  ||      }t        ||       t        ||       t        j                  ||      sJ t        j                  |      }| j                  ||      }t        ||       t        ||       t        j                  ||      sJ y )	N*   r&   r   r   )locscaler*   r   r)   )out)r   r+   r,   r-   normalr/   r   r0   r.   r1   
empty_liker   r   shares_memoryr$   )	r$   r3   r4   r5   r6   r7   r=   y_pred_2raw_prediction_2s	            r   test_link_out_argumentrC   T   s*    ))


#C6D$Iy	9i:PQd,-!;;NKN 2YH\\.d\3F
--
'C||N|4HFC sH%C***
--
CyySy1NC(s,-C!1222r   )numpyr   r   numpy.testingr   r   sklearn._loss.linkr   r   r   r   r	   listvaluesLINK_FUNCTIONSr   markparametrizeinfr#   r8   rC   r   r   r   <module>rM      sv     =  mfmmo&% Aue$Aud#AtU#AtT""&&"&&%/"&&"&&%."&&"&&$."&&"&&$-b%'b%&b$&b$%"#"& 0= 1=. 03 13r   