HEX
Server: LiteSpeed
System: Linux standart9.isimtescil.net 3.10.0-962.3.2.lve1.5.26.7.el7.x86_64 #1 SMP Wed Oct 2 07:53:12 EDT 2019 x86_64
User: karalev (5310)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: //opt/alt/python37/lib64/python3.7/site-packages/numpy/lib/tests/__pycache__/test_io.cpython-37.pyc
B

<�Fda.�@s�ddlmZmZmZddlZddlZddlZddlZddlm	Z	ddl
Z
ddlZddlZddl
mZddlmZddlZddlmZddlmZmZddlmZmZmZmZddlmZdd	lmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*Gd
d�de�Z+ej,dd�\Z-Z.ej/d
kZ0d+dd�Z1Gdd�de2�Z3Gdd�de3e�Z4Gdd�de3e�Z5Gdd�de�Z6Gdd�de�Z7Gdd�de�Z8Gdd�de�Z9Gdd�de�Z:d d!�Z;d"d#�Z<d$d%�Z=d&d'�Z>d(d)�Z?e@d*k�r�e �dS),�)�division�absolute_import�print_functionN)�NamedTemporaryFile)�BytesIO)�datetime)�ConverterError�ConversionWarning)�asbytes�bytes�unicode�Path)�assert_equal)�TestCase�run_module_suite�assert_warns�assert_�assert_raises_regex�
assert_raises�assert_allclose�assert_array_equal�temppath�dec�IS_PYPY�suppress_warningsc@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 �J/opt/alt/python37/lib64/python3.7/site-packages/numpy/lib/tests/test_io.pyr#szTextIO.__init__cCst�|t|��dS)N)r�writer
)rrr r r!r"&szTextIO.writecCst�|dd�|D��dS)NcSsg|]}t|��qSr )r
)�.0rr r r!�
<listcomp>*sz%TextIO.writelines.<locals>.<listcomp>)r�
writelines)r�linesr r r!r%)szTextIO.writelinesN)r)�__name__�
__module__�__qualname__�__doc__rr"r%r r r r!rs
r�lcCsHtjddkr,tt�|�d�|�dd��Stt�||�dd��SdS)zY
    This function is available in the datetime module only from Python >=
    2.5.

    r��latin1N)�sys�version_infor�time�strptime�decode)r�fmtr r r!r11sr1c@sheZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zej	j
�ej
dkd�d
d��Zdd�Ze
jdd��ZdS)�
RoundtripTestc	Os�|�di�}|�di�}|�dd�}|r:tdd�}|j}n
t�}|}z`|}	||f|	�|�|��|�d�tjdkr�t|t�s�|�	�t
j|f|�}
|	|_|
|_
Wdt|t�s�|�	�d	t�kr�t|
t
jjj�s�t�|j�XdS)
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_kwds�file_on_diskF)�deleter�win32N�arr_reloaded)�getr�namer�flush�seekr.�platform�
isinstance�close�np�load�arrr:�locals�libZnpyioZNpzFile�os�remove)rZ	save_func�args�kwargsr5r6r7Ztarget_fileZ	load_filerDr:r r r!�	roundtrip>s.




zRoundtripTest.roundtripcCs�|�|�|j|dd�|�t�|��|jt�|�dd�|jddkr~|�t�|�dd��|jt�|�dd�dd�dS)NT)r7r�)rKrB�asfortranarray�shape)r�ar r r!�check_roundtripsns
zRoundtripTest.check_roundtripscCs�t�gt�}|�|�t�ddgddggt�}|�|�t�ddgddggt�}|�|�tjddgddggtjd	�}|�|�tjddgddggtjd	�}|�|�dS)
NrLr+r,�y�?@y@@y@@y@ @)�dtype)rB�array�floatrP�intZcsingleZcdouble)rrOr r r!�
test_arrayxs



zRoundtripTest.test_arraycCs<t�gt�}|�|�t�ddgddggt�}|�|�dS)NrLr+r,rQ)rBrS�objectrP)rrOr r r!�test_array_object�s
zRoundtripTest.test_array_objectcCs"t�ddddgt�}|�|�dS)NrLr+r,rQ)rBrSrUrK)rrOr r r!�test_1D�szRoundtripTest.test_1Dr9z
Fail on Win32cCsXt�ddgddgg�}|j|dddid�t�ddgddgg�}|j|dddid�dS)	NrLg@rQg333333@TZ	mmap_mode�r)r7r6)rBrSrKrM)rrOr r r!�	test_mmap�szRoundtripTest.test_mmapcCs$tjddgddgd�}|�|�dS)N)rLr+)r,rQ)�x�i4)�yr])rR)rBrSrP)rrOr r r!�test_record�szRoundtripTest.test_recordc	CsTdd�td�D�}tjd|d�}tjdd��t�dd	t�|�|�WdQRXdS)
NcSsg|]}d|dtf�qS)z%d�d)rT)r#�ir r r!r$�sz1RoundtripTest.test_format_2_0.<locals>.<listcomp>i�i�)rRT)�record�alwaysr)�rangerB�ones�warnings�catch_warnings�filterwarnings�UserWarningrP)r�dtrOr r r!�test_format_2_0�s
zRoundtripTest.test_format_2_0N)r'r(r)rKrPrVrXrYrB�testingrZknownfailureifr.r?r[r_�slowrkr r r r!r4=s0
r4c@seZdZdd�ZdS)�TestSaveLoadcOs\tj|tjf|�|�t|jd|j�t|jdj|jj�t|jdjj	|jjj	�dS)Nr)
r4rKrB�saverrDr:rR�flags�fnc)rrIrJr r r!rK�szTestSaveLoad.roundtripN)r'r(r)rKr r r r!rn�srnc@s�eZdZdd�Zejj�ed�ejjj	dd���Z
dd�Zdd	�Zd
d�Z
dd
�Zdd�Zejj�ed�dd��Zdd�ZdS)�
TestSavezLoadc	Os�tj|tjf|�|�zTxNt|j�D]@\}}|jd|}t||�t|j|j�t|j	j
|j	j
�q$WWd|jjr�|jj��t
�|jjj�XdS)Nzarr_%d)r4rKrB�savez�	enumeraterDr:rrRrprqZfidrArGrHr<)rrIrJ�nrDZreloadedr r r!rK�s
zTestSavezLoad.roundtripzWorks only with 64bit systemsc	Cs\d}tj|tjd�}tddd��2}tj||d�~t�|�}|d}|��~WdQRXdS)Nl�)rRZnumpy_test_big_arrays_z.npz)�prefix�suffix)rOrO)rB�empty�uint8rrsrCrA)r�LrO�tmpZnpfiler r r!�test_big_arrays�s
zTestSavezLoad.test_big_arrayscCs@t�ddgddggt�}t�ddgddggt�}|�||�dS)	NrLr+r,rQy�?@y@@y@�y@(@)rBrSrT�complexrK)rrO�br r r!�test_multiple_arrays�sz"TestSavezLoad.test_multiple_arrayscCszt�ddgddggt�}t�ddgddggt�}t�}tj|||d	�|�d
�t�|�}t||d�t||d�dS)
NrLr+r,rQy�?@y@@y@�y@(@)�file_a�file_brr�r�)	rBrSrTr}rrsr>rCr)rrOr~�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
�dS)
NrLr+r,rQy�?@y@@y@�y@(@)r�r�rr�r�)rBrSrTr}rrsr>rCr�sorted�dir�fr�r�)rrOr~r�r�r r r!�test_BagObj�s

zTestSavezLoad.test_BagObjcs`dd��g���fdd�td�D�}x|D]}|��q*Wx|D]}|��q@W�r\t���dS)NcSshtdd��T}tj�dd�}ytj||d�Wn,tk
rX}z|�|�Wdd}~XYnXWdQRXdS)Nz.npz)rwi�)rD)rrB�randomZrandnrs�OSError�append)Z
error_listr{rD�errr r r!�writer�sz9TestSavezLoad.test_savez_filename_clashes.<locals>.writercsg|]}tj��fd��qS))�targetrI)�	threadingZThread)r#�j)�errorsr�r r!r$�sz=TestSavezLoad.test_savez_filename_clashes.<locals>.<listcomp>r,)rd�start�join�AssertionError)rZthreads�tr )r�r�r!�test_savez_filename_clashes�s

