%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib64/python3.9/site-packages/numpy/lib/tests/__pycache__/
Upload File :
Create Path :
Current File : //lib64/python3.9/site-packages/numpy/lib/tests/__pycache__/test_io.cpython-39.opt-1.pyc

a

z[yc���@s�ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
mZddlm
Z
ddlmZmZddlmZddlZddlmZmZddlmZddlZddlmZddlmZmZdd	lmZdd
l m!Z!ddl"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0ddl1m2Z2Gd
d�de�Z3ej4dkZ5zddl6Z6dZ7Wne8�yrdZ7Yn0zddl9Z9dZ:Wne8�y�dZ:Yn0d8dd�Z;Gdd�d�Z<Gdd�de<�Z=Gdd�de<�Z>Gdd�d�Z?Gdd�d�Z@Gdd�de@�ZAGd d!�d!�ZBGd"d#�d#e@�ZCGd$d%�d%�ZDd&d'�ZEGd(d)�d)�ZFGd*d+�d+�ZGd,d-�ZHd.d/�ZId0d1�ZJd2d3�ZKe	jLjMe,d4d5�d6d7��ZNdS)9�N)�Path)�NamedTemporaryFile)�BytesIO�StringIO)�datetime)�Value�get_context)�c_bool)�ConverterError�ConversionWarning��asbytes)�assert_equal)�assert_warns�assert_�assert_raises_regex�
assert_raises�assert_allclose�assert_array_equal�temppath�tempdir�IS_PYPY�HAS_REFCOUNT�suppress_warnings�assert_no_gc_cycles�assert_no_warnings�break_cycles)�requires_memoryc@s*eZdZdZd
dd�Zdd�Zdd�Zd	S)�TextIOz�Helper IO class.

    Writes encode strings to bytes if needed, reads return bytes.
    This makes it easier to emulate files opened in binary mode
    without needing to explicitly convert strings to bytes in
    setting up the test data.

    �cCst�|t|��dS�N)r�__init__r
��self�s�r%�=/usr/lib64/python3.9/site-packages/numpy/lib/tests/test_io.pyr!*szTextIO.__init__cCst�|t|��dSr )r�writer
r"r%r%r&r'-szTextIO.writecCst�|dd�|D��dS)NcSsg|]}t|��qSr%r)�.0r$r%r%r&�
<listcomp>1�z%TextIO.writelines.<locals>.<listcomp>)r�
writelines)r#�linesr%r%r&r+0szTextIO.writelinesN)r)�__name__�
__module__�__qualname__�__doc__r!r'r+r%r%r%r&r!s
rlTFcCs.t|�tkr|�d�}tt�||�dd��S)zY
    This function is available in the datetime module only from Python >=
    2.5.

    �latin1N�)�type�bytes�decoder�time�strptime)r$�fmtr%r%r&r7As
r7c@sjeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zej	j
ejdkdd
�dd��Z
dd�Zej	jdd��ZdS)�
RoundtripTestc	Os0|�di�}|�dddi�}|�dd�}|r>tdd�}|j}n
t�}|}z�|}	||g|	�Ri|��|��|�d�tjd	kr�t|t�s�|�	�t
j|fi|��}
|	|_|
|_
Wt|t�s�|�	�d
t�vr�t|
t
jjj�s�t�|j�n@t|t��s*|�	�d
t�v�r*t|
t
jjj��s*t�|j�0dS)a�
        save_func : callable
            Function used to save arrays to file.
        file_on_disk : bool
            If true, store the file on disk, instead of in a
            string buffer.
        save_kwds : dict
            Parameters passed to `save_func`.
        load_kwds : dict
            Parameters passed to `numpy.load`.
        args : tuple of arrays
            Arrays stored to file.

        �	save_kwds�	load_kwdsZallow_pickleT�file_on_diskF)�deleter�win32�arr_reloadedN)�getr�namer�flush�seek�sys�platform�
isinstance�close�np�load�arrr?�locals�lib�npyioZNpzFile�os�remove)r#Z	save_func�args�kwargsr:r;r<Ztarget_fileZ	load_filerJr?r%r%r&�	roundtripMs8



�zRoundtripTest.roundtripcCs�|�|�|j|dd�|�t�|��|jt�|�dd�|jddkr~|�t�|�dd��|jt�|�dd�dd�dS)NT)r<r�)rRrH�asfortranarray�shape�r#�ar%r%r&�check_roundtrips}s
zRoundtripTest.check_roundtripscCs�t�gt�}|�|�t�ddgddggt�}|�|�t�ddgddggt�}|�|�tjddgddggtjd	�}|�|�tjddgddggtjd	�}|�|�dS)
NrS�r2�y�?@y@@y@@y@ @��dtype)rH�array�floatrX�intZcsingleZcdoublerVr%r%r&�
test_array�s



zRoundtripTest.test_arraycCs<t�gt�}|�|�t�ddgddggt�}|�|�dS)NrSrYr2rZ)rHr]�objectrXrVr%r%r&�test_array_object�s
zRoundtripTest.test_array_objectcCst�gd�t�}|�|�dS)N�rSrYr2rZ)rHr]r_rRrVr%r%r&�test_1D�szRoundtripTest.test_1Dr>zFails on Win32��reasoncCsXt�ddgddgg�}|j|dddid�t�ddgddgg�}|j|dddid�dS)	NrSg@rZg333333@T�	mmap_mode�r)r<r;)rHr]rRrTrVr%r%r&�	test_mmap�szRoundtripTest.test_mmapcCs$tjddgddgd�}|�|�dS)N�rSrY�r2rZ��x�i4��yrnr[)rHr]rXrVr%r%r&�test_record�szRoundtripTest.test_recordcCshdd�td�D�}tjd|d�}tjdd��(t�dd	t�|�|�Wd�n1sZ0YdS)
NcSsg|]}d|dtf�qS)�%d�d�r^�r(�ir%r%r&r)�r*z1RoundtripTest.test_format_2_0.<locals>.<listcomp>��i�r[T��record�alwaysr)�rangerH�ones�warnings�catch_warnings�filterwarnings�UserWarningrX)r#�dtrWr%r%r&�test_format_2_0�s
zRoundtripTest.test_format_2_0N)r-r.r/rRrXr`rbrd�pytest�mark�skipifrDrErirq�slowr�r%r%r%r&r9Ls0

r9c@seZdZdd�ZdS)�TestSaveLoadcOsbtj|tjg|�Ri|��t|jd|j�t|jdj|jj�t|jdjj	|jjj	�dS)Nr)
r9rRrH�saverrJr?r\�flags�fnc)r#rPrQr%r%r&rR�szTestSaveLoad.roundtripN)r-r.r/rRr%r%r%r&r��sr�c@s�eZdZdd�Zejjedd�ejjedd�ejj	dd����Z
dd	�Zd
d�Zdd
�Z
dd�Zdd�Zejjdd��Zdd�ZdS)�
TestSavezLoadc	Os�tj|tjg|�Ri|��ztt|j�D]@\}}|jd|}t||�t|j|j�t|j	j
|j	j
�q(W|jjr�|jj��t
�|jjj�n&|jjr�|jj��t
�|jjj�0dS)Nzarr_%d)r9rRrH�savez�	enumeraterJr?rr\r�r�ZfidrGrNrOrA)r#rPrQ�nrJZreloadedr%r%r&rR�s
�zTestSavezLoad.roundtripz
Hangs on PyPyrezNeeds 64bit platformcCspd}tj|tjd�}tddd��<}tj||d�~t�|�}|d}|��~Wd�n1sb0YdS)Nl�r[Znumpy_test_big_arrays_�.npz)�prefix�suffix�rWrW)rH�empty�uint8rr�rIrG)r#�LrW�tmpZnpfiler%r%r&�test_big_arrays�s
zTestSavezLoad.test_big_arrayscCs@t�ddgddggt�}t�ddgddggt�}|�||�dS)	NrSrYr2rZ��?@�@@�@��@(@)rHr]r^�complexrR)r#rW�br%r%r&�test_multiple_arrays�sz"TestSavezLoad.test_multiple_arrayscCszt�ddgddggt�}t�ddgddggt�}t�}tj|||d	�|�d
�t�|�}t||d�t||d�dS�
NrSrYr2rZr�r�r�r�)�file_a�file_brr�r�)	rHr]r^r�rr�rCrIr�r#rWr��c�lr%r%r&�test_named_arrays�s

zTestSavezLoad.test_named_arrayscCs�t�ddgddggt�}t�ddgddggt�}t�}tj|||d	�|�d
�t�|�}tt	t
|j��ddg�t||jj�t||jj
�dSr�)rHr]r^r�rr�rCrIr�sorted�dir�fr�r�r�r%r%r&�test_BagObj�s

zTestSavezLoad.test_BagObjcsXdd��g���fdd�td�D�}|D]}|��q(|D]}|��q:�rTt���dS)NcSs~tdd��`}tj�dd�}ztj||d�Wn.tyZ}z|�|�WYd}~n
d}~00Wd�n1sp0YdS)Nr��r�rw)rJ)rrH�randomZrandnr��OSError�append)Z
error_listr�rJ�errr%r%r&�writer�sz9TestSavezLoad.test_savez_filename_clashes.<locals>.writercsg|]}tj��fd��qS)��targetrP)�	threading�Thread)r(�j��errorsr�r%r&r)s�z=TestSavezLoad.test_savez_filename_clashes.<locals>.<listcomp>r2)r{�start�join�AssertionError)r#�threads�tr%r�r&�test_savez_filename_clashes�s�

z)TestSavezLoad.test_savez_filename_clashesc	Cs�tdd���}t|d��}tj|dd�Wd�n1s:0Yt|dd��V}|�d�t|j�t�|�d	t|j�|�d�t|j�Wd�n1s�0YWd�n1s�0YdS)
Nr�r��wb�LOVELY LOAD��data�rbi'rr�)r�openrHr�rCr�closedrI)r#r��fpr%r%r&�test_not_closing_opened_fid
s,

z)TestSavezLoad.test_not_closing_opened_fidc
Cs�tdd���}tj|dd�t���}|�t�tdd�D]l}zXzt�|�dWn4ty�}zd|}t	|��WYd}~n
d}~00Wt
r�t��q6t
r�t��0q6Wd�n1s�0YWd�n1s�0YdS)	Nr�r�r�r�rSir�z#Failed to load data from a file: %s)
rrHr�r�filter�ResourceWarningr{rI�	Exceptionr�r�gcZcollect)r#r��suprv�e�msgr%r%r&�test_closing_fids
 
�zTestSavezLoad.test_closing_fidcCsfd}td|d��B}tj|dd�t�|�}|jj}|��t|j�Wd�n1sX0YdS)NZ&numpy_test_closing_zipfile_after_load_r�)r�r��place holder��lab)	rrHr�rI�zipr�rGrr�)r#r�r�r�r�r%r%r&�test_closing_zipfile_after_load6s
z-TestSavezLoad.test_closing_zipfile_after_loadN)r-r.r/rRr�r�r�r�IS_64BITr�r�r�r�r�r�r�Z	slow_pypyr�r�r%r%r%r&r��s

r�c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zej�d#d$d%g�ej�d&eeg�d'd(���Zejjejd)kd*d+�ejjed,d-�d.d/����Zd0S)1�TestSaveTxtcCs�t�ddgddggt�}d}t�}tj|||d�|�d�t|��t|d|d	d
�t|d|d	d�g�t�ddgddggt	�}t�}tj||dd�|�d�t|��d
dg�dS)NrSrYr2rZz%.18e�r8r� �
rjrkrr�1 2
�3 4
)
rHr]r^r�savetxtrCr�	readlinesr
r_)r#rWr8r�r%r%r&r`Es
��
zTestSaveTxt.test_arraycCsJt�gd�t�}t�}tj||dd�|�d�|��}t|gd��dS)Nrcrrr�r)s1
s2
s3
s4
)rHr]r_rr�rCr�r�r#rWr�r,r%r%r&rdUs
zTestSaveTxt.test_1DcCs@t�}tttj|t�d��tttj|t�dgdggg��dS)NrSrY)rr�
ValueErrorrHr�r]�r#r�r%r%r&�
test_0D_3D]szTestSaveTxt.test_0D_3DcCsLtjddgddgd�}t�}tj||dd�|�d�t|��d	d
g�dS)Nrjrkrlror[rrr�rr�r��rHr]rr�rCrr��r#rWr�r%r%r&�test_structuredbs

