
    ih                     |    d dl Z d dlZd dlmZ d dlmZmZ ej                  d        Zd Z	d Z
ddZddZd	 Zd
 Zy)    N)assert_allclose)PairsRaggedc                      t        j                  dd      } t        j                  g dd      }d| d<   d| d<   d| d<   d	| d	<   d
| d
<   d| d<   t        | |      S )N)      fdtype)r            r   ir   r   r      r      )numpyzerosarrayr   )datalengthss     j/var/www/vps2.regionflexible.com/Desarrollo/venv/lib/python3.12/site-packages/thinc/tests/test_indexing.pyraggedr      se    ;;wc*Dkk/5GDGDGDGDGDGDG$      c                     t        j                  dd      } t        j                  g d      }t        | |      }t	        |dd j
                  |j
                         t	        |dd j                  |j                         t	        |dd j
                  |j
                         t	        |dd j                  |j                         t	        |dd j
                  |j
                         t	        |dd j                  |j                         y )N)r   r   r	   r
   r   r   r   r   )r   r   r   r   r   r   r   )r   r   r   s      r   test_ragged_emptyr      s    ;;vS)Dkk"C(GD'"FF1QK$$fkk2F1QK''8F1QK$$fkk2F1QK''8F1QK$$fkk2F1QK''8r   c                     | j                         }| j                         }t        |      g dk(  sJ t        |      g dk(  sJ y )N)r   r            )r   r   r   r      )_get_starts	_get_endslist)r   startsendss      r   test_ragged_starts_endsr&   !   sD    !FD<,,,,:++++r   c                     | |   }t        |j                  | j                  dd        t        |j                  | j                  ||dz           y )Nr   r   r   )r   r   r   )r   r   rs      r   test_ragged_simple_indexr)   (   sA    q	AAFFFKK!,-AIIv~~a!a%89r   c                     | || }| j                   || j                         }|j                  j                  ||j                  j                  d   fk(  sJ t	        |j                   | j                   ||        y )Nr   )r   sumr   shaper   )r   startendr(   sizes        r   test_ragged_slice_indexr0   .   sg    uSA>>%$((*D66<<D!&&,,q/2222AIIv~~eC89r   c                     t        j                  g dd      }| |   }|j                  j                  d   | j                  |   j                         k(  sJ y )N)r   r   r   r   r
   r   )r   r   r   r,   r   r+   )r   arrr(   s      r   test_ragged_array_indexr3   5   sG    
++is
+CsA66<<?fnnS1557777r   c                  h   t        j                  dd      } t        j                  dd      }t        | |      }|d d j                  j                  dk(  sJ |d   j
                  j                  dk(  sJ |d	d  j                  j                  d
k(  sJ |d	d  j
                  j                  dk(  sJ y )N)   -   r	   r
   )r5      r   )r   r6   r   )r7   )r   r6   )r   r7   )r   r   r   oner,   two)r9   r:   pairss      r   test_pairs_arraysr<   ;   s    
++is
+C
++is
+C#sOE!9==')))8<<&&&:>>7***:>>7***r   )r   )r   r   )r   pytestnumpy.testingr   thinc.typesr   r   fixturer   r   r&   r)   r0   r3   r<    r   r   <module>rB      sG      ) % 	! 	!	9,::8+r   