z)TestSavezLoad.test_savez_filename_clashesc
Cs�tdd���}t|d��}tj|dd�WdQRXt|dd��L}|�d�t|j�t�|�d	t|j�|�d�t|j�WdQRXWdQRXdS)
Nz.npz)rw�wbzLOVELY LOAD)�data�rbi'rr�)r�openrBrsr>r�closedrC)rr{�fpr r r!�test_not_closing_opened_fid�s

z)TestSavezLoad.test_not_closing_opened_fidz context manager required on PyPyc
Cs�tdd���}tj|dd�t��j}|�t�xXtdd�D]J}yt�|�dWq8tk
r�}zd|}t	|��Wdd}~XYq8Xq8WWdQRXWdQRXdS)	Nz.npz)rwzLOVELY LOAD)r�rLir�z#Failed to load data from a file: %s)
rrBrsr�filter�WarningrdrC�	Exceptionr�)rr{�supra�e�msgr r r!�test_closing_fids
zTestSavezLoad.test_closing_fidc	CsRd}td|d��8}tj|dd�t�|�}|jj}|��t|j�WdQRXdS)NZ&numpy_test_closing_zipfile_after_load_z.npz)rwrvzplace holder)�lab)	rrBrsrC�zipr�rArr�)rrvr{r�r�r r r!�test_closing_zipfile_after_load%s
z-TestSavezLoad.test_closing_zipfile_after_loadN)r'r(r)rKrBrlr�skipif�IS_64BITrmr|rr�r�r�r�rr�r�r r r r!rr�s
rrc@sTeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�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)NrLr+r,rQz%.18e)r3r� �
)rLr+)r,rQz%ds1 2
s3 4
)
rBrSrTr�savetxtr>r�	readlinesr
rU)rrOr3r�r r r!rV4s

zTestSaveTxt.test_arraycCsRt�ddddgt�}t�}tj||dd�|�d�|��}t|dd	d
dg�dS)NrLr+r,rQz%d)r3rs1
s2
s3
s4
)rBrSrUrr�r>r�r)rrOr�r&r r r!rYDs
zTestSaveTxt.test_1DcCsLtjddgddgd�}t�}tj||dd�|�d�t|��d	d
g�dS)N)rLr+)r,rQ)r\r])r^r])rRz%d)r3rs1 2
s3 4
)rBrSrr�r>rr�)rrOr�r r r!r_Ls

zTestSaveTxt.test_recordcCsNt�ddgddgg�}t�}tj||ddd�|�d�t|��d	d
g�dS)Ng�?g@g@g@�,z%d)�	delimiterr3rs1,2
s3,4
)rBrSrr�r>rr�)rrOr�r r r!�test_delimiterSs

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)N)rLr+)r,rQz%02dz%3.1f)r3rs01 2.0
s03 4.0
z%02d : %3.1fs	01 : 2.0
s	03 : 4.0
r�)r3r��c)	rBrSrr�r>rr�r�
ValueError)rrOr�r&r r r!�test_formatZs"


zTestSaveTxt.test_formatcCs t�}tjddgtjd�}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)N)rLr+)r,rQ)rRzTest header / footerz%1d)r3�headerrz# z	
1 2
3 4
)r3�footerz
1 2
3 4
# r�z% )r3r��commentsz1 2
3 4
)r3r�r�)	rrBrSrUr�r>r�readr
)rr�rO�test_header_footerZ
commentstrr r r!r�ts4







zTestSaveTxt.test_header_footerc	CsDt��4}t�ddg�}t�||�t�|�}t||�WdQRXdS)N)rLr+)r,rQ)rrBrSr��loadtxtr)rr<rOr~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)Nr+)rRy�?z %+.3e)r3rs8 ( +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)
)
rB�zerosZ
complex128Zpir�rr�r>r�r)rZncolsZnrowsrO�reZimr�r&r r r!�test_complex_arrays�s<


zTestSaveTxt.test_complex_arrayscCsHGdd�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!�CustomWriter�sr�)rLr+)r,rQ)�listrBrSr�r�r)rr��wrOr~r r r!�test_custom_writer�s
zTestSaveTxt.test_custom_writerN)r'r(r)rVrYr_r�r�r�r�r�r�r r r r!r�3s"&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"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;S)<�TestLoadTxtcCs�t�}|�d�|�d�tj|dtjfdtjfgd�}tjddgdd	gd�}t||�t�}|�d
�|�d�ddd
�}tjddg|d�}tj||d�}t||�dS)Nz1 2
3 4rr\r^)rR)rLr+)r,rQ)r\r])r^r]zM 64.0 75.0
F 25.0 60.0)�gender�age�weight)�S1r]�f4)�names�formats)�MgP@g�R@)�Fg9@gN@)rr"r>rBr��int32rSr)rr�r\rO�dZmydescriptorr~r^r r r!r_�s




zTestLoadTxt.test_recordcCs�t�}|�d�|�d�tj|tjd�}t�ddgddggt�}t||�|�d�tj|td�}t�ddgddggt�}t||�dS)Nz1 2
3 4r)rRrLr+r,rQ)	rr"r>rBr�rUrSrrT)rr�r\rOr r r!rV�s



zTestLoadTxt.test_arraycCs�t�}|�d�|�d�tj|td�}t�ddddgt�}t||�t�}|�d�|�d�tj|td	d
�}t�ddddgt�}t||�dS)Nz1
2
3
4
r)rRrLr+r,rQz1,2,3,4
r�)rRr�)rr"r>rBr�rUrSr)rr�r\rOr r r!rY�s




zTestLoadTxt.test_1DcCsXt�}|�d�|�d�tj|tdddd�id�}t�dd	dd
dgt�}t||�dS)Nz	1,2,3,,5
rr�r,cSst|pd�S)Ni���)rU)rr r r!�<lambda>�z*TestLoadTxt.test_missing.<locals>.<lambda>)rRr��
convertersrLr+i����)rr"r>rBr�rUrSr)rr�r\rOr r r!�test_missings


zTestLoadTxt.test_missingcCs\t�}|�d�|�d�tj|tdddd�idd�}t�d	d
gddggt�}t||�dS)
Nz1,2,3,,5
6,7,8,9,10
rr�r,cSst|pd�S)Ni���)rU)rr r r!r�r�z:TestLoadTxt.test_converters_with_usecols.<locals>.<lambda>)rLr,)rRr�r��usecolsr+i�����	)rr"r>rBr�rUrSr)rr�r\rOr r r!�test_converters_with_usecols	s



z(TestLoadTxt.test_converters_with_usecolscCsNt�}|�d�|�d�tj|tddd�}t�dddd	gt�}t||�dS)
Nz# comment
1,2,3,5
rr��#)rRr�r�rLr+r,r�)rr"r>rBr�rUrSr)rr�r\rOr r r!�test_comments_unicodes


z!TestLoadTxt.test_comments_unicodecCsNt�}|�d�|�d�tj|tddd�}t�dddd	gt�}t||�dS)
Nz# comment
1,2,3,5
rr��#)rRr�r�rLr+r,r�)rr"r>rBr�rUrSr)rr�r\rOr r r!�test_comments_bytes


zTestLoadTxt.test_comments_bytecCs\t�}|�d�|�d�tj|tddddgd�}t�dd	d
gddd
ggt�}t||�dS)Nz,# comment
1,2,3
@ comment2
4,5,6 // comment3rr�r��@z//)rRr�r�rLr+r,rQr��)rr"r>rBr�rUrSr)rr�r\rOr r r!�test_comments_multiple%s


z"TestLoadTxt.test_comments_multiplecCs~t�}|�d�|�d�tj|tddd�}t�dddd	gt�}t||�t�}|�d
�|�d�tt	tj|tddd�dS)Nz/* comment
1,2,3,5
rr�z/*)rRr�r�rLr+r,r�z*/ comment
1,2,3,5
)
rr"r>rBr�rUrSrrr�)rr�r\rOr r r!�test_comments_multi_chars.s