zTestSaveTxt.test_structuredcCsTtjddggd�d�}t�}tj||ddgdd�|�d	�t|��d
dg�dS)N�rSrYr2�rZ��))�foorn)�barrn)�bazrnr[r�r�rrr�rs1 3
s4 6
r�r�r%r%r&�test_structured_paddedis

z"TestSaveTxt.test_structured_paddedcCsttjdgd�d�}|ddg}tdd��8}t|�}t�||�t�|�}t||�Wd�n1sf0YdS)NrS)rlro)�z�f4r[rmr��.npyr�)rHr|rrr�rIr)r#rW�v�pathr�r%r%r&�test_multifield_viewss
z TestSaveTxt.test_multifield_viewcCsNt�ddgddgg�}t�}tj||ddd�|�d�t|��d	d
g�dS)N��?�@�@�@�,rr)�	delimiterr8rs1,2
s3,4
r�r�r%r%r&�test_delimiter|s

zTestSaveTxt.test_delimitercCs�t�ddg�}t�}tj||ddgd�|�d�t|��ddg�t�}tj||d	d�|�d�|��}t|d
dg�t�}tj||d	dd
�|�d�|��}t|d
dg�t�}tttj||dd�dS)Nrjrkz%02dz%3.1fr�rs01 2.0
s03 4.0
z%02d : %3.1fs	01 : 2.0
s	03 : 4.0
r�)r8r��c)	rHr]rr�rCrr�rr�r�r%r%r&�test_format�s"


zTestSaveTxt.test_formatcCst�}tjddgtd�}d}tj||d|d�|�d�t|��td|d	��t�}tj||d|d
�|�d�t|��td|d��t�}d
}tj||d||d�|�d�t|��t||dd��t�}d
}tj||d||d�|�d�t|��td||d��dS)Nrjrkr[zTest header / footerz%1d)r8�headerrz# z	
1 2
3 4
)r8�footerz
1 2
3 4
# r�z% )r8r��commentsz1 2
3 4
)r8r�r�)	rrHr]r_r�rCr�readr
)r#r�rW�test_header_footerZ
commentstrr%r%r&r��s@
�
�
�
�
�
�zTestSaveTxt.test_header_footercCsXt��>}t�ddg�}t�||�t�|�}t||�Wd�n1sJ0YdS)Nrjrk)rrHr]r��loadtxtr)r#rArWr�r%r%r&�test_file_roundtrip�s

zTestSaveTxt.test_file_roundtripcCs�d}d}tj||ftjd�}tj}tj}|d||dd�<t�}tj||dd�|�d�|��}t	|ddg�t�}tj||d|d�|�d�|��}t	|d	d	g�t�}tj||d
g|d�|�d�|��}t	|ddg�dS)NrYr[��?z %+.3er�rs8 ( +3.142e+00+ +2.718e+00j)  ( +3.142e+00+ +2.718e+00j)
z  %+.3e  %+.3es1  +3.142e+00  +2.718e+00  +3.142e+00  +2.718e+00
z(%.3e%+.3ej)s.(3.142e+00+2.718e+00j) (3.142e+00+2.718e+00j)
�
rH�zeros�
complex128�pir�rr�rCr�r�r#ZncolsZnrowsrW�re�imr�r,r%r%r&�test_complex_arrays�sH
��
��
��zTestSaveTxt.test_complex_arrayscCsvd}d}tj||ftjd�}tj}tj}|d||dd�<t�}tj||dd�|�d�|��}t	|ddg�dS)NrYr[rz%.3er�rs0 (3.142e+00-2.718e+00j)  (3.142e+00-2.718e+00j)
rrr%r%r&�test_complex_negative_exponent�s 
��z*TestSaveTxt.test_complex_negative_exponentcCsHGdd�dt�}|�}t�ddg�}t�||�t�|�}t||�dS)Nc@seZdZdd�ZdS)z4TestSaveTxt.test_custom_writer.<locals>.CustomWritercSs|�|�d��dS)N�
)�extend�split)r#�textr%r%r&r'sz:TestSaveTxt.test_custom_writer.<locals>.CustomWriter.writeN)r-r.r/r'r%r%r%r&�CustomWritersrrjrk)�listrHr]r�r�r)r#r�wrWr�r%r%r&�test_custom_writer�s
zTestSaveTxt.test_custom_writercCsdd�d�}tj|gtjd�}t��.}tjtj�|d�|dgdd�Wd�n1sV0YdS)N�ϖ�UTF-8r[�test.csv�%s�r8�encoding)	r5rHr]�unicode_rr�rNr�r�)r#�utf8rW�tmpdirr%r%r&�test_unicode
s
�zTestSaveTxt.test_unicodecCs�d�d�}tj|gtjd�}ddg}tr2|�d�trD|�ddg�t��f}|D]P}tj	t
j�|d	|�|d
gdd�tj
t
j�|d	|�dtjd
�}t||�qPWd�n1s�0YdS)Nrrr[r�.gz�.bz2�.xz�.lzmarrz	UTF-16-LEr�rr\)r5rHr]r�HAS_BZ2r��HAS_LZMArrr�rNr�r�r�r)r#rrW�suffixesrr�r�r%r%r&�test_unicode_roundtrips 

��z"TestSaveTxt.test_unicode_roundtripcCs\d�d�}tj|gtjd�}t�}tj||dgdd�|�d�t|���d�|d�dS�Nrrr[rrrr�)	r5rHr]rrr�rCrr��r#rrWr$r%r%r&�test_unicode_bytestream#s

z#TestSaveTxt.test_unicode_bytestreamcCsVd�d�}tj|gtjd�}t�}tj||dgdd�|�d�t|��|d�dSr&)	r5rHr]rrr�rCrr�r'r%r%r&�test_unicode_stringstream+s

z%TestSaveTxt.test_unicode_stringstreamr8�%fs%f�iotypecCs^t�dg�}|�}tj|||d�|�d�|turHt|��dd�nt|��dd�dS)Nr�r�rz%f
s%f
)rHr]r�rCrrr�)r#r8r+rWr$r%r%r&�test_unicode_and_bytes_fmt3s
z&TestSaveTxt.test_unicode_and_bytes_fmtr>zfiles>4GB may not workreg`��A)Z
free_bytescCs^dd�}tt�}td�}|j||fd�}|��|��|jrFtd��|jdkrZt	�
d�dS)NcSs�d|_z^tjdd�td�D�td�}t��(}tjtj�	|d�|d�Wd�n1sX0YWnt
y~d|_�Yn0dS)	NFcSs$g|]}tj�tj�dd�d��qS)�2rsrZ)rHr�ZrandZrandintrur%r%r&r)Is��zGTestSaveTxt.test_large_zip.<locals>.check_large_zip.<locals>.<listcomp>i5r[ztest.npz)�	test_dataT)�valuerHZasarrayr{rarr�rNr�r��MemoryError)�memoryerror_raisedr.rr%r%r&�check_large_zipDs
���(z3TestSaveTxt.test_large_zip.<locals>.check_large_zip�forkr�z,Child process raised a MemoryError exception���zCsubprocess got a SIGKILL, apparently free memory was not sufficient)rr	rZProcessr�r�r/r0Zexitcoder�Zxfail)r#r2r1�ctx�pr%r%r&�test_large_zip@s

zTestSaveTxt.test_large_zipN) r-r.r/r`rdr�r�r�r�r�r�r�rr	r
rrr%r(r)r�r��parametrizerrr,r�rDrEr�rr7r%r%r%r&r�Ds0
	"&r�c@sxeZdZdd�Zdd�Zejjedd�dd��Z	ejje
d	d�d
d��Zdd
�Zdd�Z
dd�Zdd�Zdd�ZdS)�LoadTxtBasecCs�t�d��d�}d}|D]�}d|d}|D]�}t|d���}||ddd	��}	|	�|�Wd�n1sj0Y|j|dd
�}
t|
|�||ddd
��}	|�|	�}
Wd�n1s�0Yt|
|�Wd�q,1s�0Yq,qdS)Nr��rYr2�r�z
�
�0 1 2�3 4 5r��wtz	UTF-32-LE)�moder�rZrt)rH�arange�reshaperr'�loadfuncr)r#Zfopenr$�wanted�linesep�sepr�r�rAr��resr%r%r&�check_compressedfs(
(zLoadTxtBase.check_compressedcCs|�tjd�dS)N)r)rI�gzipr��r#r%r%r&�test_compressed_gzipvsz LoadTxtBase.test_compressed_gzipz	Needs bz2recCs|�tjd�dS)N)r)rI�bz2r�rKr%r%r&�test_compressed_bz2yszLoadTxtBase.test_compressed_bz2z
Needs lzmacCs|�tjd�dS)N)rr )rI�lzmar�rKr%r%r&�test_compressed_lzma}sz LoadTxtBase.test_compressed_lzmac	Cs�t��f}t|d�� }|�d�d��Wd�n1s80Y|j|dd�}t|gd��Wd�n1sr0YdS)Nr�z0.
1.
2.�UTF-16rA)�r�r�)rr�r'�encoderDr)r#r�r�rmr%r%r&�
test_encoding�s
.zLoadTxtBase.test_encodingc	Cs�d�d�}t��f}t|d�� }|�|�d��Wd�n1sB0Y|j|dtjd�}t||�Wd�n1s|0YdS)Nsöüörr�rQr!)	r5rr�r'rSrDrHrr)r#Znonasciir�r�rmr%r%r&�test_stringload�s
.zLoadTxtBase.test_stringloadcCs8d}|jt|�tjdd�}t|t�|�d�����dS�Ns��h i jrQ)r\r)rDrrHrrr]r5r
�r#�utf16r�r%r%r&�test_binary_decode�szLoadTxtBase.test_binary_decodecCsTt�}|�d�|�d�|j|tjddd�id�}t�d�d�g�}t||�dS)NrrcSs
|�d�S)Nr�r5�rmr%r%r&�<lambda>�r*z4LoadTxtBase.test_converters_decode.<locals>.<lambda>)r\�
convertersr)	rr'rCrDrHrr]r5r�r#r�rmrWr%r%r&�test_converters_decode�s



