
    ٔ j                         d Z ddlmZmZ ddlZddlmZ ddlm	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dZdS )zGThese tests are based on the doctests from `numpy/lib/recfunctions.py`.    )Anyassert_typeN)recfunctionsreturnc                  b   t          j        ddgdt           j        fdt           j        fg          } t          j        d| j                  }t          j        | |          }t          |t           j	        t          t                   t           j        t           j                 f                    d S )N)   g      $@)   g      4@ABdtype   )nparrayint64float64zerosr   rfnrecursive_fill_fieldsr   ndarraytupleintvoid)abouts      }C:\Users\Terasoftware\OneDrive\Desktop\faahhh\fyndo\fyndo\venv\Lib\site-packages\numpy/typing/tests/data/pass/recfunctions.pytest_recursive_fill_fieldsr   
   s     h	IRXbj 12  A 	QW%%%A

#Aq
)
)CRZc
BHRW,= =>?????    c                  p   t          j        t          j        ddt          fg          j                  } t          j        t          j        ddt          fdt          fg          j                  } t          j        dt          fddt          fdt          fgfg          }t          j        |          } d S 	N)r   r
   r   r   r   r   b_ab_b)r   	get_namesr   emptyr   r   floatnamesadtypes     r   test_get_namesr+      s    M"(4c
|<<<BCCEM"(4c
S%L/IJJJPQQEXSzC5#,)E#FGHHFM&!!EEEr    c                  p   t          j        t          j        ddt          fg          j                  } t          j        t          j        ddt          fdt          fg          j                  } t          j        dt          fddt          fdt          fgfg          }t          j        |          } d S r"   )r   get_names_flatr   r&   r   r   r'   r(   s     r   test_get_names_flatr.      s    rxc3ZLAAAGHHErxc3Z#u4NOOOUVVEXSzC5#,)E#FGHHFv&&EEEr    c                      t          j        ddddgfg          } t          t          j        |           t
          t
          t          t           j        f                             d S )N)r   <i4r   )r#   z<f8)r$   r0   )r   r   r   r   flatten_descrr   strndtypes    r   test_flatten_descrr5   &   sQ    X|cNN+K%LMNNF!&))5sBH}1E+FGGGGGr    c            	         t          j        dt          fddt          fddt          fdt          fgfgfg          } t          t	          j        |           t          t          t          t                   f                    d S )Nr
   r   B_AB_BB_B_AB_B_B)	r   r   r   r   r   get_fieldstructuredictr2   listr3   s    r   test_get_fieldstructurer>   +   sr    X	c
	s|ewnwn%EFGH  F &v..S$s)^0DEEEEEr    c            	      :   t          t          j        t          j        dt          j                  t          j        dt          j                  f          t          j        t          t                   t          j
        t          j                 f                    d S )Nr	   r   )r   r   merge_arraysr   onesint_r   recarrayr   r   r   r    r    r   test_merge_arraysrF   3   ss    GD"'""GD"*%%
 	 	 	E#J 112    r    c                     dt           j        fddt           j        fdt           j        fgfg} t          j        d|           }t	          t          j        |d          t           j        t          t                   t           j
        t           j                 f                    t	          t          j        |dd          t           j        j        t          t                   t           j
        t           j                 f                    t	          t          j        |d          t           j        j        t          t                   t           j
        t           j                 f                    d S )	Nr   r   r#   r$   r   r   T)
asrecarray)r   r   doublerB   r   r   drop_fieldsr   r   r   r   r   recrD   rec_drop_fieldsr4   r   s     r   test_drop_fieldsrN   =   s   BHoubi&85"(:K%LMNF
F###A3

5:rx001   34000
c
BHRW$556   As##
c
BHRW$556    r    c                  N   dt           j        fddt           j        fdt           j        fgfg} t          j        d|           }t	          t          j        |ddd	          t           j        t          t                   t           j
        t           j                 f                    d S )