z%TestLoadTxt.test_comments_multi_charscCs�t�}|�d�|�d�tj|tddd�}t�ddddgt�}t||�t�}|�d	�|�d�tj|tddd�}t�ddddgt�}t||�dS)
Nzcomment
1,2,3,5
rr�rL)rRr��skiprowsr+r,r�z# comment
1,2,3,5
)rr"r>rBr�rUrSr)rr�r\rOr r r!�
test_skiprows>s






zTestLoadTxt.test_skiprowsc
	Cs�t�ddgddggt�}t�}t�||�|�d�tj|tdd�}t||dd�df�t�dddgdddggt�}t�}t�||�|�d�tj|td	d�}t||dd�dd�f�|�d�tj|tt�ddg�d�}t||dd�dd�f�xhttj	tj
tjtjtj
tjtjtjg	D]>}|d�}|�d�tj|t|d�}t||dd�df��q"WGd
d�dt�}|�}|�d�tj|t|d�}t||dd�df�|�d�tj|t|fd�}t||dd�df�d}t|�}d
dg}	ddg}
tj|dtt|	|
��d�}t|d
ddg�t|dddg�|�d�d}ttdt|�tj||d�ttdt|�tj|d|dgd�dS)NrLr+r,rQr)rL)rRr�r�)rLr+c@seZdZdd�ZdS)z*TestLoadTxt.test_usecols.<locals>.CrazyIntcSsdS)NrLr )rr r r!�	__index__nsz4TestLoadTxt.test_usecols.<locals>.CrazyInt.__index__N)r'r(r)r�r r r r!�CrazyIntmsr�z<JOE 70.1 25.3
                BOB 60.5 27.9
                �stid�temp�S4�f8)rr+)r�rRsJOEsBOBg�����L9@gfffff�;@g�?z^usecols must be.*%s)r�)rBrSrTrr�r>r�rrUZint8Zint16r��int64ryZuint16Zuint32�uint64rWrr�r�rr�	TypeError�type)
rrOr�r\Zint_typeZto_readr�Z	crazy_intr�r��dtypesrDZ	bogus_idxr r r!�test_usecolsOs^








zTestLoadTxt.test_usecolscCsjt�}|�d�|�d�t�dtfddtfdtfgfg�}tj||dd�}t�d	d
g|�}t	||�dS)Nz1,2,3.0
4,5,6.0
rr\r^r�rr�)rRr�)rL)r+g@)rQ)r�g@)
rr"r>rBrRrUrTr�rSr)rr�rjr\rOr r r!�test_fancy_dtype�s

"zTestLoadTxt.test_fancy_dtypecCsltd�}t�ddtfdtfdtdfg�}tj||d�}tjdd	d
ddd
gdddggfg|d�}t||�dS)Nzaaaa  1.0  8.0  1 2 3 4 5 6)r<r�r\r^�block)r+r,)rR�aaaag�?g @rLr+r,rQr�r�)rrBrRrTrUr�rSr)rr�rjr\rOr r r!�test_shaped_dtype�s zTestLoadTxt.test_shaped_dtypec	Cs�td�}t�ddtfdtfdtdfg�}tj||d�}tjdd	d
ddd
gdddggdddgdddgggfg|d�}t||�dS)Nz*aaaa  1.0  8.0  1 2 3 4 5 6 7 8 9 10 11 12)r<r�r\r^r�)r+r+r,)rRr�g�?g @rLr+r,rQr�r�r��r��
��)rrBrRrTrUr�rSr)rr�rjr\rOr r r!�test_3d_shaped_dtype�s
*z TestLoadTxt.test_3d_shaped_dtypecCsJddg}x<ttjfD].}tjddg|d�}tj||d�}t||�qWdS)NZstr1Zstr2)rR)�strrBZbytes_rSr�r)rr�rjrOr\r r r!�test_str_dtype�s
zTestLoadTxt.test_str_dtypec	Csjt��Z}|jdd�t�}t�|�}t|jd�tj|tjd�}t|jd�t|j	tjk�WdQRXdS)Nzloadtxt: Empty input file:)�message)r)rR)
rr�rrBr�rrNr�rrR)rr�r�r\r 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
r)rLcSs
t|d�S)N�)rU)rr r r!r��r�z3TestLoadTxt.test_unused_converter.<locals>.<lambda>)r�r���*rLcSs
t|d�S)Nr�)rU)rr r r!r��r��!�B)rr%r>rBr�r)rr�r�r r r!�test_unused_converter�s

z!TestLoadTxt.test_unused_convertercCstd}dtfdtjfg}dd�}d|i}tjt|�d||d�}tjdtd	dd�fd
tddd�fg|d
�}t||�dS)Nz0 1; 2001-01-01
                   2; 2002-01-31 �idx�codecSst|��d�S)Nz%Y-%m-%d)r1�strip)rr r r!r��r�z4TestLoadTxt.test_dtype_with_object.<locals>.<lambda>rL�;)r�rRr�i�r+i��)rR)rUrBrWr�rrSrr)rr��ndtype�funcr��test�controlr r r!�test_dtype_with_object�sz"TestLoadTxt.test_dtype_with_objectcCs@d}t�}|�d|�|�d�tj|tjd�}t||�dS)N)l+&�|l-(�|z%s %sr)rR)rr"r>rBr�r�r)r�tgtr��resr r r!�test_uint64_type�s
zTestLoadTxt.test_uint64_typecCs@d}t�}|�d|�|�d�tj|tjd�}t||�dS)N)l��������l����z%s %sr)rR)rr"r>rBr�r�r)rrr�rr r r!�test_int64_type�s
zTestLoadTxt.test_int64_typecCs�t�ddd��tj�}t�||f��tj�}d�ttj|��}t	�}|�
|�x>tjtjgD].}|�d�tj||d�}t
||d|d�q^WdS)	Ni����r�r�r�r)rRz%s)Zerr_msg)rBZlogspaceZastypeZfloat32ZhstackrTr��map�hexrr"r>r�r)rrZinpr�rjrr r r!�test_from_float_hex�s

zTestLoadTxt.test_from_float_hexcCsPtdd�tdd�f}t�}|�d|�|�d�tj|tjd�}t||�dS)NrL���z%s %sr)rR)r}rr"r>rBr�r)rrr�rr r r!�test_from_complex�s
zTestLoadTxt.test_from_complexc
CsVt��0}t|d��}|�d�WdQRXt�|�}WdQRXt|ddgddgg�dS)Nr�z
1 21
3 42
rLrr,r)rr�r"rBr�r)rr<r�r�r r r!�test_universal_newlines
z"TestLoadTxt.test_universal_newlinecCsVt�}|�d�|�d�ddd�}tj||dd�}t�dd	d
g�}t|d|�dS)Nz 1 	2 	3	start 
4	5	6	  
7	8	9.5	r)r\r^�z�comment)z<i4z<i4z<f4z|S8)r�r��	)rRr�sstart s  r�r)rr"r>rBr�rSr)rr�rjr\rOr 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)NzM 21 72
F 35 58)rOr~r�)z|S1z<i4z<f4)r�r�T)rR�unpackz|S1z<i4z<f4�M�Fr�#gR@gM@)rrBr�rrRr�rrS)r�txtrjrOr~r�r r r!�test_structure_unpacks
z!TestLoadTxt.test_structure_unpackc	Cs�t�}|�d�|�d�tttj|dd�|�d�tttj|dd�|�d�tj|tddd�}t�dd	dgd
ddgg�}t	||�t�}|�d
�|�d�tj|tdd	d�}t
|jdk�|�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��H}|j
dd�t�}t
tj|d	d�jdk�t
tj|dd�jdk�WdQRXdS)Nz1,2,3
4,5,6rr,)�ndming�?r�rL)rRr�r#r+rQr�r�z0,1,2)rLr,)r,z0
1
2)r,rLzloadtxt: Empty input file:)r�)rrL)r)rr"r>rr�rBr�rUrSrrrNrr�)rr�r\rOr�r�r�r�r r r!�test_ndmin_keywordsJ