�z"LoadTxtBase.test_converters_decodec	Cs�d�d�}t���}tj|ddd��}|�|�Wd�n1sB0Y|j|tjddd�idd�}t�|d	g�}t	||�Wd�n1s�0YdS)
Nrrr?rArcSs|dS)Nr�r%r[r%r%r&r\�r*z6LoadTxtBase.test_converters_nodecode.<locals>.<lambda>�r\r]rr�)
r5r�ior�r'rDrHrr]r)r#rr�r�rmrWr%r%r&�test_converters_nodecode�s
(

�z$LoadTxtBase.test_converters_nodecodeN)r-r.r/rIrLr�r�r�r"rNr#rPrTrUrYr_rbr%r%r%r&r9es

	
r9c@seZdZeej�Zdd�Zdd�Zdd�Z	dd�Z
d	d
�Zdd�Zd
d�Z
dd�Zdd�Zdd�Zejjeovejjdkdd�dd��Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Z d*d+�Z!d,d-�Z"d.d/�Z#d0d1�Z$d2d3�Z%ejje�oejjdkdd�d4d5��Z&ejje�o*ejjdkdd�d6d7��Z'd8d9�Z(d:d;�Z)d<d=�Z*d>d?�Z+d@dA�Z,dBdC�Z-dDdE�Z.dFdG�Z/dHdI�Z0ejje1�2�dJkdKd�dLdM��Z3dNdO�Z4dPdQ�Z5dRdS�Z6dTdU�Z7ej�8dVdWgdXgdY�fdXgdZ�fdXe9d[�fd\gd]�fd\gd^�fd\e9d_�fg�d`da��Z:dbS)c�TestLoadTxtcCstjjj|_dtjj_dS�NrS)rHrLrM�_loadtxt_chunksize�
orig_chunkrKr%r%r&�setup_method�szTestLoadTxt.setup_methodcCs|jtjj_dSr )rfrHrLrMrerKr%r%r&�teardown_method�szTestLoadTxt.teardown_methodcCs�t�}|�d�|�d�tj|dtjfdtjfgd�}tjddgdd	gd�}t||�t�}|�d
�|�d�ddd
�}tjddg|d�}tj||d�}t||�dS)N�1 2
3 4rrmrpr[rjrkrlrozM 64 75.0
F 25 60.0��gender�age�weight��S1rnr���names�formats��M�P@��R@��F�9@�N@)rr'rCrHr��int32r]r)r#r�rmrW�dZmydescriptorr�rpr%r%r&rq�s&




���zTestLoadTxt.test_recordcCs�t�}|�d�|�d�tj|td�}t�ddgddggt�}t||�|�d�tj|td�}t�ddgddggt�}t||�dS)Nrirr[rSrYr2rZ)	rr'rCrHr�r_r]rr^r^r%r%r&r`�s



zTestLoadTxt.test_arraycCs�t�}|�d�|�d�tj|td�}t�gd�t�}t||�t�}|�d�|�d�tj|tdd�}t�gd�t�}t||�dS)N�1
2
3
4
rr[rc�1,2,3,4
r��r\r��rr'rCrHr�r_r]rr^r%r%r&rd�s




zTestLoadTxt.test_1DcCsRt�}|�d�|�d�tj|tdddd�id�}t�gd�t�}t||�dS)	N�	1,2,3,,5
rr�r2cSst|pd�S�N�����r_�r$r%r%r&r\�r*z*TestLoadTxt.test_missing.<locals>.<lambda>�r\r�r]�rSrYr2r�r�r�r^r%r%r&�test_missing�s



�zTestLoadTxt.test_missingcCs\t�}|�d�|�d�tj|tdddd�idd�}t�d	d
gddggt�}t||�dS)
N�1,2,3,,5
6,7,8,9,10
rr�r2cSst|pd�Sr�r�r�r%r%r&r\�r*z:TestLoadTxt.test_converters_with_usecols.<locals>.<lambda>�rSr2�r\r�r]�usecolsrYr���	r�r^r%r%r&�test_converters_with_usecols�s



�z(TestLoadTxt.test_converters_with_usecolscCsJt�}|�d�|�d�tj|tddd�}t�gd�t�}t||�dS)N�# comment
1,2,3,5
rr��#�r\r�r��rSrYr2r�r�r^r%r%r&�test_comments_unicode�s


�z!TestLoadTxt.test_comments_unicodecCsJt�}|�d�|�d�tj|tddd�}t�gd�t�}t||�dS)Nr�rr��#r�r�r�r^r%r%r&�test_comments_bytes


�zTestLoadTxt.test_comments_bytecCsVt�}|�d�|�d�tj|tdgd�d�}t�gd�gd�gt�}t||�dS)Nz,# comment
1,2,3
@ comment2
4,5,6 // comment3rr�)r��@z//r�r�r�r�r^r%r%r&�test_comments_multiples


�z"TestLoadTxt.test_comments_multiple)r�r2�zPyPy bug in error formattingrecCszt�}|�d�|�d�tj|tddd�}t�gd�t�}t||�t�}|�d�|�d�tt	tj|tddd�dS)Nz/* comment
1,2,3,5
rr�z/*r�r�z*/ comment
1,2,3,5
)
rr'rCrHr�r_r]rrr�r^r%r%r&�test_comments_multi_charss


�


�z%TestLoadTxt.test_comments_multi_charscCs�t�}|�d�|�d�tj|tddd�}t�gd�t�}t||�t�}|�d�|�d�tj|tddd�}t�gd�t�}t||�dS)N�comment
1,2,3,5
rr�rS)r\r��skiprowsr�r�r�r^r%r%r&�
test_skiprows's 


�



�zTestLoadTxt.test_skiprowsc
	Cs�t�ddgddggt�}t�}t�||�|�d�tj|tdd�}t||dd�df�t�gd�gd	�gt�}t�}t�||�|�d�tj|td
d�}t||dd�dd�f�|�d�tj|tt�ddg�d�}t||dd�dd�f�ttj	tj
tjtjtj
tjtjtjf	D]>}|d�}|�d�tj|t|d�}t||dd�df��qGdd�d�}|�}|�d�tj|t|d�}t||dd�df�|�d�tj|t|fd�}t||dd�df�d
}t|�}ddg}	ddg}
tj|dtt|	|
��d�}t|dddg�t|dddg�|�d�d}ttdt|�jtj||d�ttdt|�jtj|d|dgd�dS)NrSrYr2rZr�rS�r\r�r��r2rZr�rjc@seZdZdd�ZdS)z*TestLoadTxt.test_usecols.<locals>.CrazyIntcSsdSrdr%rKr%r%r&�	__index__Wsz4TestLoadTxt.test_usecols.<locals>.CrazyInt.__index__N)r-r.r/r�r%r%r%r&�CrazyIntVsr�z<JOE 70.1 25.3
                BOB 60.5 27.9
                �stid�temp�S4�f8�rrY�r�r\�JOE�BOB������L9@�fffff�;@��?z^usecols must be.*%s�r�)rHr]r^rr�rCr�rr_Zint8Zint16r{�int64r�Zuint16Zuint32�uint64rrr�rr�	TypeErrorr3r-)
r#rWr�rmZint_typeZto_readr�Z	crazy_intr�rq�dtypesrJZ	bogus_idxr%r%r&�test_usecols8sd



�



��zTestLoadTxt.test_usecolscCs�t�t��$tjdgdgdd�Wd�n1s40Yt�ttf��$tjdgdgdd�Wd�n1sv0Ytjtdd��&tjdgd	d
gdd�Wd�n1s�0YdS)Nz1
lr�)r�r�lzQIf a structured dtype .*. But 1 usecols were given and the number of fields is 3.��matchz1,1
zi,(2)ir)r\r�r�)r��raises�
OverflowErrorrHr�r�r�rKr%r%r&�test_bad_usecols}s22�zTestLoadTxt.test_bad_usecolscCsjt�}|�d�|�d�t�dtfddtfdtfgfg�}tj||dd�}t�d	d
g|�}t	||�dS)N�1,2,3.0
4,5,6.0
rrmrpr�r$r�r�rS)rYr��rZ)r��@)
rr'rCrHr\r_r^r�r]r�r#r�r�rmrWr%r%r&�test_fancy_dtype�s

"zTestLoadTxt.test_fancy_dtypecCshtd�}t�ddtfdtfdtdfg�}tj||d�}tjdd	d
gd�gd�gfg|d�}t||�dS�
Nzaaaa  1.0  8.0  1 2 3 4 5 6�rAr�rmrp�blockr:r[�aaaar�� @r�r��rrHr\r^r_r�r]rr�r%r%r&�test_shaped_dtype�s��zTestLoadTxt.test_shaped_dtypecCsxtd�}t�ddtfdtfdtdfg�}tj||d�}tjdd	d
gd�gd�ggd
�gd�ggfg|d�}t||�dS)Nz*aaaa  1.0  8.0  1 2 3 4 5 6 7 8 9 10 11 12r�rmrpr�)rYrYr2r[r�r�r�r�r�)r�r�r�)�
��r�r�r%r%r&�test_3d_shaped_dtype�s�
��z TestLoadTxt.test_3d_shaped_dtypecCsFddg}ttjfD].}tjddg|d�}tj||d�}t||�qdS)NZstr1Zstr2r[)�strrHZbytes_r]r�r)r#r�r�rWrmr%r%r&�test_str_dtype�s
zTestLoadTxt.test_str_dtypecCsztjtdd��Xt�}t�|�}t|jd�tj|tjd�}t|jd�t	|j
tjk�Wd�n1sl0YdS)N�input contained no datar��rr[)r��warnsr�rrHr�rrUr�rr\)r#r�rmr%r%r&�test_empty_file�s
zTestLoadTxt.test_empty_filecCsxt�}|�ddg�|�d�tj|dddd�id�}t|dd	g�|�d�tj|dd
dd�id�}t|dd
g�dS)Nz1 21
z3 42
rr�cSs
t|d�S�N�r�r�r%r%r&r\�r*z3TestLoadTxt.test_unused_converter.<locals>.<lambda>�r�r]��*rScSs
t|d�Sr�r�r�r%r%r&r\�r*�!�B)rr+rCrHr�r)r#r�r�r%r%r&�test_unused_converter�s

�

�z!TestLoadTxt.test_unused_convertercCsrd}dtfdtfg}dd�}d|i}tjt|�d||d�}tjdtd	dd�fd
tddd�fg|d
�}t||�dS)N�0 1; 2001-01-01
                   2; 2002-01-31 �idx�codecSst|��d�S�Nz%Y-%m-%d�r7�stripr�r%r%r&r\�r*z4TestLoadTxt.test_dtype_with_object.<locals>.<lambda>rS�;�r�r\r]��rY���r[)r_rarHr�rr]rr�r#r�Zndtype�funcr]�test�controlr%r%r&�test_dtype_with_object�s��z"TestLoadTxt.test_dtype_with_objectcCs@d}t�}|�d|�|�d�tj|tjd�}t||�dS)N)l+&�|l-(�|�%s %srr[)rr'rCrHr�r�r�r#�tgtr�rHr%r%r&�test_uint64_type�s
