o
    
i
                     @   s   d dl m Z  d dlmZmZ eZdd Zdd Zdd Zd	d
 Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd  Zd!S )"    )array)packbunpackbc                 C   s   t | }|| |S N)r   	frombytes)fdataa r
   W/home/ubuntu/.local/lib/python3.10/site-packages/srsly/tests/msgpack/test_memoryview.py
make_array   s   
r   c                 C   s   |   S r   )tobytes)r	   r
   r
   r   get_data   s   r   c                 C   s   t | }|dg||j   t|}t|}t||d}t|}	t| |	}
t||ks.J |d d |ks8J |ddt|  |ksFJ |dt| d  |ksTJ ||
ksZJ d S )N   )use_bin_type   )	r   fromlistitemsizer   make_memoryviewr   r   r   len)formatnbytesexpected_headerexpected_prefixr   original_arrayoriginal_dataviewpackedunpackedreconstructed_arrayr
   r
   r   _runtest   s   
r    c                   C   $   t ddddd t ddddd d S )NBr          F      r    r
   r
   r
   r   test_fixstr_from_byte*      r(   c                   C   r!   )Nr         r$   F      r'   r
   r
   r
   r   test_fixstr_from_float/   r)   r.   c                   C   $   t ddddd t ddddd d S )Nr"             F     r'   r
   r
   r
   r   test_str16_from_byte4   r)   r5   c                   C   r/   )Nr   r0   r1   r2   F     r'   r
   r
   r
   r   test_str16_from_float9   r)   r8   c                   C      t ddddd d S )Nr"               Fr'   r
   r
   r
   r   test_str32_from_byte>      r=   c                   C   r9   )Nr   r:   r;   r<   Fr'   r
   r
   r
   r   test_str32_from_floatB   r>   r?   c                   C   r/   )Nr"   r         Tr      r'   r
   r
   r
   r   test_bin8_from_byteF   r)   rC   c                   C   r/   )Nr   r*   r@      T      r'   r
   r
   r
   r   test_bin8_from_floatK   r)   rG   c                   C   r/   )Nr"   r0      r2   Tr3   r4   r'   r
   r
   r
   r   test_bin16_from_byteP   r)   rI   c                   C   r/   )Nr   r0   rH   r2   Tr6   r7   r'   r
   r
   r
   r   test_bin16_from_floatU   r)   rJ   c                   C   r9   )Nr"   r:      r<   Tr'   r
   r
   r
   r   test_bin32_from_byteZ   r>   rL   c                   C   r9   )Nr   r:   rK   r<   Tr'   r
   r
   r
   r   test_bin32_from_float^   r>   rM   N)r   srsly.msgpackr   r   
memoryviewr   r   r   r    r(   r.   r5   r8   r=   r?   rC   rG   rI   rJ   rL   rM   r
   r
   r
   r   <module>   s$    