zTestLoadTxt.test_ndmin_keywordcCs(dd�}t�|��}t|t�d��dS)Ncss xtd�D]}d|Vq
WdS)Nr�z%d)rd)rar r r!�countKsz0TestLoadTxt.test_generator_source.<locals>.countr�)rBr�r�arange)rr%rr r r!�test_generator_sourceJsz!TestLoadTxt.test_generator_sourcecCs.t�}|�d�|�d�ttdtj|�dS)Nz1 2 3
4 5 6
2 3r�3)rr"r>rr�rBr�)rr�r r r!�
test_bad_lineRs

zTestLoadTxt.test_bad_linecCsHt�}|�d�|�d�t�dtfddtfg�}tj|d|dd�dS)Nz100,foo,200
300,None,400rr\)rOZS10r^r�)r�rRr�)rr"r>rBrRrUr�)rr�rjr r r!�test_none_as_stringZs


zTestLoadTxt.test_none_as_stringN) r'r(r)r_rVrYr�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrrrrr"r$r'r)r*r r r r!r��s:	
			E		
	



+r�c@s$eZdZdd�Zdd�Zdd�ZdS)�
TestfromregexcCsXt�}|�d�|�d�dtjfdg}t�|d|�}tjdddg|d	�}t||�dS)
Nz1.312 foo
1.534 bar
4.444 quxr�num)�val�S3z([0-9.]+)\s+(...))gˡE���?�foo)g%��C��?�bar)g-����@�qux)rR)rr"r>rB�float64�	fromregexrSr)rr�rjr\rOr r r!r_es

zTestfromregex.test_recordcCsXt�}|�d�|�d�dtjfdg}t�|d|�}tjdddg|d	�}t||�dS)
Nz1312 foo
1534 bar
4444 quxrr,)r-r.z
(\d+)\s+(...))i r/)i�r0)i\r1)rR)rr"r>rBr�r3rSr)rr�rjr\rOr r r!�
test_record_2ps

zTestfromregex.test_record_2cCsVt�}|�d�|�d�dtjfg}t�|d|�}tjdddg|d�}t||�dS)	Nz1312 foo
1534 bar
4444 quxrr,z(\d+)\s+...)i )i�)i\)rR)rr"r>rBr2r3rSr)rr�rjr\rOr r r!�
test_record_3{s

zTestfromregex.test_record_3N)r'r(r)r_r4r5r r r r!r+csr+c@seZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;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�Z,dUdV�Z-dWdX�Z.dYdZ�Z/d[d\�Z0d]d^�Z1d_d`�Z2dadb�Z3dcdd�Z4dedf�Z5dgdh�Z6didj�Z7dkdl�Z8dmdn�Z9dodp�Z:dqdr�Z;dsdt�Z<dudv�Z=dwdx�Z>dydz�Z?d{d|�Z@d}d~�ZAdd��ZBd�d��ZCd�d��ZDd�S)��TestFromTxtcCs�td�}tj|dtjfdtjfgd�}tjddgddgd�}t||�td	�}d
dd�}tjd
dg|d�}tj||d�}t||�dS)Nz1 2
3 4r\r^)rR)rLr+)r,rQ)r\r])r^r]zM 64.0 75.0
F 25.0 60.0)r�r�r�)r�r]r�)r�r�)r�gP@g�R@)r�g9@gN@)rrB�	ndfromtxtr�rSr)rr�rr
�
descriptorr r r!r_�s

zTestFromTxt.test_recordcCsztd�}tjddgddggtd�}tj|td�}t||�|�d�tjddgddggtd�}tj|td�}t||�dS)Nz1 2
3 4rLr+r,rQ)rRr)	rrBrSrUr7rr>rTr�)rr�r
rr r r!rV�s