zTestLoadTxt.test_uint64_typecCs@d}t�}|�d|�|�d�tj|tjd�}t||�dS)N)l��������l����r�rr[)rr'rCrHr�r�rr�r%r%r&�test_int64_type�s
zTestLoadTxt.test_int64_typecCs�t�ddd��tj�}t�||f��t�}d�ttj|��}t	�}|�
|�ttjfD]4}|�d�tj||tj
dd�}t||d|d	�qXdS)
Ni����r�r�r�rr1r`r)�err_msg)rHZlogspaceZastypeZfloat32Zhstackr^r��map�hexrr'rCr��fromhexr)r#r��inpr�r�rHr%r%r&�test_from_float_hex�s


�zTestLoadTxt.test_from_float_hexcCsDtd�}tjtdd��t�|�Wd�n1s60YdS)z�
        Ensure that fromhex is only used for values with the correct prefix and
        is not called by default. Regression test related to gh-19598.
        za b cz2.*convert string 'a' to float64 at row 0, column 1r�N�rr�r�r�rHr�r�r%r%r&�6test_default_float_converter_no_default_hex_conversion�s
�zBTestLoadTxt.test_default_float_converter_no_default_hex_conversioncCsDtd�}tjtdd��t�|�Wd�n1s60YdS)z�
        Ensure that the exception message raised during failed floating point
        conversion is correct. Regression test related to gh-19598.
        zqrs tuvz)could not convert string 'qrs' to float64r�Nr�r�r%r%r&�&test_default_float_converter_exception�s
�z2TestLoadTxt.test_default_float_converter_exceptioncCsNtdd�tdd�f}t�}|�d|�|�d�tj|td�}t||�dS)NrS���r�rr[)r�rr'rCrHr�rr�r%r%r&�test_from_complexs
zTestLoadTxt.test_from_complexcCs�tjdtjd�}tj}tj}|d||dd�<t�}tj||dd�|�d�|��}|�d�|�	dd�}t
||k�|�|�|�d�tj|t
d�}t||�dS)	N�rYrYr[rz%.16er�rse+00-se00+-)rHrrrr�rr�rCr��replacerr'r�r�r)r#rWrrr��txtZtxt_badrHr%r%r&�test_complex_misformatteds



z%TestLoadTxt.test_complex_misformattedc	Cs~t��N}t|d��}|�d�Wd�n1s20Yt�|�}Wd�n1sZ0Yt|ddgddgg�dS)Nrz
1 21
3 42
rSr�r2r�)rr�r'rHr�r)r#rAr�r�r%r%r&�test_universal_newline#s
((z"TestLoadTxt.test_universal_newlinecCsTt�}|�d�|�d�ddd�}tj||dd�}t�gd��}t|d	|�dS)
Nz 1 	2 	3	start 
4	5	6	  
7	8	9.5	r)rmrpr��comment)�<i4r��<f4�|S8rp�	r)sstart s  r*r�)rr'rCrHr�r]rr�r%r%r&�test_empty_field_after_tab*s

�z&TestLoadTxt.test_empty_field_after_tabcCs�td�}ddd�}tj||dd�\}}}t|jjdk�t|jjdk�t|jjd	k�t|t�d
dg��t|t�dd
g��t|t�ddg��dS)N�M 21 72
F 35 58�rWr�r�)�|S1r�r�rpT�r\�unpackrr�r��M�Fr��#�R@�M@)rrHr�rr\r�rr]�r#r�r�rWr�r�r%r%r&�test_unpack_structured4s
z"TestLoadTxt.test_unpack_structuredcCs
t�}|�d�|�d�tttj|dd�|�d�tttj|dd�|�d�tj|tddd�}t�gd	�gd
�g�}t	||�t�}|�d�|�d�tj|tddd�}t
|jd
k�|�d�tj|tddd�}t
|jdk�|�d�tj|tddd�}t
|jdk�t�}|�d�|�d�tj|tddd�}t
|jdk�|�d�tj|tddd�}t
|jdk�|�d�tj|tddd�}t
|jdk�tj
tdd��Ft�}t
tj|dd�jdk�t
tj|dd�jdk�Wd�n1�s�0YdS)Nz1,2,3
4,5,6rr2��ndminr�r�rS)r\r�rr�r�z0,1,2rYr�)r2z0
1
2)r2rSr�r��rrSr�)rr'rCrr�rHr�r_r]rrrUr�r�r�)r#r�rmrWr|r�r�r%r%r&�test_ndmin_keyword?sH












zTestLoadTxt.test_ndmin_keywordcCs(dd�}t�|��}t|t�d��dS)Ncsstd�D]}d|VqdS�Nr�rr)r{�rvr%r%r&�countjsz0TestLoadTxt.test_generator_source.<locals>.countr�)rHr�rrB�r#rrHr%r%r&�test_generator_sourceisz!TestLoadTxt.test_generator_sourcecCs.t�}|�d�|�d�ttdtj|�dS)Nz1 2 3
4 5 6
2 3r�3)rr'rCrr�rHr�r�r%r%r&�
test_bad_lineqs

zTestLoadTxt.test_bad_linecCsHt�}|�d�|�d�t�dtfddtfg�}tj|d|dd�dS)Nz100,foo,200
300,None,400rrm)rWZS10rpr�)r�r\r�)rr'rCrHr\r_r�)r#r�r�r%r%r&�test_none_as_stringys


zTestLoadTxt.test_none_as_stringzANSI_X3.4-1968zWrong preferred encodingc	Csd}|�d��dd���}t���}t|d��}|�|�Wd�n1sL0Yt|d��"}tj|dtjd�}Wd�n1s�0Yt	||�t|d�� }tj|ddd�}Wd�n1s�0Ygd	�}t	|tj
|dd
��Wd�n1�s0YdS)Ns/5,6,7,Õscarscar
15,2,3,hello
20,2,3,Õscar
rr<rr�r�r!�S)s5,6,7,Õscarscars15,2,3,hellos
20,2,3,Õscarr[)r5r��
splitlinesrr�r'rHr�rrr])r#Zbutf8Zsutf8r�r�rmr%r%r&�test_binary_load�s(0
.zTestLoadTxt.test_binary_loadcCsJt�}|�d�|�d�tj|tddd�}t�gd�t�}t||�dS)N�1,2,3,5
4,5,7,8
2,1,4,5rr�rS�r\r��max_rowsr�r�r^r%r%r&�
test_max_rows�s


�zTestLoadTxt.test_max_rowscCs�t�}|�d�|�d�tj|tdddd�}t�gd�t�}t||�t�}|�d�|�d�tj|tdddd�}t�gd�gd	�gt�}t||�dS)
Nz comments
1,2,3,5
4,5,7,8
2,1,4,5rr�rS�r\r�r�r r��comment
1,2,3,5
4,5,7,8
2,1,4,5rY�rZr�r�r�r�r^r%r%r&�test_max_rows_with_skiprows�s 


�



�z'TestLoadTxt.test_max_rows_with_skiprowscCs|t�}|�d�|�d�tj|tddd�}t�gd�gd�gt�}t||�tj|tdd�}t�gd	�t�}t||�dS)
Nrrr�rYrr�r$r�rYrSrZr�r�r^r%r%r&�$test_max_rows_with_read_continuation�s


�
z0TestLoadTxt.test_max_rows_with_read_continuationcCsZt�}|�d�|�d�tj|tdddd�}t�gd�gd�gd	�gt�}t||�dS)
Nr#rr�rSr�r"r�r$r&r�r^r%r%r&�test_max_rows_larger�s


�z TestLoadTxt.test_max_rows_larger�skipr�rS)zignored
�1,2
r��3,4
)Zignored�1,2r�3,4zignored
1,2

3,4r)z-1,0
r*r�r+)z-1,0r,rr-z
-1,0
1,2

3,4c	Cstjtdd|��d��Ltj|t|dd|d�}t|ddgdd	gdd
gg|d��Wd�n1sj0Yt|t�r�|�	d�t
���^t
�dt�t�
t��(tj|t|dd|d�Wd�n1s�0YWd�n1s�0YdS)NzInput line 3.*max_rows=r2r�r�)r\r�r�r r�rrSrYrZ�error)r�r�r�rHr�r_rrFrrCr}r~�simplefilterr�)r#r)r�rHr%r%r&�test_max_rows_empty_lines�s
��B


�z%TestLoadTxt.test_max_rows_empty_linesN);r-r.r/�staticmethodrHr�rDrgrhrqr`rdr�r�r�r�r�r�r�r�rrD�implementation�versionr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrr�locale�getpreferredencodingrr!r%r'r(r8rr0r%r%r%r&rc�s|
	
			�
E		
		
�

�


*�
	







�	rcc@sNeZdZdd�Zdd�Zdd�Zej�de	e
g�dd	��Zd
d�Zdd
�Z
dS)�
TestfromregexcCsVt�}|�d�|�d�dtjfdg}t�|d|�}tjgd�|d�}t||�dS)Nz1.312 foo
1.534 bar
4.444 quxr�num��valZS3z([0-9.]+)\s+(...)))�ˡE���?r��g%��C��?r��g-����@�quxr[�rr'rCrH�float64�	fromregexr]rr�r%r%r&rq�s


�zTestfromregex.test_recordcCsVt�}|�d�|�d�dtjfdg}t�|d|�}tjgd�|d�}t||�dS)N�1312 foo
1534 bar
4444 quxrr7r8z
(\d+)\s+(...)))� r�)�r�)�\r=r[)rr'rCrHr{r@r]rr�r%r%r&�
test_record_2�s


�zTestfromregex.test_record_2cCsTt�}|�d�|�d�dtjfg}t�|d|�}tjgd�|d�}t||�dS)NrArr7z(\d+)\s+...))rB)rC)rDr[r>r�r%r%r&�
test_record_3�s

zTestfromregex.test_record_3�	path_typec
	Cs�d}t���}||�}t|d��"}|�d|d�Wd�n1sF0Ydtjfdg}tj|d|dd	�}tjd
d|�d�fdd
g|d�}t||�t	�
dt	j�}	tj||	|dd	�}t||�Wd�n1s�0YdS)Nrr�s	1.312 foos 
1.534 bar
4.444 quxr7)r9ZU4z(?u)([0-9.]+)\s+(\w+)rrAr:r�r;r<r[z([0-9.]+)\s+(\w+))rr�r'rHr?r@r]r5rr�compile�UNICODE)
r#rGrZstr_pathr�r�r�rmrW�regexpr%r%r&�test_record_unicode�s 0��
z!Testfromregex.test_record_unicodecCsLt�d�}td�}dtjfg}tjgd�|d�}t�|||�}t||�dS)N�(\d)�123r7r�r[)rrHrrHr?r]r@r)r#rJr�r�rWrmr%r%r&�test_compiled_bytess
z!Testfromregex.test_compiled_bytescCsVt�d�}td�}tjtdd��"tj||tjd�Wd�n1sH0YdS)NrLrMzstructured datatyper�r[)	rrHrr�r�r�rHr@r?)r#rJr�r%r%r&�test_bad_dtype_not_structureds
z+Testfromregex.test_bad_dtype_not_structuredN)r-r.r/rqrErFr�r�r8r�rrKrNrOr%r%r%r&r6�s

r6c@s�eZdZeej�Zdd�Zdd�Zdd�Z	dd�Z
d	d
�Zdd�Zd
d�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Z d5d6�Z!d7d8�Z"d9d:�Z#d;d<�Z$d=d>�Z%d?d@�Z&dAdB�Z'dCdD�Z(dEdF�Z)dGdH�Z*dIdJ�Z+dKdL�Z,dMdN�Z-dOdP�Z.dQdR�Z/dSdT�Z0dUdV�Z1dWdX�Z2dYdZ�Z3d[d\�Z4d]d^�Z5d_d`�Z6dadb�Z7dcdd�Z8dedf�Z9dgdh�Z:didj�Z;dkdl�Z<dmdn�Z=dodp�Z>dqdr�Z?dsdt�Z@dudv�ZAdwdx�ZBdydz�ZCd{d|�ZDd}d~�ZEdd��ZFd�d��ZGd�d��ZHd�d��ZId�d��ZJd�d��ZKd�d��ZLd�d��ZMd�d��ZNd�d��ZOd�d��ZPd�d��ZQd�d��ZRd�d��ZSd�d��ZTd�d��ZUd�d��ZVd�d��ZWd�d��ZXeYjZ�[d�gd���e\d��d�d���Z]d�S)��TestFromTxtcCs�td�}tj|dtjfdtjfgd�}tjddgddgd�}t||�td	�}d
dd�}tjd
dg|d�}tj||d�}t||�dS)Nrirmrpr[rjrkrlrozM 64.0 75.0
F 25.0 60.0rjrnrprsrw)rrH�
genfromtxtr{r]r)r#r�r�r��
descriptorr%r%r&rq%s
�
�zTestFromTxt.test_recordcCsztd�}tjddgddggtd�}tj|td�}t||�|�d�tjddgddggtd�}tj|td�}t||�dS)NrirSrYr2rZr[r)	rrHr]r_rQrrCr^r�)r#r�r�r�r%r%r&r`4s

