o
    ih                     @   sr   d dl Z d dlZd dlmZ d dlmZmZ ejdd Zdd Z	dd	 Z
dddZdddZdd Zdd ZdS )    N)assert_allclose)PairsRaggedc                  C   sZ   t jddd} t jg d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lengths r   M/home/ubuntu/.local/lib/python3.10/site-packages/thinc/tests/test_indexing.pyragged   s   
r   c                  C   s   t jddd} t jg d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 d S )N)r   r   r   r   r   r   r
   r   )r   r   r   r   r   r   r   )r   r   r   r   r   r   test_ragged_empty   s   
r   c                 C   s<   |   }|  }t|g dksJ t|g dksJ d S )N)r   r            )r   r   r   r      )_get_starts	_get_endslist)r   startsendsr   r   r   test_ragged_starts_ends!   s   r"   r   c                 C   s<   | | }t |j| jdd  t |j| j||d   d S )Nr   r   r   )r   r   r   )r   r   rr   r   r   test_ragged_simple_index(   s   r$   r
   c                 C   sT   | || }| j ||  }|jj||jjd fksJ t|j | j ||  d S )Nr   )r   sumr   shaper   )r   startendr#   sizer   r   r   test_ragged_slice_index.   s   r*   c                 C   s<   t jg ddd}| | }|jjd | j|  ksJ d S )N)r
   r   r   r   r   r   )r   r   r   r&   r   r%   )r   arrr#   r   r   r   test_ragged_array_index5   s   "r,   c                  C   s   t jddd} t jddd}t| |}|d d jjdksJ |d jjdks)J |d	d  jjd
ks5J |d	d  jjdksAJ d S )N)   -   r   r   )r-      r
   )r
   r.   r   )r/   )r   r.   )r   r/   )r   r   r   oner&   two)r1   r2   pairsr   r   r   test_pairs_arrays;   s   
r4   )r   )r   r
   )r   pytestnumpy.testingr   thinc.typesr   r   fixturer   r   r"   r$   r*   r,   r4   r   r   r   r   <module>   s    