zTestFromTxt.test_arraycCsZt�ddddgt�}td�}tj|td�}t||�td�}tj|tdd	�}t||�dS)
NrLr+r,rQz1
2
3
4
)rRz1,2,3,4
r�)rRr�)rBrSrUrr7r)rr
r�rr r r!rY�s
zTestFromTxt.test_1DcCs`t�ddddgt�}td�}tj|tddd�}t||�td	�}tj|tddd�}t||�dS)
NrLr+r,r�z# comment
1,2,3,5
r�r�)rRr�r�z1,2,3,5# comment
)rBrSrUrr7r)rr
r�rr r r!�
test_comments�s
zTestFromTxt.test_commentscCstt�ddddgt�}ttdd�}td�}tj|fddi|��}t||�td	�}tj|fd
di|��}t||�dS)NrLr+r,r�r�)rRr�zcomment
1,2,3,5
�skip_headerz# comment
1,2,3,5
r�)rBrSrU�dictrr7rr�)rr
rJr�rr r r!r��s
zTestFromTxt.test_skiprowscCs�dd�tdd�D�}|�d�|�dd�td�D��d|d	<td
ddd
d�}tjtd�|��f|�}tjdd�td�D�dd�dD�d�}t	||�dS)NcSsg|]}d|�qS)z# %ir )r#rar r r!r$�sz0TestFromTxt.test_skip_footer.<locals>.<listcomp>rLr�zA, B, CcSsg|]}d|||f�qS)z
%i,%3.1f,%03sr )r#rar r r!r$�s�3z99,99rr�Tr�r�)r�r�r:�skip_footerr�cSs"g|]}d|d|d|f�qS)z%fr )r#rar r r!r$�s�)cSsg|]}|tf�qSr )rT)r#�_r r r!r$�s�ABC)rR)
rdr�r�r;rB�
genfromtxtrr�rSr)rr�rJr�ctrlr r r!�test_skip_footer�s
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��WdQRXdS)
Nz1 1
2 2
3 3
4 4
5  
6  
7  
rL)r=F)r=�
invalid_raiseg�?g@g@g@r,z1 1
2  
3 3
4 4
5  
6 6
7 7
g@)
rr�r	rr�rBrArrrS)rr�ZbasestrrOr r r!�test_skip_footer_with_invalid�s"

(((z)TestFromTxt.test_skip_footer_with_invalidcCs|td�}tj|ddd�}t�ddg�t�ddg�t�dd	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.0T)rRr�rrgP@g9@g�R@gN@)r�r�r�r�r�r�)rrBr7rSr)rr�rr
r r r!�test_header�szTestFromTxt.test_headercCs�td�}tj|dd�}t�ddg�t�ddg�t�ddg�t�d	d
g�t�ddg�g}t|jjd
ddddg�x&t|�D]\}}t|d||�qxWdS)Nz*A 64 75.0 3+4j True
BCD 25 60.0 5+6j False)rR�AsBCD�@�g�R@gN@y@@y@@TF�f0�f1�f2Zf3r�zf%i)rrBr7rSrrRr�rt)rr�rr
rarBr r r!�test_auto_dtype�szTestFromTxt.test_auto_dtypecCsBtd�}tj|dd�}t�ddddgddd	d
gg�}t||�dS)Nz1 2 3 4
5 6 7 8
)rRrLr+r,rQr�r�r�r�)rrBr7rSr)rr�rr
r r r!�test_auto_dtype_uniformsz#TestFromTxt.test_auto_dtype_uniformcCsZtd�}t�dtfddtfdtfgfg�}tj||dd�}tjdd	g|d
�}t||�dS)Nz1,2,3.0
4,5,6.0
r\r^r�rr�)rRr�)rL)r+g@)rQ)r�g@)rR)rrBrRrUrTr7rSr)rr��
fancydtyperr
r r r!r�
s
"zTestFromTxt.test_fancy_dtypecCsNddd�}td�}d}tj|||d�}||d<tjdd	g|d
�}t||�dS)N)�grOr�)r�r]r�)r�r�sM 64.0 75.0
F 25.0 60.0)r�r�r�)rRr�r�)r�gP@g�R@)r�g9@gN@)rR)rrBr7rSr)rr8r�r�rr
r r r!�test_names_overwritesz TestFromTxt.test_names_overwritecCsjtd�}tj|ddd�}tjdddgddtfd	tfgd
�}t||�td�}tj|ddd�}t||�dS)NzN
#gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        T)r�rR)r�rgfffffR@)r�r g
ףp=*M@)r�rg=
ףp�5@)r�z|S1r�r�)rRsO
# gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        )rrBrArSrUrTr)rr�rrBr r r!�test_commented_header!s
z!TestFromTxt.test_commented_headercCsDtd�}tj|dddd�}tjdddtfdtfgd	�}t||�dS)
NzA B C D
 aaaa 121 45 9.1)�A�C�DT)r�r�rR)r��-g333333"@)rSz|S4rTrU)rR)rrBr7rSrUrTr)rr�rr
r r r!�test_autonames_and_usecols8s
z&TestFromTxt.test_autonames_and_usecolscCsJtd�}tj|tdddd�idd�}t�dd	gd
dggt�}t||�dS)Nz1,2,3,,5
6,7,8,9,10
r�r,cSst|pd�S)Ni���)rU)rr r r!r�Er�z:TestFromTxt.test_converters_with_usecols.<locals>.<lambda>)rLr,)rRr�r�r�r+i���r�r�)rrBr7rUrSr)rr�rr
r r r!r�As

z(TestFromTxt.test_converters_with_usecolscCsNtd�}tj|dddddd�id�}tjdd	dtfd
tfgd�}t||�dS)NzA B C D
 aaaa 121 45 9.1)rSrTrUTrTcSsdt|�S)Nr+)rU)rr r r!r�Nr�zDTestFromTxt.test_converters_with_usecols_and_names.<locals>.<lambda>)r�r�rRr�)r��Zg333333"@)rSz|S4rU)rR)rrBr7rSrUrTr)rr�rr
r r r!�&test_converters_with_usecols_and_namesJs
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)r1)rr r r!r�Vr�z9TestFromTxt.test_converters_cornercases.<locals>.<lambda>z2009-02-03 12:00:00Z, 72214.0r�r�)r�rRr�r�i�r+r,g`��@)rR)rrBr7rSrZobject_rTr)r�	converterr�rr
r r r!�test_converters_cornercasesSs
z'TestFromTxt.test_converters_cornercasescCs\ddd�i}td�}tj|ddddg|d�}tjtdd	d
�dfddtfgd
�}t||�dS)NrZcSst�t|d��S)Nz%Y-%m-%d %H:%M:%SZ)rBZ
datetime64r1)rr r r!r�ar�z:TestFromTxt.test_converters_cornercases2.<locals>.<lambda>z2009-02-03 12:00:00Z, 72214.0r�r�)r�rRr�r�i�r+r,g`��@)rZzdatetime64[us])rR)rrBr7rSrrTr)rr[r�rr
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
)rLrcSs
t|d�S)Nr�)rU)rr r r!r�mr�z3TestFromTxt.test_unused_converter.<locals>.<lambda>)r�r�rrrLcSs
t|d�S)Nr�)rU)rr r r!r�rr�rr)rrBr7rr>)rr�rr r r!ris
z!TestFromTxt.test_unused_convertercCsBdd�}dd�}td�}t||d�ddd�}tttj|f|�dS)NcSs4td|��kr|��dp0d|��kr.|��p0d�S)N�rrg)rT�lowerr�r)r\r r r!r�vsz4TestFromTxt.test_invalid_converter.<locals>.<lambda>cSs4td|��kr|��dp0d|��kr.|��p0d�S)N�%rg)rTr_r�r)r\r r r!r�xszgD01N01,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.55)r+r,r�)r�r�rR)rr;rrrBrA)rZ
strip_randZ	strip_perrrJr r r!�test_invalid_converterus
z"TestFromTxt.test_invalid_convertercCsHtd�}dd�}tj|dd|id�}t�ddgd	d
gg�}t||�dS)Nz	q1,2
q3,4cSst|dd��S)NrL)rT)rr r r!r��r�z;TestFromTxt.test_tricky_converter_bug1666.<locals>.<lambda>r�r)r�r�g�?g@g@g@)rrBrArSr)rrZcnvrr
r r r!�test_tricky_converter_bug1666�s
z)TestFromTxt.test_tricky_converter_bug1666cCs~d}tjt|�dtdtid�}tjdgddtfdtfgd	�}t||�tjt|�dtdtid�}t�d
ddg�}t||�dS)
Nz2009; 23; 46rr)r�rRr�)Z2009g7@�.)rJz|S4rKrL)rRgd�@g7@rc)rBr7rrTrrSr)r�dstrrr
r r r!�test_dtype_with_converters�s


z&TestFromTxt.test_dtype_with_converterscs�d}ddddd��ddd	d
g}ttt�fdd�d
�}tjt|�|dd|d�}tjjddddgddddgddddgg|d�}t||�ddd
g}tjt|�|ddd|d�}tjjdddgdddgdddgg|d�}t||�dS)Nz!1,5,-1,1:1
2,8,-1,1:n
3,3,-2,m:n
rrLr+r,)z1:1z1:nzm:1zm:n)Ze1r])Ze2r])Ze3Zi2)ruZi1cs�|��S)N)r2)rZ)�dmapr r!r��r�zDTestFromTxt.test_dtype_with_converters_and_usecols.<locals>.<lambda>)rrLr+r,r�)rRr�r�r�r�rr����)rR)rrLr,)rRr�r�r�r�)rUrB�
recfromcsvrZrecrSr)rrdZdtypZconvrr
r )rfr!�&test_dtype_with_converters_and_usecols�s
.

(z2TestFromTxt.test_dtype_with_converters_and_usecolscCs�d}dtfdtjfg}dd�}d|i}tjt|�d||d�}tjdtd	dd�fd
tddd�fg|d
�}t||�ddtfdtjfgfg}ytjt|�d||d�}Wntk
r�YnXd}t	|��dS)Nz0 1; 2001-01-01
                   2; 2002-01-31 rrcSst|��d�S)Nz%Y-%m-%d)r1r)rr r r!r��r�z4TestFromTxt.test_dtype_with_object.<locals>.<lambda>rLr)r�rRr�i�r+i�r	)rRZnestz3Nested dtype involving objects should be supported.)
rUrBrWrArrSrr�NotImplementedErrorr�)rr�r
rr�rr
�errmsgr r r!r�s$
z"TestFromTxt.test_dtype_with_objectcCsHtd�}tj|ddtddtid�}tjdgddtfgd	�}t||�dS)
Nzskip,skip,2001-01-01,1.0,skipr�)r+r,r+)r�r�rRr�r�)z
2001-01-01g�?)rz|S10r)rR)rrBrArTrrSr)rr�rr
r r r!�'test_userconverters_with_explicit_dtype�sz3TestFromTxt.test_userconverters_with_explicit_dtypecCsBtd�}t�|�}t�dddddgddd	d
dgg�}t||�dS)Nz1  2  3  4   5
6  7  8  9  10g�?g@g@g@g@g@g@g @g"@g$@)rrBr7rSr)rr�rr
r r r!�test_spacedelimiter�s

zTestFromTxt.test_spacedelimitercCsFd}tjt|�dd�}t�dddgdddgd	d
dgg�}t||�dS)Nz  1  2  3
  4  5 67
890123  4r,)r�rLr+rQr��Ciz�{)rBrArrSr)rr�rr
r r r!�test_integer_delimiter�s"z"TestFromTxt.test_integer_delimitercCsFtd�}tj|tdddd�id�}t�dddd	d
gt�}t||�dS)Nz	1,2,3,,5
r�r,cSst|pd�S)Ni���)rU)rr r r!r��r�z*TestFromTxt.test_missing.<locals>.<lambda>)rRr�r�rLr+i���r�)rrBr7rUrSr)rr�rr
r r r!r��s

zTestFromTxt.test_missingcCsjd}tjt|�ddd�}t�dtjdtjfdtjdfg�}tjd	d
dgtd�}t|j|�t|j|�dS)
Nz1	2	3
	2	
1		3rT)r��usemask)rLr+r,r+rLr,)rrr)rLrrL)rrLr)rR)	rBrArrS�nan�boolrr��mask)rr!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�dddgdddggt�}t�}t�||�|�d�tj|td	d�}t||dd�dd�f�|�d�tj|tt�ddg�d�}t||dd�dd�f�dS)
NrLr+r,rQr)rL)rRr�r�)rLr+)rBrSrTrr�r>r7r)rr
r�rr r r!r��s


zTestFromTxt.test_usecolscCsBd}tjt|�ddd�}tjddgdd�d	D�d
�}t||�dS)Nz1 2 3
4 5 6za, b, cza, c)r�r�)rLr,)rQr�cSsg|]}|tf�qSr )rT)r#r?r r r!r$sz3TestFromTxt.test_usecols_as_css.<locals>.<listcomp>�ac)rR)rBrArrSr)rr�rrBr 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�)rr+)r�rRsJOEsBOBg�����L9@gfffff�;@)rrBr7r�r�r)rr�r�r�rr r r!�"test_usecols_with_structured_dtypesz.TestFromTxt.test_usecols_with_structured_dtypecCs*tjtd�dd�}t|t�ddg��dS)Ns1 2 3
4 5 6r)r�g�?g@)rBrArrrS)rr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)N)rLr,)rQr�rOr�)rRz1 2 3
4 5 6za, b, c)r�r�)rr)rOr�)rBrSrTr;rArr)rrBr�rJrr r r!�test_usecols_with_named_columnss

z+TestFromTxt.test_usecols_with_named_columnsc	CsBt��2}|jdd�t�}t�|�}t|t�g��WdQRXdS)Nzgenfromtxt: Empty input file:)r�)rr�rrBrArrS)rr�r�rr r r!r�s

zTestFromTxt.test_empty_filecCsZtd�}t�dtfddtfdtfgfg�}tj||dd�}tjdd	g|d
�}t||�dS)Nz1,2,3.0
4,5,6.0
r\r^r�rr�)rRr�)rL)r+g@)rQ)r�g@)rR)	rrBrRrUrT�	mafromtxt�marSr)rr�rOrr
r r r!�test_fancy_dtype_alt%s
"z TestFromTxt.test_fancy_dtype_altcCsltd�}t�ddtfdtfdtdfg�}tj||d�}tjdd	d
ddd
gdddggfg|d�}t||�dS)Nzaaaa  1.0  8.0  1 2 3 4 5 6)r<r�r\r^r�)r+r,)rRr�g�?g @rLr+r,rQr�r�)rrBrRrTrUr7rSr)rr�rjr\rOr r r!r�-s zTestFromTxt.test_shaped_dtypecCs�td�}tdddd�}tj|fddi|��}tjddgd	d
gdtjfdtjfgd
�}t||�t|j|j�|�	d�tj|f|�}tjddgd	d
gdtj
fdtj
fgd
�}t||�t|j|j�dS)Nz
A,B
0,1
2,N/Ar�zN/AT)r��missing_valuesr�rR)rrL)r+r)FF)FTrS�B)rtrRr)rr;rBr{r|rSrUrrtr>rT)rr�rJrr
r r r!�test_withmissing6s




zTestFromTxt.test_withmissingcCsd}tdddd�}dtfdtfdtfg}tjt|�fdd	i|��}tjd
ddd
gddddg|d�}t	||�||d<tjt|�fddddd�i|��}tjd
ddd
gddddg|d�}t	||�tjt|�fddddd�i|��}tjd
ddd
gddddg|d�}t	||�dS)Nz4A, B, C
0, 0., 0j
1, N/A, 1j
-9, 2.2, N/A
3, -99, 3jr�T)rRr�r�rSrrTr~zN/A)rgy)rLi���y�?)i����g������@y�8��)r,i����y@)rrr)rrLr)rrrL)rtrRrRi����i����y�8��)rrLr+)rLrrL)rrrT)
r;rUrTr}rBr{rr|rSr)rr�Z
basekwargsZmdtyperr
r r r!�test_user_missing_valuesHs4




z$TestFromTxt.test_user_missing_valuesc	CsDtjddgdtfdtfgd�}d}tdtdd	d
dd�d
d
dd�d�}tjt|�f|�}tjddgdd�dD�d�}t||�tjt|�fddi|��}tjddgdd�dD�d�}t||�d}tjt|�dtdd
d�}t�ddd
dgdd
d d!gg�}t||�tjt|�dtdd"d�}t�ddd"dgdd"d d!gg�}t||�dS)#N)rr,)rQi���rOr~)rRzN/A, 2, 3
4, ,???r�za,b,czN/Ar�z???)rr~r+ri���)r�rRr�r~�filling_values)rr+r,)rQri���cSsg|]}|tf�qSr )rU)r#r?r r r!r$rsz8TestFromTxt.test_user_filling_values.<locals>.<listcomp>�abcr�)rrcSsg|]}|tf�qSr )rU)r#r?r r r!r$vsrvz1,2,*,4
5,*,7,8
�*)r�rRr~r�rLr+rQr�r�r�r)rBrSrUr;rArr)rrBr�rJrZdata2r r r!�test_user_filling_valuesgs.






z$TestFromTxt.test_user_filling_valuescCs`td�}tj|ddddd�}tjddgdd	gd
tjfdtjfgd�}t||�t|j|j�dS)
NzA,B
0,1.5
2,-999.00r�z-999.0T)rRr�r~r�)rg�?)r+g�)FF)FTrSr)rtrR)	rrBr{r|rSrUrTrrt)rr�rr
r r r!�test_withmissing_float�s