zTestFromTxt.test_arraycCsVt�gd�t�}td�}tj|td�}t||�td�}tj|tdd�}t||�dS)Nrcr}r[r~r�r)rHr]r_rrQr�r#r�r�r�r%r%r&rd@s
zTestFromTxt.test_1DcCs\t�gd�t�}td�}tj|tddd�}t||�td�}tj|tddd�}t||�dS)Nr�r�r�r�r�z1,2,3,5# comment
)rHr]r_rrQrrSr%r%r&�
test_commentsLs
zTestFromTxt.test_commentscCspt�gd�t�}ttdd�}td�}tj|fddi|��}t||�td�}tj|fddi|��}t||�dS)	Nr�r�rr��skip_headerrSr�r�)rHr]r_�dictrrQrr�)r#r�rQr�r�r%r%r&r�Xs
zTestFromTxt.test_skiprowscCs�dd�tdd�D�}|�d�|�dd�td�D��d|d	<td
ddd
d�}tjtd�|��fi|��}tjdd�td�D�dd�dD�d�}t	||�dS)NcSsg|]}d|�qS)z# %ir%rur%r%r&r)fr*z0TestFromTxt.test_skip_footer.<locals>.<listcomp>rSr�zA, B, CcSsg|]}d|||f�qS)z
%i,%3.1f,%03sr%rur%r%r&r)hr*�3z99,99r�r�Tr�r�)r�rqrU�skip_footerr�cSs"g|]}d|d|d|f�qS)r*r%rur%r%r&r)lr*�)cSsg|]}|tf�qSr%rt�r(�_r%r%r&r)mr*�ABCr[)
r{r�rrVrHrQrr�r]r)r#r�rQr��ctrlr%r%r&�test_skip_footeres
�zTestFromTxt.test_skip_footerc
Cs>t��� }|�t�d}tttjt|�dd�tjt|�ddd�}t|t�	ddgddgddgd	d	gg��tjt|�d
d�}t|t�	ddgddgddgd	d	gg��d}tjt|�ddd�}t|t�	ddgddgd	d	gddgg��tjt|�d
dd�}t|t�	ddgddgd	d	gg��Wd�n1�s00YdS)
Nz1 1
2 2
3 3
4 4
5  
6  
7  
rS)rXF)rX�
invalid_raiser�r�r�r�r2z1 1
2  
3 3
4 4
5  
6 6
7 7
r�)
rr�rrr�rHrQrrr])r#r�ZbasestrrWr%r%r&�test_skip_footer_with_invalidps*

�
�((
�(
�z)TestFromTxt.test_skip_footer_with_invalidcCs�td�}tjdd��D}t�ddtj�tj|ddd�}t|djtju�Wd�n1s^0Yt�	dd	g�t�	d
dg�t�	dd
g�d�}t
|d|d�t
|d|d�t
|d|d�dS)Nz)gender age weight
M 64.0 75.0
F 25.0 60.0Trxrzr�r\rqrrr	ruryrvrzrjrkrlrm)rr}r~rrH�VisibleDeprecationWarningrQr�categoryr]r�r#r�rr�r�r%r%r&�test_header�s2�zTestFromTxt.test_headercCs�td�}tjdd��B}t�ddtj�tj|dd�}t|djtju�Wd�n1s\0Yt�	dd	g�t�	d
dg�t�	dd
g�t�	ddg�t�	ddg�g}t
|jjgd��t
|�D]\}}t
|d||�q�dS)Nz*A 64 75.0 3+4j True
BCD 25 60.0 5+6j FalseTrxrzrr[r�AsBCD�@�rvrzy@@y@@F)�f0�f1�f2Zf3r�zf%i)rr}r~rrHrbrQrrcr]rr\rqr�)r#r�rr�r�rvr]r%r%r&�test_auto_dtype�s2�zTestFromTxt.test_auto_dtypecCs:td�}tj|dd�}t�gd�gd�g�}t||�dS)Nz1 2 3 4
5 6 7 8
r[rc)r�r�r�r��rrHrQr]r�r#r�r�r�r%r%r&�test_auto_dtype_uniform�sz#TestFromTxt.test_auto_dtype_uniformcCsZtd�}t�dtfddtfdtfgfg�}tj||dd�}tjdd	g|d
�}t||�dS)Nr�rmrpr�r$r�rr�r�r[)rrHr\r_r^rQr]r�r#r�Z
fancydtyper�r�r%r%r&r��s
"zTestFromTxt.test_fancy_dtypecCsNddd�}td�}d}tj|||d�}||d<tjdd	g|d
�}t||�dS)N)�grWrrnrpsM 64.0 75.0
F 25.0 60.0rjrarqrsrwr[rm)r#rRr�rqr�r�r%r%r&�test_names_overwrite�s���z TestFromTxt.test_names_overwritecCs<tjtdd��t�d�Wd�n1s.0YdS)Nzfname must be a string,r��{)r�r�r�rHrQrKr%r%r&�test_bad_fname�szTestFromTxt.test_bad_fnamecCstd�}tjdd��D}t�ddtj�tj|ddd�}t|djtju�Wd�n1s^0Ytj	gd�d	d
t
fdtfgd�}t||�td
�}tjdd��D}t�ddtj�tj|ddd�}t|djtju�Wd�n1s�0Yt||�dS)NzN
#gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        Trxrzr)rqr\r))rtr�gfffffR@)rxr
g
ףp=*M@)rtr�g=
ףp�5@)rkrrlrmr[sO
# gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        �
rr}r~rrHrbrQrrcr]r_r^r)r#r�rr�r]r%r%r&�test_commented_header�s2
�
2z!TestFromTxt.test_commented_headercCsJtd�}tj|ttfddd�}tjddgdtfdtfgd�}t||�dS)	Nzcol1 col2
 1 2
 3 4T)r\r�rqrjrkZcol1Zcol2r[�rrHrQr_r]rrnr%r%r&�test_names_and_comments_none�sz(TestFromTxt.test_names_and_comments_nonec
Cs�t���}tj�|d�}t|d�� }|�d�d��Wd�n1sF0Yt��Ht�	t
��tj|dd�Wd�n1s�0YWd�n1s�0YWd�n1s�0YdS)Nrr��ϖr�asciirA)
rrNr�r�r�r'rSrr�r��UnicodeDecodeErrorrHrQ)r#rZfpathr�r%r%r&�test_file_is_closed_on_error�s.z(TestFromTxt.test_file_is_closed_on_errorcCs�td�}tjdd��F}t�ddtj�tj|dddd�}t|djtju�Wd�n1s`0Ytj	d	d
dt
fdtfgd
�}t||�dS)N�A B C D
 aaaa 121 45 9.1Trxrzr��A�C�D)r�rqr\r)r��-�333333"@�r�|S4r�r�r[rurdr%r%r&�test_autonames_and_usecols�s�2�z&TestFromTxt.test_autonames_and_usecolscCsJtd�}tj|tdddd�idd�}t�dd	gd
dggt�}t||�dS)Nr�r�r2cSst|pd�Sr�r�r�r%r%r&r\r*z:TestFromTxt.test_converters_with_usecols.<locals>.<lambda>r�r�rYr�r�r�rwrnr%r%r&r�s

