
    Q3j                         d dl Zd dlZd dlmZ ej
                  j                  dej                  ej                  g      d        Z	y)    N)_py_swap_array_slicesdtypec                    d }t         j                  j                  |      }t        d      D ]  }|j	                  dd      }|j                  |      j                  |       }|j	                  d|      }|j	                  d||z
        }|j	                  ||z   |      }	 ||||	|      }
t        |||	|       t         j                  j                  ||
        d}d}|j	                  d||z
        }t        j                  ||       }|j                         }
t        ||||z   |       t         j                  j                  ||
       t        |||d       t         j                  j                  ||
       y )	Nc                 r    | j                         } t        j                  | ||z   | | |||z    g      | || | S )z
        Swaps the two slices array[start:start + n] and
        array[start + n:end] while preserving the order in the slices.
        )copynpconcatenate)arrstartendns       I/DATA/.local/lib/python3.12/site-packages/sklearn/tree/tests/test_swap.pyswap_slices_npz8test_py_swap_array_slices_random.<locals>.swap_slices_np	   sD    
 hhjUQY)=s55ST9?U(VWE#
          e   r      
   )r   )r   randomdefault_rngrangeintegerspermutationastyper   testingassert_array_equalaranger   )r   global_random_seedr   rng_sizer
   r   r   r   expecteds              r    test_py_swap_array_slices_randomr$      sB    ))

 2
3C2Y||As#ood#**51LLD!Qq)ll519d+!#uc15c5#q1


%%c84  D
ALLD1H%E
))D
&CxxzH#ueai3JJ!!#x0#udA.JJ!!#x0r   )
numpyr   pytestsklearn.tree._partitionerr   markparametrizefloat32intpr$    r   r   <module>r-      s@      ; 2::rww"78#1 9#1r   