z"TestFromTxt.test_withmissing_floatcCsVtd�}tj|dddd�}tjdddgdd	d
ggdddgdddggd�}t||�dS)
Nz1 2 3
4 5 6
z2,5T)rRr~rqrLr+r,rQr�r�r)rt)rrBrAr|rSr)rr�rr
r r r!�test_with_masked_column_uniform�s

.z+TestFromTxt.test_with_masked_column_uniformcCsRtd�}tj|dddd�}tjddgddgdtfd	tfd
tfgd�}t||�dS)NzTrue 2 3
False 5 6
z2,5T)rRr~rq)rLr+r,)rr�r�)rrLrrJrKrL)rtrR)rrBrAr|rSrsrUr)rr�rr
r r r!�test_with_masked_column_various�s

z+TestFromTxt.test_with_masked_column_variouscs�dgd}xtd�D]}d|d|<qW|�dd�td�|���td	dd
d��i}if��fdd
�	}tt||d�|d}tt|�d�t|t	j
ddd�dD�d����d�tt
t	j�d	d
d�dS)Nz
1, 1, 1, 1, 1�2r�z2, 2, 2, 2 2r�rz
a, b, c, d, er�r�T)r�rRr�cstj�fddi���|d<dS)NrDF�mtest)rBr7)�_ret)rJ�mdatar r!r��sz)TestFromTxt.test_invalid_raise.<locals>.f)r�r�rVcSsg|]}|tf�qSr )rU)r#r?r r r!r$�sz2TestFromTxt.test_invalid_raise.<locals>.<listcomp>�abcde)rR)r�r�)rd�insertrr�r;rr	r�lenrBrer>rr�r7)rr�ra�retr�r�r )rJr�r!�test_invalid_raise�s


zTestFromTxt.test_invalid_raisecsdgd}xtd�D]}d|d|<qW|�dd�td�|���td	dd
dd��i}if��fd
d�	}tt||d�|d}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)Nz
1, 1, 1, 1, 1r�r�z2, 2, 2, 2 2r�rz
a, b, c, d, er�r�TF)r�rRr�rDcstj�fddi���|d<dS)Nr�)rrQr�)rBr7)r�)rJr�r r!r��sz6TestFromTxt.test_invalid_raise_with_usecols.<locals>.f)r�r�rVcSsg|]}|tf�qSr )rU)r#r?r r r!r$�sz?TestFromTxt.test_invalid_raise_with_usecols.<locals>.<listcomp>Zae)rRr�)rrLcSsg|]}|tf�qSr )rU)r#r?r r r!r$�sZab)r+r+cSsg|]}d|�qS)r�r )r#r?r r r!r$�s)
rdr�rr�r;rr	rr�rBrer>r7)rr�rar�r�r�r
r )rJr�r!�test_invalid_raise_with_usecols�s&