�z(TestFromTxt.test_converters_with_usecolsc	Cs�td�}tjdd��P}t�ddtj�tj|dddddd	�id
�}t|djtju�Wd�n1sj0Ytj	dd
dt
fdtfgd�}t||�dS)Nr}Trxrzrr~r�cSsdt|�S)NrYr�r�r%r%r&r\r*zDTestFromTxt.test_converters_with_usecols_and_names.<locals>.<lambda>)r�rqr\r]r)r��Zr�r�r�r[rurdr%r%r&�&test_converters_with_usecols_and_namess

�2�z2TestFromTxt.test_converters_with_usecols_and_namescCsbddd�i}td�}tj|ddddg|d�}tjtdd	d
�dfdtjfdtfgd�}t||�dS)
N�datecSs
t|d�S�Nz%Y-%m-%d %H:%M:%SZ)r7r�r%r%r&r\r*z9TestFromTxt.test_converters_cornercases.<locals>.<lambda>�2009-02-03 12:00:00Z, 72214.0r�r��r�r\rqr]��rYr2�`��@r[)rrHrQr]rZobject_r^r�r#Z	converterr�r�r�r%r%r&�test_converters_cornercasess�
��z'TestFromTxt.test_converters_cornercasescCs\ddd�i}td�}tj|ddddg|d�}tjtdd	d
�dfddtfgd
�}t||�dS)Nr�cSst�t|d��Sr�)rHZ
datetime64r7r�r%r%r&r\&r*z:TestFromTxt.test_converters_cornercases2.<locals>.<lambda>r�r�r�r�r�rYr2r�)r�zdatetime64[us]r[)rrHrQr]rr^rr�r%r%r&�test_converters_cornercases2#s�
�
�z(TestFromTxt.test_converters_cornercases2cCsbtd�}tj|dddd�id�}t|ddg�|�d�tj|dd	d
d�id�}t|ddg�dS)
Nz1 21
  3 42
r�rcSs
t|d�Sr�r�r�r%r%r&r\2r*z3TestFromTxt.test_unused_converter.<locals>.<lambda>r�r�r�rScSs
t|d�Sr�r�r�r%r%r&r\7r*r�r�)rrHrQrrC�r#r�r�r%r%r&r�.s
�

�z!TestFromTxt.test_unused_convertercCsFdd�}dd�}td�}t||d�ddd�}tttj|fi|��dS)NcSs4td|��vr|��dp0d|��vr.|��p0d�S)N�rr�rR�r^�lowerr
r�r[r%r%r&r\;s�z4TestFromTxt.test_invalid_converter.<locals>.<lambda>cSs4td|��vr|��dp0d|��vr.|��p0d�S)N�%rrRr�r[r%r%r&r\=s�zgD01N01,10/1/2003 ,1 %,R 75,400,600
L24U05,12/5/2003, 2 %,1,300, 150.5
D02N03,10/10/2004,R 1,,7,145.55r:r�)r]r�r\)rrVrr
rHrQ)r#Z
strip_randZ	strip_perr$rQr%r%r&�test_invalid_converter:s
�z"TestFromTxt.test_invalid_convertercCsHtd�}dd�}tj|dd|id�}t�ddgd	d
gg�}t||�dS)Nz	q1,2
q3,4cSst|dd��Srdrtr�r%r%r&r\Jr*z;TestFromTxt.test_tricky_converter_bug1666.<locals>.<lambda>r�r)r�r]r�r�r�r�rm)r#r$Zcnvr�r�r%r%r&�test_tricky_converter_bug1666Gs
z)TestFromTxt.test_tricky_converter_bug1666cCs|d}tjt|�dtdtid�}tjdgddtfdtfgd	�}t||�tjt|�dtdtid�}t�gd
��}t||�dS)Nz2009; 23; 46r�rr�)Z2009�7@�.)rir�rjrkr[)gd�@r�r�)rHrQrr^r4r]r)r#�dstrr�r�r%r%r&�test_dtype_with_convertersOs

��


�z&TestFromTxt.test_dtype_with_converterscs�d}ddddd��gd�}ttt�fdd	�d
�}tjt|�|dd|d�}tjjgd
�|d�}t||�gd�}tjt|�|ddd|d�}tjjgd�|d�}t||�dS)Nz!1,5,-1,1:1
2,8,-1,1:n
3,3,-2,m:n
rrSrYr2)z1:1z1:nzm:1zm:n)��e1rn��e2rn)Ze3Zi2�r�Zi1cs�|��Sr rZ)rh�Zdmapr%r&r\_r*zDTestFromTxt.test_dtype_with_converters_and_usecols.<locals>.<lambda>)rrSrYr2r�)r\r�rqr]))rSr�r�r)rYr�r�rS)r2r2���r2r[)r�r�r�)rrSr2)r\r�r�rqr]))rSr�r)rYr�rS)r2r2r2)r_rH�
recfromcsvrZrecr]r)r#r�Zdtyp�convr�r�r%r�r&�&test_dtype_with_converters_and_usecols[s�
�z2TestFromTxt.test_dtype_with_converters_and_usecolscCs d}dtfdtfg}dd�}d|i}tjt|�d||d�}tjdtd	dd�fd
tddd�fg|d
�}t||�ddtfdtfgfg}tt	d��&tjt|�d||d�}Wd�n1s�0Ydtfdtfdgfg}tt	d��&tjt|�d||d�}Wd�n1�s0YdS)Nr�r�r�cSst|��d�Sr�r�r�r%r%r&r\or*z4TestFromTxt.test_dtype_with_object.<locals>.<lambda>rSr�r�r�rYr�r�r[ZnestzNested fields.* not supported.*)
r_rarHrQrr]rrr�NotImplementedErrorr�r%r%r&r�js4��
��$��z"TestFromTxt.test_dtype_with_objectcCs(tjtd�td�}tjtd�td�}dS)N�1r[�string)rHrQrra)r#�parsedr%r%r&�#test_dtype_with_object_no_converter�sz/TestFromTxt.test_dtype_with_object_no_convertercCsHtd�}tj|ddtddtid�}tjdgddtfgd	�}t||�dS)
Nzskip,skip,2001-01-01,1.0,skipr�r:rY)r�rqr\r�r])�
2001-01-01r�)r�|S10rr[)rrHrQr^r4r]rrnr%r%r&�'test_userconverters_with_explicit_dtype�s�
�z3TestFromTxt.test_userconverters_with_explicit_dtypec
Cs�d}t��l}t|d��"}|�d|d�Wd�n1s>0Ytj|ddtddtjjidd	�}Wd�n1s|0Ytjd
|�	d�dfgdd
tfgd�}t
||�dS)Nrr�sskip,skip,2001-01-01s	,1.0,skipr�r:rYr)r�rqr\r�r]rr�r�)rz|U11rr[)rr�r'rHrQr^�compatZunicoder]r5r)r#rr�r�r�r�r%r%r&�,test_utf8_userconverters_with_explicit_dtype�s0�$
�z8TestFromTxt.test_utf8_userconverters_with_explicit_dtypecCs6td�}t�|�}t�gd�gd�g�}t||�dS)Nz1  2  3  4   5
6  7  8  9  10)r�r�r�r��@)r��@r��"@g$@rmrnr%r%r&�test_spacedelimiter�s

�zTestFromTxt.test_spacedelimitercCs@d}tjt|�dd�}t�gd�gd�gd�g�}t||�dS)Nz  1  2  3
  4  5 67
890123  4r2)r�r�)rZr��C)izrsrZ�rHrQrr]rrnr%r%r&�test_integer_delimiter�sz"TestFromTxt.test_integer_delimitercCs@td�}tj|tdddd�id�}t�gd�t�}t||�dS)Nr�r�r2cSst|pd�Sr�r�r�r%r%r&r\�r*z*TestFromTxt.test_missing.<locals>.<lambda>r�r�rwrnr%r%r&r��s

�zTestFromTxt.test_missingcCshd}tjt|�ddd�}t�dtjdtjfdtjdfg�}tjgd	�td
�}t|j|�t|j|�dS)Nz1	2	3
	2	
1		3rT)r��usemaskr�rYrSr2)�rrr�rSrrS�rrSrr[)	rHrQrr]�nan�boolrr��mask)r#r�r�Zctrl_dZctrl_mr%r%r&�test_missing_with_tabs�s�"z"TestFromTxt.test_missing_with_tabscCs�t�ddgddggt�}t�}t�||�|�d�tj|tdd�}t||dd�df�t�gd�gd	�gt�}t�}t�||�|�d�tj|td
d�}t||dd�dd�f�|�d�tj|tt�ddg�d�}t||dd�dd�f�dS)NrSrYr2rZrr�r�r�r�rj)rHr]r^rr�rCrQrrSr%r%r&r��s


zTestFromTxt.test_usecolscCsBd}tjt|�ddd�}tjddgdd�d	D�d
�}t||�dS)N�1 2 3
4 5 6�a, b, cza, c)rqr�r��rZr�cSsg|]}|tf�qSr%rtrZr%r%r&r)�r*z3TestFromTxt.test_usecols_as_css.<locals>.<listcomp>�acr[r��r#r�r�r]r%r%r&�test_usecols_as_css�s
�zTestFromTxt.test_usecols_as_csscCsZtd�}ddg}ddg}tj|dtt||��d�}t|ddd	g�t|dd
dg�dS)NzJOE 70.1 25.3
BOB 60.5 27.9r�r�r�r�r�r�r�r�r�r�)rrHrQrr�r)r#r�rqr�r�r%r%r&�"test_usecols_with_structured_dtype�s�z.TestFromTxt.test_usecols_with_structured_dtypecCs*tjtd�dd�}t|t�ddg��dS)Ns1 2 3
4 5 6rr�r�r�)rHrQrrr])r#r�r%r%r&�test_usecols_with_integer�sz%TestFromTxt.test_usecols_with_integercCsxtjddgdtfdtfgd�}d}tdd�}tjt|�fd	d
i|��}t||�tjt|�fd	di|��}t||�dS)Nr�r�rWr�r[r�r�)rqr��rr�)rWr�)rHr]r^rVrQrr)r#r]r�rQr�r%r%r&�test_usecols_with_named_columns�s

��z+TestFromTxt.test_usecols_with_named_columnscCstt��Z}|jdd�t�}t�|�}t|t�g��tj|dd�}t|t�g��Wd�n1sf0YdS)Nzgenfromtxt: Empty input file:)�messagerS)rU)rr�rrHrQrr])r#r�r�r�r%r%r&r��s
zTestFromTxt.test_empty_filecCs\td�}t�dtfddtfdtfgfg�}tj||ddd�}tjd	d
g|d�}t||�dS)Nr�rmrpr�r$r�T)r\r�r�r�r�r[)	rrHr\r_r^rQ�mar]rrpr%r%r&�test_fancy_dtype_alts
"z TestFromTxt.test_fancy_dtype_altcCshtd�}t�ddtfdtfdtdfg�}tj||d�}tjdd	d
gd�gd�gfg|d�}t||�dSr�)rrHr\r^r_rQr]rr�r%r%r&r�s��zTestFromTxt.test_shaped_dtypecCs�td�}tdddd�}tj|fddd�|��}tjddgd	d
gdtfdtfgd
�}t||�t|j|j�|�	d�tj|fddi|��}tjddgd	d
gdt
fdt
fgd
�}t||�t|j|j�dS)N�
A,B
0,1
2,N/Ar��N/AT�r��missing_valuesrq�r\r�r�rYr��FF�FTr�B�r�r\rr�)rrVrHrQr�r]r_rr�rCr^�r#r�rQr�r�r%r%r&�test_withmissings"
�


�
zTestFromTxt.test_withmissingcCs�d}tdddd�}dtfdtfdtfg}tjt|�fdd	i|��}tjgd
�gd�|d�}t	||�||d
<tjt|�fdddd�dd�|��}tjgd
�gd�|d�}t	||�tjt|�fdddd�dd�|��}tjgd
�gd�|d�}t	||�dS)Nz4A, B, C
0, 0., 0j
1, N/A, 1j
-9, 2.2, N/A
3, -99, 3jr�T)r\r�rqrr�r�r�r�))rrRy)rSr�r)r4g������@��8��)r2���y@)r�r�)rrrSr�r�r\r4r�r��rrSrY)r�r�)r�r�r�r�)rr�r�)
rVr_r^r�rHrQrr�r]r)r#r�Z
basekwargsZmdtyper�r�r%r%r&�test_user_missing_values'sB�
�
��
�

��
�z$TestFromTxt.test_user_missing_valuesc	Cs8tjddgdtfdtfgd�}d}tdtdd	d
dd�d
d
dd�d�}tjt|�fi|��}tjddgdd�dD�d�}t||�tjt|�fddi|��}tjddgdd�dD�d�}t||�d}tjt|�dtdd
d�}t�gd�gd�g�}t||�tjt|�dtddd�}t�gd�gd �g�}t||�dS)!N)rr2)rZr�rWr�r[zN/A, 2, 3
4, ,???r�za,b,cr�r�z???)rr�rYrr�)r�r\rqr��filling_values)rrYr2)rZrr�cSsg|]}|tf�qSr%r�rZr%r%r&r)Rr*z8TestFromTxt.test_user_filling_values.<locals>.<listcomp>�abcr�r�cSsg|]}|tf�qSr%r�rZr%r%r&r)Vr*r�z1,2,*,4
5,*,7,8
�*)r�r\r�r�)rSrYrrZ)r�rr�r�r�)rSrYr�rZ)r�r�r�r�)rHr]r_rVrQrr)r#r]r�rQr�Zdata2r%r%r&�test_user_filling_valuesGs6

�
�

�
�z$TestFromTxt.test_user_filling_valuescCs^td�}tj|dddddd�}tjddgdd	gd
tfdtfgd�}t||�t|j|j�dS)
NzA,B
0,1.5
2,-999.00r�z-999.0T)r\r�r�rqr�)rr�)rYg�r�r�rr�r�)	rrHrQr�r]r_r^rr�rnr%r%r&�test_withmissing_floatcs
�
�
z"TestFromTxt.test_withmissing_floatcCsNtd�}tj|dddd�}tjgd�gd�ggd�gd�gd�}t||�dS)	Nz1 2 3
4 5 6
�2,5T�r\r�r�r�r�r�)r�)rrHrQr�r]rrnr%r%r&�test_with_masked_column_uniformms�&z+TestFromTxt.test_with_masked_column_uniformcCsRtd�}tj|dddd�}tjddgddgdtfd	tfd
tfgd�}t||�dS)NzTrue 2 3
False 5 6
r�Tr�r�)rr�r�r�rirjrkr�)rrHrQr�r]r�r_rrnr%r%r&�test_with_masked_column_variousus�
�z+TestFromTxt.test_with_masked_column_variouscs�dgd}td�D]}d|d|<q|�dd�td�|���td	dd
d����fdd
�}tt|�}tt|�d�t|t	j
ddd�dD�d����d�tt
t	j�d	d
d�dS)N�
1, 1, 1, 1, 1r-r��2, 2, 2, 2 2r�r�
a, b, c, d, er�r�T�r�r\rqcstj�fddi���S)Nr_F�rHrQr%�rQ�mdatar%r&r��sz)TestFromTxt.test_invalid_raise.<locals>.fr�cSsg|]}|tf�qSr%r�rZr%r%r&r)�r*z2TestFromTxt.test_invalid_raise.<locals>.<listcomp>�abcder[�r�rq)r{�insertrr�rVrrr�lenrHr|rCrr�rQ)r#r�rvr��mtestr%r�r&�test_invalid_raises



�zTestFromTxt.test_invalid_raisecs�dgd}td�D]}d|d|<q|�dd�td�|���td	dd
dd����fd
d�}tt|�}tt|�d�t|t	j
ddd�dD�d����d�t	j�fddi���}tt|�d�t	j
ddd�dD�d�}d|dd�td�D�<t||�dS)Nr�r-r�r�r�rr�r�r�TF)r�r\rqr_cstj�fddi���S)Nr�)rrZr�r%r�r%r&r��sz6TestFromTxt.test_invalid_raise_with_usecols.<locals>.fr�cSsg|]}|tf�qSr%r�rZr%r%r&r)�r*z?TestFromTxt.test_invalid_raise_with_usecols.<locals>.<listcomp>Zaer[r�rcSsg|]}|tf�qSr%r�rZr%r%r&r)�r*�abr�cSsg|]}d|�qS)r�r%rZr%r%r&r)�r*)
r{r�rr�rVrrrr�rHr|rCrQ)r#r�rvr�r�r�r%r�r&�test_invalid_raise_with_usecols�s$
�

z+TestFromTxt.test_invalid_raise_with_usecolscCsVdgd}td�|��}ddd�i}td|dd	�d
D�d�}tttj|fi|��dS)Nz1, 1, 1, 1, -1.1r-r�rZcSsd|��S)Nz(%s)rZr[r%r%r&r\�r*z5TestFromTxt.test_inconsistent_dtype.<locals>.<lambda>r�cSsg|]}|tf�qSr%r�rZr%r%r&r)�r*z7TestFromTxt.test_inconsistent_dtype.<locals>.<listcomp>r�)r�r]r\)rr�rVrr�rHrQ)r#r�r�r]rQr%r%r&�test_inconsistent_dtype�s
�z#TestFromTxt.test_inconsistent_dtypecCsLd}tjt|�dddd�}tjddgdtfdtfd	tfgd
�}t||�dS)N�0, 1, 2.3
4, 5, 6.7r��f%02i�r�r\Z
defaultfmt�rrS�ffffff@)rZr��������@Zf00Zf01Zf02r[)rHrQrr]r_r^r�r#r�r�r]r%r%r&�test_default_field_format�s
�
�z%TestFromTxt.test_default_field_formatcCsBd}tjt|�dtdd�}tjgd�gd�gtd�}t||�dS)Nr�r�r�r��rRr�r��r�r�r�r[�rHrQrr^r]rr�r%r%r&�test_single_dtype_wo_names�s
�z&TestFromTxt.test_single_dtype_wo_namescCsDd}tjt|�dtdd�}tjddgdd�d	D�d
�}t||�dS)Nr�r�r�r�r�r�cSsg|]}|tf�qSr%rtrZr%r%r&r)�r*zBTestFromTxt.test_single_dtype_w_explicit_names.<locals>.<listcomp>r�r[rr�r%r%r&�"test_single_dtype_w_explicit_names�s
�
�z.TestFromTxt.test_single_dtype_w_explicit_namescCsDd}tjt|�dtdd�}tjddgdd�d	D�d
�}t||�dS)Nza, b, c
0, 1, 2.3
4, 5, 6.7r�Tr�r�r�cSsg|]}|tf�qSr%rtrZr%r%r&r)�r*zBTestFromTxt.test_single_dtype_w_implicit_names.<locals>.<listcomp>r�r[rr�r%r%r&�"test_single_dtype_w_implicit_names�s
�
�z.TestFromTxt.test_single_dtype_w_implicit_namescCsRd}tjt|�dtttfdd�}tjddgdtfdtfd	tfgd
�}t||�dS)Nr�r�zf_%02ir�)rr�r�)rZr�r�Zf_00Zf_01Zf_02r[�rHrQrr_r^r]rr�r%r%r&�test_easy_structured_dtype�s
�
�z&TestFromTxt.test_easy_structured_dtypecCs,d}tddd�}tjdd��J}t�ddtj�tjt|�fi|��}t|dj	tju�Wd�n1sl0Ytj
d	gd
dtfdgd
�}t||�tjdd��N}t�ddtj�tjt|�fddi|��}t|dj	tju�Wd�n1s�0Ytj
dgddtfdgd
�}t||�dS)Nz01/01/2003  , 1.3,   abcder�)r�r\Trxrzrr)z01/01/2003  ��������?z   abcde)riz|S12rj)rkrr[Z	autostrip)z
01/01/2003rr�)rir�)rkz|S5)
rVr}r~rrHrbrQrrrcr]r^r)r#r�rQrr�r]r%r%r&�test_autostrip�s$2�
2�zTestFromTxt.test_autostripcCs�d}tjt|�dddd�}dtfdtfdtfg}tjd|d	�}t||�tjt|�dddd
d
d�}dtfd
tfdtfg}tjd|d	�}t||�tjt|�dddd
d�}dtfdtfdtfg}tjd|d	�}t||�dS)NzA.A, B (B), C:C
1, 2, 3.14r�T�r�rqr\�AA�B_B�CC)rSrYg��Q�	@r[r�r�rqr\Z
replace_space�deletechars�A.A�B (B)�C:C�r�rqr\r
�B_(B)r�r#r�r�Z
ctrl_dtyper]r%r%r&�test_replace_space�s*
�

�

�zTestFromTxt.test_replace_spacecCs�d}tjt|�ddtd�}dtfdtfdtfg}tjd|d	�}t||�tjt|�ddtd
d
d�}dtfd
tfdtfg}tjd|d	�}t||�tjt|�ddtd
d�}dtfdtfdtfg}tjd|d	�}t||�dS)NzA.A, B (B), C:C
1, 2, 3r�Trr	r
rr�r[rrrrrrr)rHrQrr_r]rrr%r%r&�test_replace_space_known_dtype
s*
�

�

�z*TestFromTxt.test_replace_space_known_dtypecCs�d}tddd�}tjddgdd�d	D�d
�}tjt|�fddi|��}t||�tjddgdd�d	D�d
�}tjt|�fi|��}dS)
NzA,,C
0,1,2
3,4,5r�Tr�r�r�cSsg|]}|tf�qSr%r�rZr%r%r&r)(r*z5TestFromTxt.test_incomplete_names.<locals>.<listcomp>)rrir�r[r\cSsg|]}|tf�qSr%rtrZr%r%r&r)-r*)rVrHr]rQrr�r#r�rQr]r�r%r%r&�test_incomplete_names"s
�

�z!TestFromTxt.test_incomplete_namescCsPd}tjt|�tttfdd�}tjddgdtfdtfdtfgd�}t||�dS)	Nz1 2 3
 4 5 6rWrar�r�rirjr[rr�r%r%r&�test_names_auto_completion0s

�
�z&TestFromTxt.test_names_auto_completioncCs�d}d}tjt|�tttfdddd�}t|jj|�tjt|�tttfdddd�}t|jj|�tjt|�tdddd�}t|jj|�dS)Nz'A,B,C,D,E
0,1,2,3,4
0,1,2,3,4
0,1,2,3,4)rr��Er�)rrYrZT)r\r�r�rq)rHrQrr_rr\rq)r#r�Z
ctrl_namesr�r%r%r&�test_names_with_usecols_bug16369s"

�

�
�z+TestFromTxt.test_names_with_usecols_bug1636cCs�d}tdddd�}tjddgdtfdtfd	tfgd
�}tjt|�fi|��}t||�tdddd�}tjddgdtfdtfd	tfgd
�}tjt|�fi|��}t||�dS)Nz-    A    B   C
    0    1 2.3
   45   67   9.)r�r�rZTrr�)r�r�r�rr�r�r[r�)rVrHr]r_r^rQrrrr%r%r&�test_fixed_width_namesLs
�

�z"TestFromTxt.test_fixed_width_namescCsVd}tdddd�}tjgd�gd�gd�gtd�}tjt|�fi|��}t||�dS)	Ns1, 2, 3
1, , 5
0, 6, 
r�r�)r�r\r�r�)rSr�r�)rr�r�r[)rVrHr]r_rQrrrr%r%r&�test_filling_values[s
 zTestFromTxt.test_filling_valuescCs�tjdd��J}t�ddtj�tjtd�dddd�}t|djtju�Wd�n1s\0Yt	|d	d
�tjdd��J}t�ddtj�tjtd�dddd�}t|djtju�Wd�n1s�0Yt	|d	d�dS)
NTrxrzrztest1,testNonetherestofthedatar��r\r�r�rrSstestNonetherestofthedataztest1, testNonetherestofthedatas testNonetherestofthedata)
r}r~rrHrbrQrrrcr)r#rr�r%r%r&�test_comments_is_nonecs
�2
�2z!TestFromTxt.test_comments_is_nonecCs�d}d}d|d}|||}tjdd��J}t�ddtj�tjt|�ddd	d
�}t|djtju�Wd�n1s|0Yt	|dd
�t	|dd|�t	|dd�tjt|�ddd	dd�}t	|dd�t	|dd|�
d��t	|dd�tjdd��N}t�ddtj�tjtd|�ddd	d
�}t|djtju�Wd�n1�sb0Yt	|dd�t	|dd|�dS)Ns����norm1,norm2,norm3
�test1,testNonethe�,test3
Trxrzrr�rr)rSr�test1)rSrS�testNonetherj�test3r1�r\r�r�r�test1�testNonethe�test3�
0,testNonetherirj)r}r~rrHrbrQrrrcrr5)r#r1�norm�encr$rr�r%r%r&�test_latin1rs8
�2
��4zTestFromTxt.test_latin1cCs6d}|jt|�ddd�}t|t�|�d�����dSrV)rDrrrHr]r5r
rWr%r%r&�test_binary_decode_autodtype�sz(TestFromTxt.test_binary_decode_autodtypecCs�d}d}d|d}|||}tjdd��J}t�ddtj�tjt|�ddd	d
�}t|djtju�Wd�n1s|0Yt�	gd�d
d|dggd�g�}t
||�dS)Nrrr r!Trxrzrr�rr)snorm1snorm2snorm3r"r#r$)r}r~rrHrbrQrrrcr]r)r#rr*r+r$rr��ctlr%r%r&�test_utf8_byte_encoding�s 
�2�z#TestFromTxt.test_utf8_byte_encodingc	Cs6d}t���}t|d��&}|�d|dd�Wd�n1sD0Ytj|ddddd�}tjd	d
|�d�dgd	d
|�d�dggtjd�}t||�t|d��}|�d
|�Wd�n1s�0Ytj|ddddd�}t	|dd�t	|dd
|�d��Wd�n1�s(0YdS)Nrr�r r!rYr�rr%r&r'r(r[r)rirrj)
rr�r'rHrQr]r5rrr)r#rr�r�r�r.r%r%r&�test_utf8_file�s*
4
���
,
�zTestFromTxt.test_utf8_filec		Cs^d}d}zt��}|�|�Wn ttfy>t�d�Yn0t���}t�	|d��>}|�
d�|�
d|d�|�
d|d	�Wd�n1s�0Ytjd
d��F}t�
dd
tj�tj|dddd�}t|djtju�Wd�n1s�0Ytjgd�d|dgdd|dggtjd�}t||�Wd�n1�sP0YdS)NryuöüözTSkipping test_utf8_file_nodtype_unicode, unable to encode utf8 in preferred encodingr?znorm1,norm2,norm3
znorm1,z,norm3
ztest1,testNonethez,test3
Trxrzrr�rr)�norm1Znorm2�norm3r1r2r&r'r(r[)r4r5rS�UnicodeError�ImportErrorr�r)rrar�r'r}r~rrHrbrQrrcr]rr)	r#rr1rr�r�rr�r.r%r%r&�test_utf8_file_nodtype_unicode�s8

0�
�2��z*TestFromTxt.test_utf8_file_nodtype_unicodecCs�td�}tdddd�}tj|fi|��}tjddgdtfd	tfgd
�}tt|tj��t	||�td�}tj|fddd�|��}t
jdd
gddgdtfd	tfgd�}t	||�t	|j|j�t	|jddg�dS)N�A,B
0,1
2,3r�r�Tr�rr:rr�r[r�r�r�r�r�r�rrY)
rrVrH�
recfromtxtr]r_rrF�recarrayrr�r�rr�r%r%r&�test_recfromtxt�s"
�

�
zTestFromTxt.test_recfromtxtcCs�td�}tdddd�}tj|fddi|��}tjddgdtfd	tfgd
�}tt|tj��t	||�td�}tj|fddd�|��}t
jdd
gddgdtfd	tfgd�}t	||�t	|j|j�t	|jddg�td�}tj|dd�}tjddgdtfdtfgd
�}tt|tj��t	||�td�}dtfdt
fg}tj|d|d�}tjddg|d
�}tt|tj��t	||�td�}tj|ddd�id�}tjddgdtdffgd
�}t	|j|j�t	||�dS)Nr6r�T�r�rqZcase_sensitiver\rr:rr�r[r�r�r�r�r�r�rrY)r�rWr�)r�r\zcolor
"red"
"blue"cSs
|�d�S)N�")r�r[r%r%r&r\	r*z-TestFromTxt.test_recfromcsv.<locals>.<lambda>)r])Zred)ZblueZcolorrZ)rrVrHr�r]r_rrFr8rr�r�rr^r4r\)r#r�rQr�r�r\r%r%r&�test_recfromcsv�sJ
�

�

�

�
zTestFromTxt.test_recfromcsvcCs�d}t|�}tj|dd�}t�|�}t|ddgddgddgg�t|d	d
gddgg�tttjt|�d
d�d}tjt|�dd�}t�ddgddgg�}t||�tttjt|�ddd�tttjt|�dd�t���}|�t	�tjt|�ddd�}t�ddgddgddgddgg�}t||�tjt|�ddd�}t�ddgddgddgddgg�}t||�Wd�n1�sx0Yd}t|�}tj|dddd�}tjgd�ddgd�}t||�tj|d|j
d�}tjddgddgd�}t||�dS) Nz1 2
3 4
5 6
7 8
9 10
r2)r rSrYrZr�r�r�r�r�r�rz1 1
2 2
0 
3 3
4 4
5  
6  
7  
r�r�)rXr F)r r_r�r�z"a b
#c d
1 1
2 2
#0 
3 3
4 4
5  5
T)rUr rq))r�r�)r�r�)r�r�)r��<f8)r|r=r[)r r\)r�r�)r�r�)rrHrQrrr�r]rr�rr\)r#r�r�Za1Za2r�r�r�r%r%r&r!	sF

�
"
"*
�

�zTestFromTxt.test_max_rowsc
Cs�t�d��d�}d}|D]~}d|d}t��N}t|d��}|�|�Wd�n1sZ0Yt�|�}Wd�n1s�0Yt||�qdS)Nr�r:r;r=r>r)rHrBrCrr�r'rQr)r#r�rFrGr�rAr�rHr%r%r&�test_gft_using_filenameM	s((z#TestFromTxt.test_gft_using_filenamec	
Cs�t�d��d�}d}|D]�}d|d}t�}tj|dd��}|�t|��Wd�n1s`0Ytdd	��T}t	|d��}|�|�Wd�n1s�0Yt
t�|�|�Wd�q1s�0YqdS)
Nr�r:r;r=r>r�Zfileobjr@z.gz2r�)rHrBrCrrJ�GzipFiler'r
rr�rrQ)	r#rErFrGr�r$rqrAr�r%r%r&�test_gft_from_gzip[	s,(zTestFromTxt.test_gft_from_gzipcCs(dd�}t�|��}t|t�d��dS)Ncss td�D]}td|�VqdSr)r{r
rr%r%r&rm	sz3TestFromTxt.test_gft_using_generator.<locals>.countr�)rHrQrrBrr%r%r&�test_gft_using_generatork	sz$TestFromTxt.test_gft_using_generatorcCs�td�}tj|dd�}t|jjgd��t|jdtk�t|jdtjk�t|jdtj	k�t
|dd�t|dd�t|dd	�dS)
Nz%73786976294838206464 17179869184 1024r[)rirjrkrirjrkgDli)rrHrQrr\rqrr^r�Zint_rr�r%r%r&�test_auto_dtype_largeintt	sz$TestFromTxt.test_auto_dtype_largeintcCs^td�}tj|ddd�\}}}t|t�gd���t|t�gd���t|t�gd���dS)Nz1,2,3
4,5,6
7,8,9
0.0,1.0,2.0r�T)r�r)r�r�r�rR)r�r�r�r�)r�r�r�r�)rrHr�rr])r#r�rWr�r�r%r%r&�test_unpack_float_data�	s
z"TestFromTxt.test_unpack_float_datacCs�td�}ddd�}tj||dd�\}}}t|jt�d��t|jt�d��t|jt�d	��t|t�d
dg��t|t�dd
g��t|t�ddg��dS)NrrrnrpTrrornr�rr	r�r
rr)rrHrQrr\rr]r
r%r%r&r�	s
z"TestFromTxt.test_unpack_structuredcCsrtd�}t�ddg�t�ddg�t�ddg�f}tj|ddd	d
�}t||�D] \}}t||�t|j|j�qLdS)NzM 21 72.
F 35 58.rtrxr�r
rrTzutf-8)r\rr)rrHr]rQr�rrr\)r#r��expectedr�rJ�resultr%r%r&�test_unpack_auto_dtype�	s(
z"TestFromTxt.test_unpack_auto_dtypecCsRtd�}ddd�}tjddgtjd�}tj||dd	�}t||�t|j|j�dS)
Nz21
35r��rnrpr�r
r[Tr)rrHr]r{rQrrr\�r#r�r�rEr�r%r%r&�test_unpack_single_name�	s

z#TestFromTxt.test_unpack_single_namecCsZtd�}ddd�}tjdtjd�}tj||dd�}t||�td	|j�t|j|j�dS)
Nr�r�rHrpr�r[Trr%)	rrHr]r{rQrrrUr\rIr%r%r&�test_squeeze_scalar�	s

zTestFromTxt.test_squeeze_scalar�ndimr�)rLcCs6d}tjt|�|d�}tjt|�|d�}t||�dS)NZ42r)rHr�rrQr)r#rLr�rWr�r%r%r&r�	szTestFromTxt.test_ndmin_keywordN)^r-r.r/r1rHrQrDrqr`rdrTr�r^r`rerlror�rrrtrvrxr|r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrrrrrrrrrr,r-r/r0r5r9r<r!r>rArBrCrDrrGrJrKr�r�r8r_rr%r%r%r&rP"s�


	

	

	 


					#)6	


