
    -Sh                         d dl Zd dlZd dlZ eej                            d          d                    dk    Zej        	                    e d          Z
d Zd Zd Zd	 Zd
 Zd Zd Zd Zd Zd ZdS )    N.   zrequires numpy >=2.0)reasonc                    |                      ddd          }ddgddgg}||d d <   |                                d d          }t          j                            ||           | d         }|j        t          k    sJ t          j                            |                                d d          |           d	|d
<   d	|d         d<   |                    d          d d          }|j        j        dk    sJ t          j                            ||           t          j	        dd          |d
<   d|d         d<   t          j                            |                                d d          |           d S )Nx)r   r   Tshapedtypefoobarzhello world baz)r   r   r   123Or   )
create_datasetasstrnptestingassert_array_equalr   objectastypekindasarray)writable_filedsdataas       `/var/www/html/movieo_spanner_bot/venv/lib/python3.11/site-packages/h5py/tests/test_npystrings.pytest_create_with_dtype_Tr!   
   s\   		%	%cs	%	C	CBEN]B/0DBqqqE


111AJ!!!T***	s	B8vJ!!"((**QQQ-666BtHDGAJ
		#qqqA7<3J!!!T***z%s+++BtHDGAJJ!!"((**QQQ-66666    c                 $   ddgg}t          j        |d          }|                     d|d          }|                     d|t           j                                                  }|                     d|	          }|||fD ]O}|j        j        d
k    sJ t           j                            |	                    d          d d          |           PdD ]}| |         }|j        t          k    sJ t           j                            |                                d d          |           |	                    d          }|j        j        dk    sJ |d d          }|j        j        dk    sJ t           j                            ||           d S )Nr   r   r   r   r   r   r   yzr   r   )r   r%   r&   )r   r   r   dtypesStringDTyper   r   r   r   r   r   r   )	r   r   np_datar   r%   r&   r   namer   s	            r    test_fromdatar,       s   ENDjS)))G$$St3$??A$$St29;P;P;R;R$SSA$$Sw$77A!Qi B Bx}####

%%biinnQQQ&7AAAA / /4 x6!!!!

%%bhhjjmT:::YYs^^x}####qqqEw|s""""

%%a..../ /r"   c                    ddg}|                      d|t          j        d                    }|j        dk    sJ |                    d          }|j        j        dk    sJ |d d          j        j        dk    sJ t          j                            |d d          |           t          j	        d	d
          |d<   d	|d<   t          j                            |d d          |           d S )Nr   longer than 8 bytesr      lengthr$   S20r   1234r   r   )
r   h5pystring_dtyper   r   r   r   r   r   r   )r   r   r   r%   s       r    test_fixed_to_variable_widthr6   5   s    ()D$$$d/r::: 	% 	 	A 7e 	
A7<3QQQ4:?c!!!!J!!!AAA$--- :fC(((AaDDGJ!!!AAA$-----r"   c                    ddg}|                      d|t          j        d                    }|j        dk    sJ t	          j        dd	
          |d<   t          j                            |d d          ddg           d S )Nr   r   r      r0   r$   S3r3   r   r   r   s   123s   bar)r   r4   r5   r   r   r   r   r   r   r   r   s      r    &test_fixed_to_variable_width_too_shortr;   H   s     5>D$$$d/q999 	% 	 	A 7d???? :fC(((AaDJ!!!AAA$(899999r"   c                 R   ddg}ddg}|                      d|d          }|                    d          }|j        dk    sJ |d d          j        dk    sJ t          j                            |d d          |           |                    d	          }|j        d	k    sJ |d d          j        d	k    sJ t          j                            |d d          dd
g           t          j        dd          |d<   d|d<   t          j                            |d d          |           d S )Nr   r.      foos   longer than 8 bytesr   r   r$   r2   r9   s   lon   1234S5r   r   )r   r   r   r   r   r   r   )r   r   bdatar   r%   s        r    test_variable_to_fixed_widthrA   V   s8   ()D+,E$$St3$??A 	
A7eQQQ4:J!!!AAA$...	A7d????QQQ4:J!!!AAA$(8999 :gT***AaDE!HJ!!!AAA$.....r"   c                     |                      ddgd          }t          j        dd          |d<   t          j                            |d d          d	           d S )
Nr   r   r   r$   r3   r   r   r   r>   )r   r   r   r   r   r   r   s     r    !test_write_object_into_npystringsrD   l   s\    $$Swc$BBA:fC(((AaDJ!!!AAA$00000r"   c                    |                      ddgt          j                              }|j        t          k    sJ t          j        dd          |d<   t
          j                            |d d          d           |                      d	d
t          j        d                    }t          j        dd          |d<   t
          j                            |d d          d           d S )Nr   r   r$   r3   r   r   r   r>   xa)   asciir	   2345s   2345)	r   r4   r5   r   r   r   r   r   r   )r   r   rF   s      r    !test_write_npystrings_into_objectrJ   r   s    $$5'!2!4!4 	% 	 	A 7f:fC(((AaDJ!!!AAA$000 
	%	%D 1' : : 
& 
 
B JvS)))BqEJ!!"QQQ%11111r"   c                    |                      dddd          }t          |j        t                    sJ |j        dk    sJ |d         dk    sJ |                      ddt	          j                    d          }t          |j        t                    sJ |j        dk    sJ |d         dk    sJ |                    d          }|d         dk    sJ d S )	Nr   r   r   r   )r
   r   	fillvaluer=   r   r%   )r   
isinstancerM   bytesr4   r5   r   )r   r   r%   s      r    test_fillvaluerP      s    $$SC5$QQAak5)))));&    Q46>>>> 	$$4t022f 	% 	 	A ak5)))));&    Q46>>>>	AQ45======r"   c                 (   t          j        g dd          }|                     d|          }t           j                            |d d          g d           t           j                            |                    d          d d          |           ddg|d d	<   |d d	         |d d	<   t           j                            |d d          g d
           t           j                            |                    d          d d          |           d S )N)r   r   br   r   r   r'   )r"      a   bcr   r   )   cr"   rT   )r   arrayr   r   r   r   r:   s      r    test_empty_stringrX      s   8NNN#...D$$St$44AJ!!!AAA$(9(9(9:::J!!!((3--"2D999RyD!H!HAbqbEJ!!!AAA$(9(9(9:::J!!!((3--"2D99999r"   c                     |                      ddd          }t          j        t          d          5  |                    d           d d d            d S # 1 swxY w Y   d S )Nr   rL   i8r	   zHDF5 string datatype)matchr   )r   pytestraises	TypeErrorr   rC   s     r    test_astype_nonstringr_      s    $$ST$BBA	y(>	?	?	?  	                 s   AAA)numpyr   r\   r4   int__version__split	NUMPY_GE2markskipif
pytestmarkr!   r,   r6   r;   rA   rD   rJ   rP   rX   r_    r"   r    <module>ri      s	        C$$S))!,--2	[I6LMM
7 7 7,/ / /*. . .&: : :/ / /,1 1 12 2 2   &: : :    r"   