z+TestFromTxt.test_invalid_raise_with_usecolscCsRdgd}td�|��}ddd�i}td|dd	�d
D�d�}tttj|f|�dS)Nz1, 1, 1, 1, -1.1r�r�rQcSsd|S)Nz(%s)r )r\r r r!r��r�z5TestFromTxt.test_inconsistent_dtype.<locals>.<lambda>r�cSsg|]}|tf�qSr )rU)r#r?r r r!r$�sz7TestFromTxt.test_inconsistent_dtype.<locals>.<listcomp>r�)r�r�rR)rr�r;rr�rBrA)rr�r�r�rJr r r!�test_inconsistent_dtype�s
z#TestFromTxt.test_inconsistent_dtypecCsLd}tjt|�dddd�}tjddgdtfdtfd	tfgd
�}t||�dS)Nz0, 1, 2.3
4, 5, 6.7r�zf%02i)r�rR�
defaultfmt)rrLgffffff@)rQr�g������@Zf00Zf01Zf02)rR)rBr7rrSrUrTr)rr�r�rBr r r!�test_default_field_format�s

z%TestFromTxt.test_default_field_formatcCsFd}tjt|�dtdd�}tjdddgdd	d
ggtd�}t||�dS)Nz0, 1, 2.3
4, 5, 6.7r�zf%02i)r�rRr�gg�?gffffff@g@g@g������@)rR)rBr7rrTrSr)rr�r�rBr r r!�test_single_dtype_wo_names�s

z&TestFromTxt.test_single_dtype_wo_namescCsDd}tjt|�dtdd�}tjddgdd�d	D�d
�}t||�dS)Nz0, 1, 2.3
4, 5, 6.7r�za, b, c)r�rRr�)gg�?gffffff@)g@g@g������@cSsg|]}|tf�qSr )rT)r#r?r r r!r$�szBTestFromTxt.test_single_dtype_w_explicit_names.<locals>.<listcomp>r�)rR)rBr7rrTrSr)rr�r�rBr 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�T)r�rRr�)gg�?gffffff@)g@g@g������@cSsg|]}|tf�qSr )rT)r#r?r r r!r$�szBTestFromTxt.test_single_dtype_w_implicit_names.<locals>.<listcomp>r�)rR)rBr7rrTrSr)rr�r�rBr r r!�"test_single_dtype_w_implicit_names�s

z.TestFromTxt.test_single_dtype_w_implicit_namescCsRd}tjt|�dtttfdd�}tjddgdtfdtfd	tfgd
�}t||�dS)Nz0, 1, 2.3
4, 5, 6.7r�zf_%02i)r�rRr�)rg�?gffffff@)rQg@g������@Zf_00Zf_01Zf_02)rR)rBr7rrUrTrSr)rr�r�rBr r r!�test_easy_structured_dtype�s
z&TestFromTxt.test_easy_structured_dtypecCs�d}tddd�}tjt|�f|�}tjdgddtfdgd�}t||�tjt|�fd	d
i|��}tjdgddtfd
gd�}t||�dS)Nz01/01/2003  , 1.3,   abcder�)r�rR)z01/01/2003  g�������?z   abcde)rJz|S12rK)rLz|S8)rRZ	autostripT)z
01/01/2003g�������?r�)rJz|S10)rLz|S5)r;rBr7rrSrTr)rr�rJr�rBr r r!�test_autostrips
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�r�rR�AA�B_B�CC)rLr+g��Q�	@)rRr)r�r�rR�
replace_space�deletecharszA.AzB (B)zC:C)r�r�rRr�zB_(B))rBrArrUrTrSr)rr!r�
ctrl_dtyperBr r r!�test_replace_spaces$





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�T)r�r�rRr�r�r�)rLr+r,)rRr)r�r�rRr�r�zA.AzB (B)zC:C)r�r�rRr�zB_(B))rBrArrUrSr)rr!rr�rBr 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|�f|�}dS)
NzA,,C
0,1,2
3,4,5r�T)r�r�)rrLr+)r,rQr�cSsg|]}|tf�qSr )rU)r#r?r r r!r$Ksz5TestFromTxt.test_incomplete_names.<locals>.<listcomp>)rSrJrT)rRrRcSsg|]}|tf�qSr )rT)r#r?r r r!r$Ps)r;rBrSr7rr)rr�rJrBrr r r!�test_incomplete_namesEs


z!TestFromTxt.test_incomplete_namescCsPd}tjt|�tttfdd�}tjddgdtfdtfdtfgd�}t||�dS)	Nz1 2 3
 4 5 6rO)rRr�)rLr+r,)rQr�r�rJrK)rR)rBrArrUrTrSr)rr�rrBr r r!�test_names_auto_completionSs

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)rSrT�Er�)rr+rQT)rRr�r�r�)rBrArrUrrRr�)rr�Z
ctrl_namesrr r r!�test_names_with_usecols_bug1636\s







z+TestFromTxt.test_names_with_usecols_bug1636cCs�d}tdddd�}tjddgdtfdtfd	tfgd
�}tjt|�f|�}t||�tdddd�}tjddgdtfdtfd	tfgd
�}tjt|�f|�}t||�dS)Nz-    A    B   C
    0    1 2.3
   45   67   9.)r�r�rQT)r�r�rR)rrLgffffff@)rVrng"@rSrrT)rRr�)r;rBrSrUrTr7rr)rr�rJrBrr r r!�test_fixed_width_namesos


z"TestFromTxt.test_fixed_width_namescCsXd}tdddd�}tjdddgdddgd	d
dggtd�}tjt|�f|�}t||�dS)Ns1, 2, 3
1, , 5
0, 6, 
r�i���)r�rRr�rLr+r,r�rr�)rR)r;rBrSrUr7rr)rr�rJrBrr r r!�test_filling_values~s
&zTestFromTxt.test_filling_valuescCsLtjtd�dddd�}t|dd�tjtd�dddd�}t|dd�dS)Nztest1,testNonetherestofthedatar�)rRr�r�rLstestNonetherestofthedataztest1, testNonetherestofthedatas testNonetherestofthedata)rBrArr)rrr r r!�test_comments_is_none�s

z!TestFromTxt.test_comments_is_nonecCs�td�}tdddd�}tj|f|�}tjddgdtjfd	tjfgd
�}|�t|tj��t	||�td�}tj|fddd�|��}t
jdd
gddgdtjfd	tjfgd�}t	||�t	|j|j�t	|jddg�dS)NzA,B
0,1
2,3r�zN/AT)r�r~r�)rrL)r+r,rSr)rRz
A,B
0,1
2,N/A)rRrq)r+r)FF)FT)rtrRrr+)
rr;rB�
recfromtxtrSrU�
assertTruer@�recarrayrr|rtrS)rr�rJrr
r r r!�test_recfromtxt�s



zTestFromTxt.test_recfromtxtcCs�td�}tdddd�}tj|fddi|��}tjddgdtjfd	tjfgd
�}|�t|tj��t	||�td�}tj|fddd�|��}t
jdd
gddgdtjfd	tjfgd�}t	||�t	|j|j�t	|jddg�td�}tj|dd�}tjddgdtjfdtjfgd
�}|�t|tj��t	||�td�}dtjfdtj
fg}tj|d|d�}tjddg|d
�}|�t|tj��t	||�dS)NzA,B
0,1
2,3zN/AT)r~r��case_sensitiverR)rrL)r+r,rSr)rRz
A,B
0,1
2,N/A)rRrq)r+r)FF)FT)rtrRrr+)r~rOr~)r~rR)rr;rBrhrSrUr�r@r�rr|rtrSrT)rr�rJrr
rRr r r!�test_recfromcsv�s8