Nr   r   r#   r$   r   r   r
   r8   )r   r$   )r   r   rI   rB   r   r   rename_fieldsr   r   r   r   r   rM   s     r   test_rename_fieldsrQ   O   s    BHoubi&85"(:K%LMNF
F###A!3u5566

5:rx001    r    c                     t          j        dd          } t          t          j        |           t           j        t           j                            t          t          j        |                     d                    t           j                   t          t          j        t          j        d|                     t           j        t          t                   t           j        t           j                 f                    d S )Nzu1, <i8, <f8T)alignr   r   r   )r   r   r   r   repack_fieldsr   typerB   r   r   r   )dts    r   test_repack_fieldsrW   Y   s    H^4@@@B!"%%rx'8999!"''!**--rw777"'$b11122

5:rx001    r    c                      t          j        dg d          } t          t          j        |           t
          j        t                              d S )N   r   i4)r   zf4,u2)cf4r	   r   )r   r   r   r   structured_to_unstructurednptNDArrayr   r   s    r   test_structured_to_unstructuredrc   d   sE    
GGGHHHA.q113;s3CDDDDDr    c                     t          j        g d          } t          j        dt           j                                      d          }t          t          j        ||           t          j	        t           j
                            d S )NrZ      r   )rY      )r   r   arangeint32reshaper   r   unstructured_to_structuredr`   ra   r   )rV   r   s     r   rj   rj   i   sh    H%R%R%RSSB
	"BH%%%--f55A.q"55s{277KLLLLLr    c                     t          j        dg d          } t          t          j        t           j        |           t           j        t          t                   t           j	        t           j
                 f                    d S NrY   ))xr\   )yr^   )zf8r   r   rB   r   r   apply_along_fieldsmeanr   r   r   r   r   r   s    r   test_apply_along_fieldsru   o   g    
@@@AAAArw**

5:rx001    r    c                     t          j        dg d          } t          t          j        t           j        |           t           j        t          t                   t           j	        t           j
                 f                    d S rl   rq   rt   s    r   test_assign_fields_by_namerx   w   rv   r    c                      t          j        dg d          } t          t          j        | ddg          t           j        t          t                   t           j        t           j	                 f                    d S )NrY   )r[   )r   rp   r]   u1r   )r   r^   rz   )
r   rB   r   r   require_fieldsr   r   r   r   r   rb   s    r   test_require_fieldsr}      sj    
@@@AAAA1{K899

5:rx001    r    c                  j   t          j        dt           j                  } t          t	          j        |           t           j        t          t                   t           j	        t           j                 f                    t          j
        dddt          fg          }t          j
        dddt           j        fdt           j        fg          }t          t	          j        ||f          t           j        j        t          t          df         t           j	        t           j                 f                    d S )Nr@   )r
   z|S3r   C.)r   r   rh   r   r   stack_arraysr   r   r   r   rB   r'   r   maMaskedArrayr   r   )rm   ro   zzs      r   test_stack_arraysr      s    
rx  A

5:rx112  
 	|c5\233A	sBJ&7#rz9JK	L	LB!R!!
%S/28BG+<<=    r    c            	         t          j        dt          fg          } t           j                            d                              |           }t          t          j        |          t           j        j	        t          t                   t           j        t           j                 f                    t          t          j        |dd          t          t           j        j	        t          t                   t           j        t           j                 f         t           j        t          t                   t           j        t           j                 f         f                    d S )Nr      T)
ignoremaskreturn_index)r   r   r   r   rB   viewr   r   find_duplicatesr   r   r   r   rC   rM   s     r   test_find_duplicatesr      s    XSzl##F


16""AA
%*bhrw&778   A$TBBBEeCj"(27*;;<JuSz28BG#4457	
    r    )r   N)__doc__typingr   r   numpyr   numpy.typingr`   	numpy.libr   r   r   r+   r.   r5   r>   rF   rN   rQ   rW   rc   rj   ru   rx   r}   r   r   rE   r    r   <module>r      s   M M # # # # # # # #           ) ) ) ) ) )@ @ @ @" " " "' ' ' 'H H H H
F F F F      $      E E E E
M M M M                 r    