rPc@sTeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�
TestPathUsagecCsltdd��N}t|�}t�ddgddgg�}t�||�t�|�}t||�Wd�n1s^0YdS)N�.txtr�g�������?rYr2rZ)rrrHr]r�r�r)r#r�rWrmr%r%r&�test_loadtxt�	s
zTestPathUsage.test_loadtxtcCsntdd��P}t|�}t�ddgddggt�}t�||�t�|�}t||�Wd�n1s`0YdS)Nr�r�rSrYr2rZ)rrrHr]r_r�rIr�r#r�rWr�r%r%r&�test_save_load�	s
zTestPathUsage.test_save_loadcCs�tdd��f}t|�}t�ddgddggt�}t�||�tj|dd�}t||�~trbt	�t	�Wd�n1sv0YdS)	Nr�r�rSrYr2rZrh�rg)
rrrHr]r_r�rIrrrrPr%r%r&�test_save_load_memmap�	s
z#TestPathUsage.test_save_load_memmapcCs�tdd���}t|�}t�ddgddggt�}t�||�tj|dd�}d	|d
d
<d	|d
d
<~trpt�t�t�|�}t	||�Wd�n1s�0YdS)Nr�r�rSrYr2rZzr+rRr�r)
rrrHr]r_r�rIrrr)r#r�rWr�r�r%r%r&�test_save_load_memmap_readwrite�	s
z-TestPathUsage.test_save_load_memmap_readwritec	Cs|tdd��^}t|�}tj|dd�t�|��}t|dd�Wd�n1sP0YWd�n1sn0YdS�Nr�r�r�r�r�)rrrHr�rIr�r#r�r�r%r%r&�test_savez_load�	s
zTestPathUsage.test_savez_loadcCsdtdd��F}t|�}tj|dd�t�|�}t|dd�|��Wd�n1sV0YdSrU)rrrHZsavez_compressedrIrrGrVr%r%r&�test_savez_compressed_load
s
z(TestPathUsage.test_savez_compressed_loadcCsdtdd��F}t|�}t�ddg�}t�||�t�|�}t||�Wd�n1sV0YdS)NrNr�rjrk)rrrHr]r�rQrrPr%r%r&�test_genfromtxt
s
zTestPathUsage.test_genfromtxtc	Cs�tdd���}t|�}|�d��}|�d�Wd�n1s>0Ytdddd�}tj|fi|��}tjd	d
gdtfdtfgd
�}t	t
|tj��t||�Wd�n1s�0YdS)NrNr�rr6r�r�Tr�rr:rr�r[)
rrr�r'rVrHr7r]r_rrFr8r�r#r�r�rQr�r�r%r%r&r9
s(
�zTestPathUsage.test_recfromtxtc	Cs�tdd���}t|�}|�d��}|�d�Wd�n1s>0Ytdddd�}tj|fddi|��}tjd	d
gdtfdtfgd
�}t	t
|tj��t||�Wd�n1s�0YdS)NrNr�rr6r�Tr:r\rr:rr�r[)
rrr�r'rVrHr�r]r_rrFr8rrZr%r%r&r<$
s(
�zTestPathUsage.test_recfromcsvN)r-r.r/rOrQrSrTrWrXrYr9r<r%r%r%r&rM�	s		
rMcCs`tj�d�}t�}tj|dd�}t�||�|��|�d�tj|dd�}tt�	|�|�dS)N�r�r�rr?rrh)
rHr�rrJr@r�rGrCrrI�rWr$r�r%r%r&�test_gzip_load2
s
r]c@s$eZdZdd�Zdd�Zdd�ZdS)�
JustWritercCs
||_dSr ��base�r#r`r%r%r&r!C
szJustWriter.__init__cCs|j�|�Sr )r`r'r"r%r%r&r'F
szJustWriter.writecCs
|j��Sr )r`rBrKr%r%r&rBI
szJustWriter.flushN)r-r.r/r!r'rBr%r%r%r&r^B
sr^c@s&eZdZdd�Zdd�Zd	dd�ZdS)
�
JustReadercCs
||_dSr r_rar%r%r&r!M
szJustReader.__init__cCs|j�|�Sr )r`r�)r#r�r%r%r&r�P
szJustReader.readrcCs|j�||�Sr )r`rC)r#Zoff�whencer%r%r&rCS
szJustReader.seekN)r)r-r.r/r!r�rCr%r%r%r&rbL
srbcCsTtj�d�}t�}t|�}t�||�|��|�d�t|�}tt�	|�|�dS)Nr[r)
rHr�rr^r�rBrCrbrrIr\r%r%r&�test_ducktypingW
s
rdc	Cs�t�}tj|dd�}|�d�|��|�d�tdd��R}t|d��}|�|���Wd�n1sj0Yt	�
|�}Wd�n1s�0Y|��t|gd��dS)	Nrr?�1 2 3
rrr�r�r�)rrJr@r'rGrCrr�r�rHr�r)r$rqrAr�rHr%r%r&�test_gzip_loadtxtf
s