zTestFromTxt.test_recfromcsvc	Cs�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||�WdQRXd}t|�}tj|dddd�}tjdddgddgd�}t||�tj|d|j
d�}tjd d!gddgd�}t||�dS)"Nz1 2
3 4
5 6
7 8
9 10
r,)�max_rowsrLr+rQr�r�r�r�r�r�rz1 1
2 2
0 
3 3
4 4
5  
6  
7  
g�?g@)r=r�F)r�rDg@g@z"a b
#c d
1 1
2 2
#0 
3 3
4 4
5  5
T)r:r�r�)g�?g�?)g@g@)g@g@)r�z<f8)r�z<f8)rR)r�rR)g@g@)g@g@)rrBrArrr�rSrr�r	rR)rr�r!Za1Za2rr
r�r r r!�
test_max_rows�s@


"
"

zTestFromTxt.test_max_rowscCs�t�d��d�}tjddkr$d}nd}x^|D]V}d|d}t��0}t|d	��}|�|�WdQRXt�|�}WdQRXt	||�q.WdS)
Nr�)r+r,rr,)r�z
)r�z
�
z0 1 2z3 4 5r�)
rBr&Zreshaper.r/rr�r"rAr)rr�linesep�sepr�r<r�rr r r!�test_gft_using_filename�s
z#TestFromTxt.test_gft_using_filenamecCs(dd�}t�|��}t|t�d��dS)Ncss$xtd�D]}td|�Vq
WdS)Nr�z%d)rdr
)rar r r!r%sz3TestFromTxt.test_gft_using_generator.<locals>.countr�)rBrArr&)rr%rr r r!�test_gft_using_generatorsz$TestFromTxt.test_gft_using_generatorcCs�td�}tj|dd�}t|jjdddg�t|jdtjk�t|jdtjk�t|jdtj	k�t
|dd�t|dd�t|dd�dS)	Nz%73786976294838206464 17179869184 1024)rRrJrKrLgDli)rrBr7rrRr�rrTr�Zintegerr)rr�rr r r!�test_auto_dtype_largeintsz$TestFromTxt.test_auto_dtype_largeintN)Er'r(r)r_rVrYr9r�rCrErFrMrNr�rQrRrWr�rYr\r]rrarbrerirrlrmrpr�rur�rwrxryrzr�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!r6�s�

			
	

	


				
		"6	r6c@seZdZejj�edkd�dd��Zejj�edkd�dd��Z	ejj�edkd�dd��Z
ejj�edkd�d	d
��Zejj�edkd�dd��Zejj�edkd�d
d��Z
ejj�edkd�dd��Zejj�edkd�dd��Zejj�edkd�dd��ZdS)�
TestPathUsageNzNo pathlib.Pathc	CsXtdd��D}t|�}t�ddgddgg�}t�||�t�|�}t||�WdQRXdS)Nz.txt)rwg�������?r+r,rQ)rr
rBrSr�r�r)r�pathrOr\r r r!�test_loadtxt1s
zTestPathUsage.test_loadtxtc	CsZtdd��F}t|�}t�ddgddggt�}t�||�t�|�}t||�WdQRXdS)Nz.npy)rwrLr+r,rQ)rr
rBrSrUrorCr)rr�rOr�r r r!�test_save_load:s
zTestPathUsage.test_save_loadc
CsTtdd��@}t|�}tj|dd�t�|��}t|dd�WdQRXWdQRXdS)Nz.npz)rwzplace holder)r�r�)rr
rBrsrCr)rr�r�r r r!�test_savez_loadDs
zTestPathUsage.test_savez_loadc	CsPtdd��<}t|�}tj|dd�t�|�}t|dd�|��WdQRXdS)Nz.npz)rwzplace holder)r�r�)rr
rBZsavez_compressedrCrrA)rr�r�r r r!�test_savez_compressed_loadMs
z(TestPathUsage.test_savez_compressed_loadc	CsPtdd��<}t|�}t�ddg�}t�||�t�|�}t||�WdQRXdS)Nz.txt)rw)rLr+)r,rQ)rr
rBrSr�rAr)rr�rOr�r r r!�test_genfromtxtWs
zTestPathUsage.test_genfromtxtc
Csttdd��`}t|�}|�d��}|�d�WdQRXtjddgddggtd	�}tj|td	�}t||�WdQRXdS)
Nz.txt)rwr�z1 2
3 4rLr+r,rQ)rR)	rr
r�r"rBrSrUr7r)rr�r�r
rr r r!�test_ndfromtxt`szTestPathUsage.test_ndfromtxtc
Cshtdd��T}t|�}|�d��}|�d�WdQRXtj|dd�}t�ddg�}t||�WdQRXdS)	Nz.txt)rwr�z1,2,3.0
4,5,6.0
r�)r�)g�?g@g@)g@g@g@)	rr
r�r"rBr{r|rSr)rr�r�rr
r r r!�test_mafromtxtlszTestPathUsage.test_mafromtxtc
Cs�tdd���}t|�}|�d��}|�d�WdQRXtdddd�}tj|f|�}tjd	d
gdtjfdtjfgd
�}|�	t
|tj��t||�WdQRXdS)Nz.txt)rwr�zA,B
0,1
2,3r�zN/AT)r�r~r�)rrL)r+r,rSr)rR)
rr
r�r"r;rBr�rSrUr�r@r�r)rr�r�rJrr
r r r!r�xs
zTestPathUsage.test_recfromtxtc
Cs�tdd���}t|�}|�d��}|�d�WdQRXtdddd�}tj|fddi|��}tjd	d
gdtjfdtjfgd
�}|�	t
|tj��t||�WdQRXdS)Nz.txt)rwr�zA,B
0,1
2,3zN/AT)r~r�r�rR)rrL)r+r,rSr)rR)
rr
r�r"r;rBrhrSrUr�r@r�r)rr�r�rJrr
r r r!r��s
zTestPathUsage.test_recfromcsv)r'r(r)rBrlrr�r
r�r�r�r�r�r�r�r�r�r r r r!r�/s	
	
	r�cCs`tj�d�}t�}tj|dd�}t�||�|��|�d�tj|dd�}tt�	|�|�dS)N)r�r�r�)�fileobj�moderrZ)
rBr�r�gzip�GzipFilerorAr>rrC)rOrr�r r r!�test_gzip_load�s
r�c
Cs�t�}tj|dd�}|�d�|��|�d�tdd��4}t|d��}|�|���WdQRXt	�
|�}WdQRX|��t|dd	d
g�dS)Nr�)r�r�s1 2 3
rz.gz)rwr�rLr+r,)rr�r�r"rAr>rr�r�rBr�r)rrPr<r�rr r r!�test_gzip_loadtxt�s

r�cCsXt�}tj|dd�}|�d�|��|�d�tj|dd�}tt�|�dddg�dS)	Nr�)r�r�s1 2 3
rrZrLr+r,)	rr�r�r"rAr>rrBr�)rr�r r r!�test_gzip_loadtxt_from_string�s

r�cCs�t�}t�d�}t�d�}tj|||d�|�d�t�|�}td|k�td|k�td|��k�td|��k�x,|��D] \}}t|dk�t	|j
d�q�Wtt|���dk�x|D]}t|dk�q�Wtd|��k�dS)N)r,r,)r\r^rr\r^r+)rrBr�rsr>rCr�keys�itemsrrNr�)rr\r^rr�rOr r r!�test_npzfile_dict�s"




r�cCsnt�}t�|dddg�|�d�tt���t��zt��t�	|�t��}Wdt�
�Xt|d�dS)NrLr+r,r)rrBrsr>r�gcZ	isenabledZdisableZcollectrCZenabler)r�Zn_objects_in_cyclesr r r!�test_load_refcount�s


r��__main__)N)AZ
__future__rrrr.r�rGr�Ztempfilerr0rfr��iorrZnumpyrBZnumpy.mar|Znumpy.lib._iotoolsrr	Znumpy.compatr
rrr
Znumpy.ma.testutilsrZ
numpy.testingrrrrrrrrrrrrrr/ZMAJVERZMINVER�maxsizer�r1rWr4rnrrr�r�r+r6r�r�r�r�r�r�r'r r r r!�<module>s^8

k&-f