,(rfcCsVt�}tj|dd�}|�d�|��|�d�tj|dd�}tt�|�gd��dS)Nrr?rerrhr�)	rrJr@r'rGrCrrHr�)r$r�r%r%r&�test_gzip_loadtxt_from_string{
s

rgcCs�t�}t�d�}t�d�}tj|||d�|�d�t�|�}td|v�td|v�td|��v�td|��v�|��D] \}}t|dv�t	|j
d�q~tt|���dk�|D]}t|dv�q�td|��v�dS)N)r2r2)rmrprrmrprY)rrHrr�rCrIr�keys�itemsrrUr�)r$rmrpr�r�rWr%r%r&�test_npzfile_dict�
s"



rjzPython lacks refcountsrecCs�t�}t�|gd��|�d�t��t�|�Wd�n1sF0Y|�d�ddg}t��8tjtd�|d�}t|tj	dg|d��Wd�n1s�0YdS)Nr�r)rW�u1rY)r�rkrYz0 1 2 3r[)rr:)
rrHr�rCrrIr�rrr])r�r�rmr%r%r&�test_load_refcount�
s
(
rl)N)OrDr�rJrNr�r6r}rarr��pathlibrZtempfilerrrrr4ZmultiprocessingrrZctypesr	ZnumpyrHZnumpy.mar�Znumpy.lib._iotoolsr
rZnumpy.compatr
Znumpy.ma.testutilsrZ
numpy.testingrrrrrrrrrrrrrrZnumpy.testing._private.utilsrr�maxsizer�rMr"r4rOr#r7r9r�r�r�r9rcr6rPrMr]r^rbrdrfrgrjr�r�rlr%r%r%r&�<module>s�@



k#H4E4e


Zerion Mini Shell 1.0