
    Ngs                    ^   d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl	Z	d dl
mZ d dlmZ d dlmZmZ d dlmZ d dlZd dlmZmZ d dlmZ d dlZd dlmZ d dlmZmZ d d	lmZ d d
l m!Z! d dl"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/m0Z0m1Z1 d dl2m3Z3  G d de          Z4e j5        dk    Z6	 d dl7Z7dZ8n# e9$ r dZ8Y nw xY w	 d dl:Z:dZ;n# e9$ r dZ;Y nw xY wd2dZ< G d d          Z= G d de=          Z> G d de=          Z? G d d          Z@ G d d          ZA G d deA          ZB G d d           ZC G d! d"eA          ZD G d# d$          ZEd% ZF G d& d'          ZG G d( d)          ZHd* ZId+ ZJd, ZKd- ZLe	jM        N                    e, d./          d0             ZOd1 ZPdS )3    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IS_WASM)requires_memoryc                   &    e Zd ZdZddZd Zd ZdS )TextIOzHelper 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.

     c                 J    t          j        | t          |                     d S N)r   __init__r   selfss     S/var/www/html/ai-engine/env/lib/python3.11/site-packages/numpy/lib/tests/test_io.pyr%   zTextIO.__init__*   s!    wqzz*****    c                 J    t          j        | t          |                     d S r$   )r   writer   r&   s     r)   r,   zTextIO.write-   s     dGAJJ'''''r*   c                 D    t          j        | d |D                        d S )Nc                 ,    g | ]}t          |          S  r   ).0r(   s     r)   
<listcomp>z%TextIO.writelines.<locals>.<listcomp>1   s    !<!<!<'!**!<!<!<r*   )r   
writelines)r'   liness     r)   r2   zTextIO.writelines0   s*    4!<!<e!<!<!<=====r*   N)r"   )__name__
__module____qualname____doc__r%   r,   r2   r/   r*   r)   r!   r!   !   sP         + + + +( ( (> > > > >r*   r!   l        TFc                     t          |           t          k    r|                     d          } t          t	          j        | |          dd          S )zY
    This function is available in the datetime module only from Python >=
    2.5.

    latin1N   )typebytesdecoder   timestrptime)r(   fmts     r)   r?   r?   A   sF     Aww%HHXT]1c**2A2.//r*   c                       e Zd Zd Zd Zd Zd Zd Zej	        
                    ej        dk    d          d	             Zd
 Zej	        j        d             ZdS )RoundtripTestc                    |                     di           }|                     dddi          }|                     dd          }|rt          d          }|j        }nt                      }|}	 |}	 ||g|	R i | |                                 |                    d           t          j        d	k    r)t          |t                    s|	                                 t          j        |fi |}
|	| _        |
| _        t          |t                    sc|	                                 d
t                      v rAt          |
t          j        j        j                  st%          j        |j                   dS dS dS dS # t          |t                    sb|	                                 d
t                      v r?t          |
t          j        j        j                  st%          j        |j                   w w w w xY w)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allow_pickleTfile_on_diskF)deleter   win32arr_reloadedN)getr   namer   flushseeksysplatform
isinstanceclosenploadarrrJ   localslibnpyioNpzFileosremove)r'   	save_funcargskwargsrD   rE   rG   target_file	load_filerU   rJ   s              r)   	roundtripzRoundtripTest.roundtripM   s    JJ{B//	JJ{^T,BCC	zz.%88 	$,E:::K#(II!))K#I	4CIk5C5559555Q|w&&z+w/O/O&!!###79::	::LDH ,Dk733 4!!###!VXX--%lBFL4HII 4	+"2333334 4 .-4 4	 k733 4!!###!VXX--%lBFL4HII 4	+"233334 .4s   0BE> >A;G9c                    |                      |           |                      |d           |                      t          j        |                     |                      t          j        |          d           |j        d         dk    rb|                      t          j        |          dd                     |                      t          j        |          dd          d           d S d S )NT)rG   r      )ra   rS   asfortranarrayshaper'   as     r)   check_roundtripszRoundtripTest.check_roundtrips}   s    qqt,,,r(++,,,r(++$???71:>>NN2,Q//3444NN2,Q//3$NGGGGG >r*   c                 $   t          j        g t                    }|                     |           t          j        ddgddggt                    }|                     |           t          j        ddgddggt                    }|                     |           t          j        ddgddggt           j        	          }|                     |           t          j        ddgddggt           j        	          }|                     |           d S )
Nrc      r:      y      ?      @y       @      @y      @      @y      @       @dtype)rS   arrayfloatrh   intcsinglecdoublerf   s     r)   
test_arrayzRoundtripTest.test_array   s   HRa   Hq!fq!f%u--a   Hq!fq!f%s++a   Hvv&(89LLLa   Hvv&(89LLLa     r*   c                     t          j        g t                    }|                     |           t          j        ddgddggt                    }|                     |           d S )Nrc   rj   r:   rk   )rS   rn   objectrh   rf   s     r)   test_array_objectzRoundtripTest.test_array_object   s_    HR  a   Hq!fq!f%v..a     r*   c                 h    t          j        g dt                    }|                     |           d S )Nrc   rj   r:   rk   )rS   rn   rp   ra   rf   s     r)   test_1DzRoundtripTest.test_1D   s/    H\\\3''qr*   rI   zFails on Win32reasonc                     t          j        ddgddgg          }|                     |dddi           t          j        ddgddgg          }|                     |dddi           d S )	Nrc   g      @rk   g333333@T	mmap_moder)rG   rE   )rS   rn   ra   rd   rf   s     r)   	test_mmapzRoundtripTest.test_mmap   s{    Hq#hC)**qtS7IJJJ3x!S233qtS7IJJJJJr*   c                 d    t          j        ddgddg          }|                     |           d S )Nrc   rj   r:   rk   xi4yr   rl   )rS   rn   rh   rf   s     r)   test_recordzRoundtripTest.test_record   s:    Hff%k;-GHHHa     r*   c                     d t          d          D             }t          j        d|          }t          j        d          5  t          j        ddt                     |                     |           d d d            d S # 1 swxY w Y   d S )	Nc                 ,    g | ]}d |z  dz  t           fS )%dd   ro   r0   is     r)   r1   z1RoundtripTest.test_format_2_0.<locals>.<listcomp>   s&    <<<AqC'<<<r*     i  rl   Trecordalwaysr"   )rangerS   oneswarningscatch_warningsfilterwarningsUserWarningrh   )r'   dtrg   s      r)   test_format_2_0zRoundtripTest.test_format_2_0   s    <<s<<<GD###$D111 	% 	%#Hb+>>>!!!$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%s   1BB
BN)r4   r5   r6   ra   rh   rs   rv   ry   pytestmarkskipifrO   rP   r   r   slowr   r/   r*   r)   rB   rB   L   s        .4 .4 .4`H H H! ! ! ! ! !   [/8HIIK K JIK! ! ! [% % % % %r*   rB   c                       e Zd Zd ZdS )TestSaveLoadc                 B   t          j        | t          j        g|R i | t	          | j        d         | j                   t	          | j        d         j        | j        j                   t	          | j        d         j        j	        | j        j        j	                   d S )Nr   )
rB   ra   rS   saver   rU   rJ   rm   flagsfnc)r'   r]   r^   s      r)   ra   zTestSaveLoad.roundtrip   s    bg???????TXa[$"3444TXa[&(9(?@@@TXa[&*D,=,C,GHHHHHr*   N)r4   r5   r6   ra   r/   r*   r)   r   r      s(        I I I I Ir*   r   c                      e Zd Zd Zej                            ed          ej                            e d          ej        j	        d                                     Z
d Zd Zd Zd	 Zej                            ed
          d             Zd Zej        j        d             Zd Zej                            dg d          d             ZdS )TestSavezLoadc                 ~   t          j        | t          j        g|R i | 	 t	          | j                  D ]c\  }}| j        d|z           }t          ||           t          |j        |j                   t          |j	        j
        |j	        j
                   d	 | j        j        rC| j        j                                         t          j        | j        j        j                   d S d S # | j        j        rB| j        j                                         t          j        | j        j        j                   w w xY w)Nzarr_%d)rB   ra   rS   savez	enumeraterU   rJ   r   rm   r   r   fidrR   rZ   r[   rL   )r'   r]   r^   nrU   reloadeds         r)   ra   zTestSavezLoad.roundtrip   s=   bh@@@@@@@
	6#DH-- @ @3,X\:S(+++SY777SY]HN,>????	@  $ 6!%++---	$+/4555556 6t $ 6!%++---	$+/455556s   A8C, ,AD<zHangs on PyPyrz   zNeeds 64bit platformc                 .   d}t          j        |t           j                  }t          dd          5 }t          j        ||           ~t          j        |          }|d         }|                                 ~d d d            d S # 1 swxY w Y   d S )Nl     rl   numpy_test_big_arrays_.npz)prefixsuffixrg   rg   )rS   emptyuint8r   r   rT   rR   )r'   Lrg   tmpnpfiles        r)   test_big_arrayszTestSavezLoad.test_big_arrays   s     HQbh'''5fEEE 	HSAWS\\FsALLNNN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A	B

BBc                     t          j        ddgddggt                    }t          j        ddgddggt                    }|                     ||           d S )	Nrc   rj   r:   rk         ?       @       @      @      @            @      (@)rS   rn   ro   complexra   )r'   rg   bs      r)   test_multiple_arraysz"TestSavezLoad.test_multiple_arrays   sZ    Hq!fq!f%u--Hvv&(9:GDDq!r*   c                 z   t          j        ddgddggt                    }t          j        ddgddggt                    }t	                      }t          j        |||	           |                    d
           t          j        |          }t          ||d                    t          ||d                    d S Nrc   rj   r:   rk   r   r   r   r   )file_afile_br   r   r   )	rS   rn   ro   r   r   r   rN   rT   r   r'   rg   r   cls        r)   test_named_arrayszTestSavezLoad.test_named_arrays   s    Hq!fq!f%u--Hvv&(9:GDDII
1Q''''	q			GAJJQ($$$Q($$$$$r*   c                 D   t          j        g d          }t                      }t          j        ||           |                    d           t          j        |          }t          j        t          d          5  |d          d d d            d S # 1 swxY w Y   d S )Nrc   rj   r:   r   r   z(1, 2)matchr   )	rS   rn   r   r   rN   rT   r   raisesKeyError)r'   rg   fr   s       r)   test_tuple_getitem_raisesz'TestSavezLoad.test_tuple_getitem_raises   s    HYYYII
a	q			GAJJ]88444 	 	dGG	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   ?	BBBc                    t          j        ddgddggt                    }t          j        ddgddggt                    }t	                      }t          j        |||	           |                    d
           t          j        |          }t          t          t          |j                            ddg           t          ||j        j                   t          ||j        j                   d S r   )rS   rn   ro   r   r   r   rN   rT   r   sorteddirr   r   r   r   s        r)   test_BagObjzTestSavezLoad.test_BagObj   s    Hq!fq!f%u--Hvv&(9:GDDII
1Q''''	q			GAJJVCHH%%':;;;Q
###Q
#####r*   zCannot start threadc                     d g fdt          d          D             }|D ]}|                                 |D ]}|                                 rt                    d S )Nc                     t          d          5 }t          j                            dd          }	 t          j        ||           n,# t
          $ r}|                     |           Y d }~nd }~ww xY wd d d            d S # 1 swxY w Y   d S )Nr   r   r   )rU   )r   rS   randomrandnr   OSErrorappend)
error_listr   rU   errs       r)   writerz9TestSavezLoad.test_savez_filename_clashes.<locals>.writer  s    ((( +Ciooc3//+HSc***** + + +%%c********+	+ + + + + + + + + + + + + + + + + +s:   !BA
	B

A3A.)B.A33BB
Bc                 >    g | ]}t          j        f           S )targetr]   )	threadingThread)r0   jerrorsr   s     r)   r1   z=TestSavezLoad.test_savez_filename_clashes.<locals>.<listcomp>  s;     & & & #6	BBB & & &r*   r:   )r   startjoinAssertionError)r'   threadstr   r   s      @@r)   test_savez_filename_clashesz)TestSavezLoad.test_savez_filename_clashes  s    
	+ 	+ 	+ & & & & &!!HH& & & 	 	AGGIIII 	 	AFFHHHH 	) (((	) 	)r*   c                 ,   t          d          5 }t          |d          5 }t          j        |d           d d d            n# 1 swxY w Y   t          |dd          5 }|                    d           t          |j                    t          j        |          d	          t          |j                    |                    d           t          |j                    d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )
Nr   r   wbLOVELY LOADdatarbi'  r   r   )r   openrS   r   rN   r   closedrT   )r'   r   fps      r)   test_not_closing_opened_fidz)TestSavezLoad.test_not_closing_opened_fid  s    V$$$ 
	'c4 1B-00001 1 1 1 1 1 1 1 1 1 1 1 1 1 1c4'' '2


BI&&&F##BI&&&


BI&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' '
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	' 
	'sX   D	AD	A			D	A		D	!BC1%D	1C5	5D	8C5	9D		DDc                 &   t          d          5 }t          j        |d           t                      5 }|                    t
                     t          dd          D ]}	 t          j        |          d          n&# t          $ r}d|z  }t          |          d }~ww xY w	 t          rt          j                     `# t          rt          j                     w w xY w	 d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )	Nr   r   r   r   rc   i  r   z#Failed to load data from a file: %s)r   rS   r   r   filterResourceWarningr   rT   	Exceptionr   r   gccollect)r'   r   supr   emsgs         r)   test_closing_fidzTestSavezLoad.test_closing_fid(  s    V$$$ 	)HS}---- #$$ 
)

?+++q$ ) )A)V,,,$ 2 2 2CaG,S1112 -
 # )JLLL # )JLLLL))
) 
) 
) 
) 
) 
) 
) 
) 
) 
) 
) 
) 
) 
) 
)	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)sj   %D-C.$A?>C?
B"		B	B"	"C&C.C	C."D.C2	2D5C2	6DD
D
c                    d}t          d|          5 }t          j        |d           t          j        |          }|j        j        }|                                 t          |j                   d d d            d S # 1 swxY w Y   d S )N&numpy_test_closing_zipfile_after_load_r   )r   r   place holderlab)	r   rS   r   rT   zipr   rR   r   r   )r'   r   r   r   r   s        r)   test_closing_zipfile_after_loadz-TestSavezLoad.test_closing_zipfile_after_loadB  s    
 :VF333 	sHSn----73<<DBJJLLLBI	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   AB  BBzcount, expected_repr))rc   z"NpzFile {fname!r} with keys: arr_0)   z>NpzFile {fname!r} with keys: arr_0, arr_1, arr_2, arr_3, arr_4)   zANpzFile {fname!r} with keys: arr_0, arr_1, arr_2, arr_3, arr_4...c                 f   t          j        ddgddggt                    }t          d          5 }t          j        |g|g|z  R   t          j        |          }t          |          |                    |          k    sJ |                                 d d d            d S # 1 swxY w Y   d S )Nrc   rj   r:   rk   r   r   )fname)	rS   rn   ro   r   r   rT   reprformatrR   )r'   countexpected_reprrg   r   r   s         r)   test_repr_lists_keysz"TestSavezLoad.test_repr_lists_keysO  s     Hq!fq!f%u--V$$$ 	HS%A3u9%%%%A77m222======GGIII		 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A(B&&B*-B*N)r4   r5   r6   ra   r   r   r   r   IS_64BITr   r   r   r   r   r   r   r   r   	slow_pypyr   r  parametrizer  r/   r*   r)   r   r      sw       6 6 6 [88[H-CDD[	 	  ED 98	  
% % %  	$ 	$ 	$ [(=>>) ) ?>).' ' ' [) ) )2   [3 6 6 6      r*   r   c                      e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zej                            dddg          ej                            deeg          d                         Zej                            ej        dk    d          ej        j         ed          d                                     ZdS )TestSaveTxtc                 f   t          j        ddgddggt                    }d}t                      }t          j        |||           |                    d           t          |                                t          |dz   |z   d	z   d
z            t          |dz   |z   d	z   dz            g           t          j        ddgddggt                    }t                      }t          j        ||d           |                    d           t          |                                ddg           d S )Nrc   rj   r:   rk   z%.18er@   r    
r   r   r      1 2
   3 4
)
rS   rn   ro   r   savetxtrN   r   	readlinesr   rp   )r'   rg   r@   r   s       r)   rs   zTestSaveTxt.test_array`  s%   Hq!fq!f%u--II

1aS!!!!	q			Q[[]]sSy35?@@sSy35?@@B	C 	C 	C Hq!fq!f%s++II

1aT""""	q			Q[[]]Xx$899999r*   c                     t          j        g dt                    }t                      }t          j        ||d           |                    d           |                                }t          |g d           d S )Nrx   r   r  r   )s   1
s   2
s   3
s   4
)rS   rn   rp   r   r  rN   r  r   r'   rg   r   r3   s       r)   ry   zTestSaveTxt.test_1Dp  sp    H\\\3''II

1aT""""	q			U<<<=====r*   c           	          t                      }t          t          t          j        |t          j        d                     t          t          t          j        |t          j        dgdggg                     d S )Nrc   rj   )r   r   
ValueErrorrS   r  rn   r'   r   s     r)   
test_0D_3DzTestSaveTxt.test_0D_3Dx  sY    IIj"*a!===j"*aQC!:,1G1GHHHHHr*   c                     t          j        ddgddg          }t                      }t          j        ||d           |                    d           t          |                                d	d
g           d S )Nr   r   r   r   rl   r   r  r   r  r  rS   rn   r   r  rN   r   r  r'   rg   r   s      r)   test_structuredzTestSaveTxt.test_structured}  sr    Hff%k;-GHHHII

1aT""""	q			Q[[]]Xx$899999r*   c                    t          j        ddgg d          }t                      }t          j        ||ddg         d           |                    d	           t          |                                d
dg           d S )Nr   rk   r  r	  ))foor   )barr   )bazr   rl   r*  r,  r   r  r   s   1 3
s   4 6
r%  r&  s      r)   test_structured_paddedz"TestSaveTxt.test_structured_padded  s    Hi	* 3
 3
 3
    II

1a'T2222	q			Q[[]]Xx$899999r*   c                 ,   t          j        dg d          }|ddg         }t          d          5 }t          |          }t          j        ||           t          j        |          }t          ||           d d d            d S # 1 swxY w Y   d S )Nrc   )r   r   )zf4rl   r   r/  .npyr   )rS   r   r   r   r   rT   r   )r'   rg   vpathr   s        r)   test_multifield_viewz TestSaveTxt.test_multifield_view  s    GADDDEEEsCjMV$$$ 	(::DGD!74==DtQ'''		( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(s   A	B		BBc                     t          j        ddgddgg          }t                      }t          j        ||dd           |                    d           t          |                                d	d
g           d S )N      ?       @      @      @,r   )	delimiterr@   r   s   1,2
s   3,4
r%  r&  s      r)   test_delimiterzTestSaveTxt.test_delimiter  sr    Hr2hR)**II

1a3D1111	q			Q[[]]Xx$899999r*   c                    t          j        ddg          }t                      }t          j        ||ddg           |                    d           t          |                                ddg           t                      }t          j        ||d	           |                    d           |                                }t          |d
dg           t                      }t          j        ||d	d           |                    d           |                                }t          |d
dg           t                      }t          t          t           j        ||d           d S )Nr   r   z%02dz%3.1fr  r   s   01 2.0
s   03 4.0
z%02d : %3.1fs	   01 : 2.0
s	   03 : 4.0
r:  )r@   r;  c   )	rS   rn   r   r  rN   r   r  r   r!  r  s       r)   test_formatzTestSaveTxt.test_format  s;   Hff%&&II

1afg.////	q			Q[[]][+$>??? II

1a^,,,,	q			U]M:;;; II

1a^s;;;;	q			U]M:;;; IIj"*a;;;;;;r*   c                    t                      }t          j        ddgt                    }d}t          j        ||d|           |                    d           t          |                                t          d|z   d	z                        t                      }t          j        ||d|
           |                    d           t          |                                t          d|z   dz                        t                      }d}t          j        ||d||           |                    d           t          |                                t          ||z   dz   dz                        t                      }d}t          j        ||d||           |                    d           t          |                                t          d|z   |z   dz                        d S )Nr   r   rl   zTest header / footerz%1d)r@   headerr   z# z	
1 2
3 4
)r@   footerz
1 2
3 4
# r  z% )r@   rA  commentsz1 2
3 4
)r@   rB  rC  )	r   rS   rn   rp   r  rN   r   readr   )r'   r   rg   test_header_footer
commentstrs        r)   rE  zTestSaveTxt.test_header_footer  s    IIHff%S1113

1aU+=>>>>	q			QVVXXT$66GHH	J 	J 	J II

1aU+=>>>>	q			QVVXX^.@@4GHH	J 	J 	J II


1aU,z	C 	C 	C 	C	q			QVVXXZ*<<tClRSS	U 	U 	U II


1aU,z	C 	C 	C 	C	q			QVVXX\J69KKdRSS	U 	U 	U 	U 	Ur*   c                     t                      5 }t          j        ddg          }t          j        ||           t          j        |          }t          ||           d d d            d S # 1 swxY w Y   d S )Nr   r   )r   rS   rn   r  loadtxtr   )r'   rL   rg   r   s       r)   test_file_roundtripzTestSaveTxt.test_file_roundtrip  s    ZZ 	%4&&)**AJtQ
4  Aq!$$$		% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%s   AA,,A03A0c                    d}d}t          j        ||ft           j                  }t           j        }t           j        }|d|z  z   |d d <   t                      }t          j        ||d           |                    d           |                                }t          |ddg           t                      }t          j        ||d|z             |                    d           |                                }t          |d	d	g           t                      }t          j        ||d
g|z             |                    d           |                                }t          |ddg           d S )Nrj   rl                 ?z %+.3er  r   s8    ( +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)

rS   zeros
complex128pir   r   r  rN   r  r   r'   ncolsnrowsrg   reimr   r3   s           r)   test_complex_arrayszTestSaveTxt.test_complex_arrays  s   HeU^2=999UTD2I~!!! II

1aX&&&&	q			IIK	L 	L 	L II

1a]U23333	q			BBD	E 	E 	E II

1an-56666	q			??A	B 	B 	B 	B 	Br*   c                 \   d}d}t          j        ||ft           j                  }t           j        }t           j        }|d|z  z
  |d d <   t                      }t          j        ||d           |                    d           |                                }t          |ddg           d S )Nrj   rl   rK  z%.3er  r   s0    (3.142e+00-2.718e+00j)  (3.142e+00-2.718e+00j)
rL  rP  s           r)   test_complex_negative_exponentz*TestSaveTxt.test_complex_negative_exponent  s    HeU^2=999UTD2I~!!!II

1aV$$$$	q			AAC	D 	D 	D 	D 	Dr*   c                      G d dt                     } |            }t          j        ddg          }t          j        ||           t          j        |          }t          ||           d S )Nc                       e Zd Zd ZdS )4TestSaveTxt.test_custom_writer.<locals>.CustomWriterc                 V    |                      |                    d                     d S )N   
)extendsplit)r'   texts     r)   r,   z:TestSaveTxt.test_custom_writer.<locals>.CustomWriter.write  s&    DJJu--.....r*   N)r4   r5   r6   r,   r/   r*   r)   CustomWriterrZ    s#        / / / / /r*   r`  r   r   )listrS   rn   r  rH  r   )r'   r`  wrg   r   s        r)   test_custom_writerzTestSaveTxt.test_custom_writer  s    	/ 	/ 	/ 	/ 	/4 	/ 	/ 	/ LNNHff%&&

1aJqMM1a     r*   c                 .   d                     d          }t          j        |gt          j                  }t	                      5 }t          j        t          j                            |d          |dgd           d d d            d S # 1 swxY w Y   d S )N   ϖUTF-8rl   test.csv%sr@   encoding)	r=   rS   rn   str_r   r  rZ   r3  r   )r'   utf8rg   tmpdirs       r)   test_unicodezTestSaveTxt.test_unicode%  s    !!'**HdV27+++YY 	)&Jrw||FJ77 ') ) ) )	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   8B

BBc           	      `   d                     d          }t          j        |gt          j                  }ddg}t          r|                    d           t          r|                    ddg           t                      5 }|D ]}t          j	        t          j                            |d	|z             |d
gd           t          j        t          j                            |d	|z             dt          j                  }t          ||           	 d d d            d S # 1 swxY w Y   d S )Nre  rf  rl   r"   .gz.bz2.xz.lzmarg  rh  z	UTF-16-LEri  rj  rm   )r=   rS   rn   rk  HAS_BZ2r   HAS_LZMAr]  r   r  rZ   r3  r   rH  r   )r'   rl  rg   suffixesrm  r   r   s          r)   test_unicode_roundtripz"TestSaveTxt.test_unicode_roundtrip-  sq   !!'**HdV27+++; 	$OOF### 	.OOUG,---YY 	)&" ) )
27<<
V0CDDa $v= = = =Jrw||FJ4GHH(327D D D"1a(((()	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   BD##D'*D'c                 Z   d                     d          }t          j        |gt          j                  }t	                      }t          j        ||dgd           |                    d           t          |                                                     d          |dz              d S Nre  rf  rl   rh  ri  r   r  )	r=   rS   rn   rk  r   r  rN   r   rD  r'   rl  rg   r(   s       r)   test_unicode_bytestreamz#TestSaveTxt.test_unicode_bytestream>  s    !!'**HdV27+++II

1adVg6666	q			QVVXX__W--td{;;;;;r*   c                 4   d                     d          }t          j        |gt          j                  }t	                      }t          j        ||dgd           |                    d           t          |                                |dz              d S rz  )	r=   rS   rn   rk  r   r  rN   r   rD  r{  s       r)   test_unicode_stringstreamz%TestSaveTxt.test_unicode_stringstreamF  s    !!'**HdV27+++JJ

1adVg6666	q			QVVXXtd{+++++r*   r@   %fs   %fiotypec                 F   t          j        dg          } |            }t          j        |||           |                    d           |t          u r't          |                                ddz             d S t          |                                ddz             d S )Nr6  r  r   z%f
s   %f
)rS   rn   r  rN   r   r   rD  )r'   r@   r  rg   r(   s        r)   test_unicode_and_bytes_fmtz&TestSaveTxt.test_unicode_and_bytes_fmtN  s     HbTNNFHH

1aS!!!!	q			X6B;/////7R<00000r*   rI   zfiles>4GB may not workrz   g   `A)
free_bytesc                 V   d }t          t                    }t          d          }|                    ||f          }|                                 |                                 |j        rt          d          |j        dk    rt          j
        d           |j        dk    sJ d S )Nc                 \   d| _         	 t          j        d t          d          D             t                    }t                      5 }t          j        t          j        	                    |d          |           d d d            d S # 1 swxY w Y   d S # t          $ r	 d| _          w xY w)NFc                     g | ]@}t           j                            t           j                            d d          d          AS )2   r   rk   )rS   r   randrandintr   s     r)   r1   zGTestSaveTxt.test_large_zip.<locals>.check_large_zip.<locals>.<listcomp>d  sW     (@ (@ (@,- )+	(*	(9(9"S(A(A!)E )E (@ (@ (@r*   i 5 rl   ztest.npz)	test_dataT)valuerS   asarrayr   ru   r   r   rZ   r3  r   MemoryError)memoryerror_raisedr  rm  s      r)   check_large_zipz3TestSaveTxt.test_large_zip.<locals>.check_large_zip_  s   ',$ J (@ (@16v(@ (@ (@GMO O O	 YY 2&HRW\\&*=='02 2 2 22 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2    +/"(s0   A B 	5B>B BB BB B+forkr   z,Child process raised a MemoryError exceptionzCsubprocess got a SIGKILL, apparently free memory was not sufficientr   )r   r
   r	   Processr   r   r  r  exitcoder   xfail)r'   r  r  ctxps        r)   test_large_zipzTestSaveTxt.test_large_zip[  s    	 	 	" #6]]
 &!!KK6H5JKKK					# 	NLMMM:L^___zQr*   N) r4   r5   r6   rs   ry   r#  r'  r-  r4  r<  r?  rE  rI  rU  rW  rc  rn  rx  r|  r~  r   r   r  r   r   r  r   rO   rP   r   r   r  r/   r*   r)   r  r  _  s       : : : > > >I I I
: : :: : :( ( (: : :< < <4 U  U  UD% % %$B $B $BLD D D$
! 
! 
!) ) )) ) )"< < <, , , [UT5M22[X'':;;	1 	1 <; 32	1 [g-6NOO[_$$$    %$  PO     r*   r  c                       e Zd Zd Zd Zej                            e d          d             Z	ej                            e
 d          d             Zd Zd	 Zd
 Zd Zd ZdS )LoadTxtBasec           	      &   t          j        d                              d          }d}|D ]}d|z   dz   }|D ]}t          |          5 } ||dd	          5 }	|	                    |           d d d            n# 1 swxY w Y   |                     |d
          }
t          |
|            ||dd
          5 }	|                     |	          }
d d d            n# 1 swxY w Y   t          |
|           d d d            n# 1 swxY w Y   ،d S )Nr	  rj   r:   r  z
0 1 23 4 5r   wtz	UTF-32-LE)moderj  rj  rt)rS   arangereshaper   r,   loadfuncr   )r'   fopenrw  wantedlinesepsepr   r   rL   r   ress              r)   check_compressedzLoadTxtBase.check_compressed  s   1%%f--& 
	4 
	4CS=7*D" 4 4V,,, 4t$EEE && & & & & & & & & & & & & & &--{-CCC&sF333tT[AAA /Q"mmA../ / / / / / / / / / / / / / /&sF3334 4 4 4 4 4 4 4 4 4 4 4 4 4 44
	4 
	4sZ   
DA;	/D;A??DA?8D;C	DC!!D$C!%DDDc                 F    |                      t          j        d           d S )N)rp  )r  gzipr   r'   s    r)   test_compressed_gzipz LoadTxtBase.test_compressed_gzip  s     di22222r*   z	Needs bz2rz   c                 F    |                      t          j        d           d S )N)rq  )r  bz2r   r  s    r)   test_compressed_bz2zLoadTxtBase.test_compressed_bz2  s     ch	22222r*   z
Needs lzmac                 F    |                      t          j        d           d S )N)rr  rs  )r  lzmar   r  s    r)   test_compressed_lzmaz LoadTxtBase.test_compressed_lzma  s!    di)9:::::r*   c                 F   t                      5 }t          |d          5 }|                    d                    d                     d d d            n# 1 swxY w Y   |                     |d          }t          |g d           d d d            d S # 1 swxY w Y   d S )Nr   z0.
1.
2.UTF-16r  )        r6  r7  )r   r   r,   encoder  r   )r'   r3  r   r   s       r)   test_encodingzLoadTxtBase.test_encoding  s   ZZ 	04dD!! 7Q++H556667 7 7 7 7 7 7 7 7 7 7 7 7 7 7dX66Aq,,,///		0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0s4   B)A	BA	BA	,BBBc                    d                     d          }t                      5 }t          |d          5 }|                    |                    d                     d d d            n# 1 swxY w Y   |                     |dt          j                  }t          ||           d d d            d S # 1 swxY w Y   d S )Ns   öüörf  r   r  rt  )	r=   r   r   r,   r  r  rS   rk  r   )r'   nonasciir3  r   r   s        r)   test_stringloadzLoadTxtBase.test_stringload  s)   .55g>>ZZ 	,4dD!! 3Q112223 3 3 3 3 3 3 3 3 3 3 3 3 3 3dXRWEEAq(+++		, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,s4   B4)A*B4*A.	.B41A.	25B44B8;B8c                     d}|                      t          |          t          j        d          }t	          |t          j        |                    d                                                               d S Ns   h  i  jr  )rm   rj  )r  r   rS   rk  r   rn   r=   r^  r'   utf16r2  s      r)   test_binary_decodezLoadTxtBase.test_binary_decode  s^    4MM'%..(MKK1bhu||H'='='C'C'E'EFFGGGGGr*   c                 0   t                      }|                    d           |                    d           |                     |t          j        dd i          }t	          j        d                    d          g          }t          ||           d S )Nre  r   c                 ,    |                      d          S )Nrf  r=   r   s    r)   <lambda>z4LoadTxtBase.test_converters_decode.<locals>.<lambda>  s    188G3D3D r*   )rm   
convertersrf  )	r!   r,   rN   r  rS   rk  rn   r=   r   r'   r   r   rg   s       r)   test_converters_decodez"LoadTxtBase.test_converters_decode  s    HH		q			MM!27&')D)D%E  G GHk((112331a     r*   c                    d                     d          }t                      5 }t          j        |dd          5 }|                    |           d d d            n# 1 swxY w Y   |                     |t          j        dd id          }t          j        |dz   g          }t          ||           d d d            d S # 1 swxY w Y   d S )	Nre  rf  r  r  r   c                     | dz   S )Nr   r/   r  s    r)   r  z6LoadTxtBase.test_converters_nodecode.<locals>.<lambda>  s
    q3w r*   rm   r  rj  r   )
r=   r   ior   r,   r  rS   rk  rn   r   )r'   rl  r3  r   r   rg   s         r)   test_converters_nodecodez$LoadTxtBase.test_converters_nodecode  sL   !!'**ZZ 	%4tg666 !              d"'*+->->)?'.  0 0A $*&&Aq!$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%s5   CACA"	"C%A"	&ACCCN)r4   r5   r6   r  r  r   r   r   ru  r  rv  r  r  r  r  r  r  r/   r*   r)   r  r    s        4 4 4 3 3 3 [GK883 3 983 [H\::; ; ;:;0 0 0, , ,H H H
! ! !
% 
% 
% 
% 
%r*   r  c                   T   e Zd Z eej                  Zd Zd Zd Z	d Z
d Zd Zd Zd Zd	 Zd
 Zej                            eoej        j        dk    d          d             Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d Z"d Z#d Z$d Z%ej                            eoej        j        dk    d          d             Z&ej                            eoej        j        dk    d          d             Z'd Z(d Z)d  Z*d! Z+d" Z,d# Z-d$ Z.d% Z/d& Z0ej                             e1j2                    d'k    d(          d)             Z3d* Z4d+ Z5d, Z6d- Z7ej        8                    d.d/gd0g d1fd0g d2fd0 e9d3          fd4g d5fd4g d6fd4 e9d7          fg          d8             Z:d9S ):TestLoadTxtc                 h    t           j        j        j        | _        dt           j        j        _        d S Nrc   )rS   rW   rX   _loadtxt_chunksize
orig_chunkr  s    r)   setup_methodzTestLoadTxt.setup_method  s"    &,9*+'''r*   c                 <    | j         t          j        j        _        d S r$   )r  rS   rW   rX   r  r  s    r)   teardown_methodzTestLoadTxt.teardown_method  s    *./'''r*   c                     t                      }|                    d           |                    d           t          j        |dt          j        fdt          j        fg          }t          j        ddgdd	g          }t          ||           t                      }|                    d
           |                    d           ddd}t          j        ddg|          }t          j        ||          }t          ||           d S )N1 2
3 4r   r   r   rl   r   r   r   r   zM 64 75.0
F 25 60.0genderageweightS1r   r0  namesformatsM      P@     R@F      9@      N@)r!   r,   rN   rS   rH  int32rn   r   )r'   r   r   rg   dmydescriptorr   r   s           r)   r   zTestLoadTxt.test_record  s
   HH	
	q			Jq#rx3/ BCCCHff%k;-GHHH1a   HH	&'''	q			!<#57 7H'')0<> > >Jq---1a     r*   c                    t                      }|                    d           |                    d           t          j        |t
                    }t          j        ddgddggt
                    }t          ||           |                    d           t          j        |t                    }t          j        ddgddggt                    }t          ||           d S )Nr  r   rl   rc   rj   r:   rk   )	r!   r,   rN   rS   rH  rp   rn   r   ro   r  s       r)   rs   zTestLoadTxt.test_array  s    HH	
	q			Jq$$$Hq!fq!f%s++1a   	q			Jq&&&Hq!fq!f%u--1a     r*   c                    t                      }|                    d           |                    d           t          j        |t
                    }t          j        g dt
                    }t          ||           t                      }|                    d           |                    d           t          j        |t
          d          }t          j        g dt
                    }t          ||           d S )N1
2
3
4
r   rl   rx   1,2,3,4
r:  rm   r;  r!   r,   rN   rS   rH  rp   rn   r   r  s       r)   ry   zTestLoadTxt.test_1D  s    HH		q			Jq$$$H\\\3''1a   HH		q			Jqs333H\\\3''1a     r*   c                    t                      }|                    d           |                    d           t          j        |t
          ddd i          }t          j        g dt
                    }t          ||           d S )N	1,2,3,,5
r   r:  r:   c                 $    t          | pd          S Nrp   r(   s    r)   r  z*TestLoadTxt.test_missing.<locals>.<lambda>      AJ r*   rm   r;  r  rc   rj   r:   r  r  r  r  s       r)   test_missingzTestLoadTxt.test_missing  s    HH		q			Jqs#$&?&?"@B B BH'''--1a     r*   c                    t                      }|                    d           |                    d           t          j        |t
          ddd id          }t          j        dd	gd
dggt
                    }t          ||           d S )N1,2,3,,5
6,7,8,9,10
r   r:  r:   c                 $    t          | pd          S r  r  r  s    r)   r  z:TestLoadTxt.test_converters_with_usecols.<locals>.<lambda>  r  r*   rc   r:   rm   r;  r  usecolsrj   r     	   r  r  s       r)   test_converters_with_usecolsz(TestLoadTxt.test_converters_with_usecols  s    HH	()))	q			Jqs#$&?&?"@&( ( ( Hq$i!Q(#..1a     r*   c                    t                      }|                    d           |                    d           t          j        |t
          dd          }t          j        g dt
                    }t          ||           d S )N# comment
1,2,3,5
r   r:  #rm   r;  rC  rc   rj   r:   r  r  r  s       r)   test_comments_unicodez!TestLoadTxt.test_comments_unicode  sw    HH	&'''	q			Jqs #% % %H\\\3''1a     r*   c                    t                      }|                    d           |                    d           t          j        |t
          dd          }t          j        g dt
                    }t          ||           d S )Nr  r   r:     #r  r  r  r  s       r)   test_comments_bytezTestLoadTxt.test_comments_byte  sw    HH	&'''	q			Jqs $& & &H\\\3''1a     r*   c                    t                      }|                    d           |                    d           t          j        |t
          dg d          }t          j        g dg dgt
                    }t          ||           d S )Nz,# comment
1,2,3
@ comment2
4,5,6 // comment3r   r:  )r  @z//r  r   r)  r  r  s       r)   test_comments_multiplez"TestLoadTxt.test_comments_multiple'  s    HH	ABBB	q			Jqs 0 0 02 2 2Hiii+S111a     r*   )r  r:      zPyPy bug in error formattingrz   c                    t                      }|                    d           |                    d           t          j        |t
          dd          }t          j        g dt
                    }t          ||           t                      }|                    d           |                    d           t          t          t          j        |t
          dd           d S )Nz/* comment
1,2,3,5
r   r:  z/*r  r  z*/ comment
1,2,3,5
)
r!   r,   rN   rS   rH  rp   rn   r   r   r!  r  s       r)   test_comments_multi_charsz%TestLoadTxt.test_comments_multi_chars0  s     HH	'(((	q			Jqs $& & &H\\\3''1a    HH	'(((	q			j"*asc#	% 	% 	% 	% 	% 	%r*   c                 
   t                      }|                    d           |                    d           t          j        |t
          dd          }t          j        g dt
                    }t          ||           t                      }|                    d           |                    d           t          j        |t
          dd          }t          j        g dt
                    }t          ||           d S )Ncomment
1,2,3,5
r   r:  rc   )rm   r;  skiprowsr  r  r  r  s       r)   test_skiprowszTestLoadTxt.test_skiprowsB  s    HH	$%%%	q			Jqs !# # #H\\\3''1a   HH	&'''	q			Jqs !# # #H\\\3''1a     r*   c           
         t          j        ddgddggt                    }t                      }t          j        ||           |                    d           t          j        |t          d          }t          ||d d df                    t          j        g dg d	gt                    }t                      }t          j        ||           |                    d           t          j        |t          d
          }t          ||d d dd f                    |                    d           t          j        |t          t          j        ddg                    }t          ||d d dd f                    t          t           j	        t           j
        t           j        t           j        t           j        t           j        t           j        t           j        f	D ]X} |d          }|                    d           t          j        |t          |          }t          ||d d df                    Y G d d          } |            }|                    d           t          j        |t          |          }t          ||d d df                    |                    d           t          j        |t          |f          }t          ||d d df                    d}t#          |          }ddg}	ddg}
t          j        |dt%          t'          |	|
                              }t)          |d         ddg           t)          |d         ddg           |                    d           d}t+          t,          dt/          |          j        z  t           j        ||           t+          t,          dt/          |          j        z  t           j        |d|dg           d S )Nrc   rj   r:   rk   r   rc   rm   r  r   r:   rk   r  r   c                       e Zd Zd ZdS )*TestLoadTxt.test_usecols.<locals>.CrazyIntc                     dS r  r/   r  s    r)   	__index__z4TestLoadTxt.test_usecols.<locals>.CrazyInt.__index__r  s    qr*   N)r4   r5   r6   r$  r/   r*   r)   CrazyIntr"  q  s#            r*   r%  z<JOE 70.1 25.3
                BOB 60.5 27.9
                stidtempS4f8r   rj   r  rm      JOE   BOBL9@fffff;@      ?z^usecols must be.*%sr  )rS   rn   ro   r   r  rN   rH  r   rp   int8int16r  int64r   uint16uint32uint64r!   ra  r  r   r   	TypeErrorr;   r4   )r'   rg   r   r   int_typeto_readr%  	crazy_intr   r  dtypesrU   	bogus_idxs                r)   test_usecolszTestLoadTxt.test_usecolsS  s   Hq!fq!f%u--II

1a	q			Jqt4441a1g&&&Hiii+U33II

1a	q			Jqv6661a122h''' 	
q			JqrxA/?/?@@@1a122h''' bgrx28RXryBI/ 	+ 	+H hqkkGFF1III
1E7;;;Aq!AAAqD'****	 	 	 	 	 	 	 	 HJJ		q			Jqy9991a1g&&&	q			Jq	|<<<1a1g&&& 4LL jF$s5&7I7I2J2JKKKS[66"2333S[4,/// 	
q				"T)__%==J9	 	 	 	 	"T)__%==JAy!#4	 	 	 	 	 	r*   c                    t          j        t                    5  t          j        dgdgd           d d d            n# 1 swxY w Y   t          j        t
          t          f          5  t          j        dgdgd           d d d            n# 1 swxY w Y   t          j        t          d          5  t          j        dgd	d
gd           d d d            d S # 1 swxY w Y   d S )Nz1
l            r:  )r  r;  l            zQIf a structured dtype .*. But 1 usecols were given and the number of fields is 3.r   z1,1
zi,(2)ir   )rm   r  r;  )r   r   OverflowErrorrS   rH  r!  r8  r  s    r)   test_bad_usecolszTestLoadTxt.test_bad_usecols  s   ]=)) 	@ 	@Jw3????	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@]J677 	@ 	@Jw3????	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ ]934 4 4 	N 	N Jy1#MMMM	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	N 	Ns5   A  AA+BBB7CC#&C#c                 P   t                      }|                    d           |                    d           t          j        dt
          fddt
          fdt          fgfg          }t          j        ||d          }t          j        d	d
g|          }t          ||           d S )N1,2,3.0
4,5,6.0
r   r   r   r   r(   r:  r  rc   )rj   r8  rk   )r        @)
r!   r,   rN   rS   rm   rp   ro   rH  rn   r   r'   r   r   r   rg   s        r)   test_fancy_dtypezTestLoadTxt.test_fancy_dtype  s    HH	$%%%	q			XSzC3*sEl)C#DEFFJqc222Hm]3R881a     r*   c                    t          d          }t          j        ddt          fdt          fdt          dfg          }t          j        ||          }t          j        dd	d
g dg dgfg|          }t          ||           d S Nzaaaa  1.0  8.0  1 2 3 4 5 6rL   r(  r   r   blockr  rl   aaaar6         @r   r)  r!   rS   rm   ro   rp   rH  rn   r   rG  s        r)   test_shaped_dtypezTestLoadTxt.test_shaped_dtype  s    011X~U|c5\f-/ 0 0Jq###HvsC)))YYY)?@A  1a     r*   c           	         t          d          }t          j        ddt          fdt          fdt          dfg          }t          j        ||          }t          j        dd	d
g dg dgg dg dggfg|          }t          ||           d S )Nz*aaaa  1.0  8.0  1 2 3 4 5 6 7 8 9 10 11 12rK  r   r   rL  )rj   rj   r:   rl   rM  r6  rN  r   r)  )r  r  r  )
         rO  rG  s        r)   test_3d_shaped_dtypez TestLoadTxt.test_3d_shaped_dtype  s    ?@@X~U|c5\i02 3 3Jq###HvsC"III.LLL0IJL M   	1a     r*   c                     ddg}t           t          j        fD ]@}t          j        ddg|          }t          j        ||          }t          ||           Ad S )Nstr1str2rl   )strrS   bytes_rn   rH  r   )r'   r   r   rg   r   s        r)   test_str_dtypezTestLoadTxt.test_str_dtype  sl    V	" 	% 	%B&&)444A
1B'''Aq!$$$$	% 	%r*   c                    t          j        t          d          5  t                      }t	          j        |          }t          |j        d           t	          j        |t          j                  }t          |j        d           t          |j
        t          j        k               d d d            d S # 1 swxY w Y   d S )Ninput contained no datar   r   rl   )r   warnsr   r!   rS   rH  r   re   r4  r   rm   )r'   r   r   s      r)   test_empty_filezTestLoadTxt.test_empty_file  s    \+-FGGG 	) 	)A
1A$'''
1BH---A$'''AGrx'(((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   BB88B<?B<c                 T   t                      }|                    ddg           |                    d           t          j        |ddd i          }t          |ddg           |                    d           t          j        |dd	d
 i          }t          |ddg           d S )Nz1 21
z3 42
r   r  c                 "    t          | d          S N   r  r  s    r)   r  z3TestLoadTxt.test_unused_converter.<locals>.<lambda>      3q":: r*   r  r     *   rc   c                 "    t          | d          S rc  r  r  s    r)   r  z3TestLoadTxt.test_unused_converter.<locals>.<lambda>  re  r*   !   B   )r!   r2   rN   rS   rH  r   )r'   r   r   s      r)   test_unused_converterz!TestLoadTxt.test_unused_converter  s    HH	h)***	q			z!T&')=)=%>@ @ @4"b***	q			z!T&')=)=%>@ @ @4"b*****r*   c           	         d}dt           fdt          fg}d }d|i}t          j        t	          |          d||          }t          j        dt          ddd          fd	t          d
dd          fg|          }t          ||           d S )N0 1; 2001-01-01
                   2; 2002-01-31 idxcodec                 F    t          |                                 d          S Nz%Y-%m-%dr?   stripr  s    r)   r  z4TestLoadTxt.test_dtype_with_object.<locals>.<lambda>      !''))Z88 r*   rc   ;r;  rm   r    rj        rl   )rp   ru   rS   rH  r!   rn   r   r   r'   r   ndtypefuncr  testcontrols          r)   test_dtype_with_objectz"TestLoadTxt.test_dtype_with_object  s    %#, 0188Y
z&,,#V%/1 1 1($1%%&HT1b,A,A(BC   	T7#####r*   c                     d}t                      }|                    d|z             |                    d           t          j        |t          j                  }t          ||           d S )N)l   +&|    l   -(|    %s %sr   rl   )r!   r,   rN   rS   rH  r7  r   r'   tgtr   r  s       r)   test_uint64_typezTestLoadTxt.test_uint64_type  sa    8HH	#	q			j"),,,S#r*   c                     d}t                      }|                    d|z             |                    d           t          j        |t          j                  }t          ||           d S )N)l l    r  r   rl   )r!   r,   rN   rS   rH  r4  r   r  s       r)   test_int64_typezTestLoadTxt.test_int64_type  sa    9HH	#	q			j"(+++S#r*   c                 .   t          j        ddd                              t           j                  }t          j        || f                              t
                    }d                    t          t
          j        |                    }t                      }|
                    |           t
          t           j        fD ]N}|                    d           t          j        ||t
          j        d          }t          ||d|z  	           Od S )
NirR  r  r  r   r9   r  rh  )err_msg)rS   logspaceastypefloat32hstackro   r   maphexr!   r,   rN   rH  fromhexr   )r'   r  inpr   r   r  s         r)   test_from_float_hexzTestLoadTxt.test_from_float_hex  s     k#r1%%,,RZ88isd$$++E22iiEIs++,,HH	"*% 	6 	6BFF1III*J J JCc4"955555		6 	6r*   c                     t          d          }t          j        t          d          5  t	          j        |           ddd           dS # 1 swxY w Y   dS )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.
        za b cz2.*convert string 'a' to float64 at row 0, column 1r   Nr!   r   r   r!  rS   rH  r"  s     r)   6test_default_float_converter_no_default_hex_conversionzBTestLoadTxt.test_default_float_converter_no_default_hex_conversion
  s     7OO]:JL L L 	 	JqMMM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	   AAAc                     t          d          }t          j        t          d          5  t	          j        |           ddd           dS # 1 swxY w Y   dS )z
        Ensure that the exception message raised during failed floating point
        conversion is correct. Regression test related to gh-19598.
        zqrs tuvz)could not convert string 'qrs' to float64r   Nr  r"  s     r)   &test_default_float_converter_exceptionz2TestLoadTxt.test_default_float_converter_exception  s     9]:AC C C 	 	JqMMM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	r  c                    t          dd          t          dd          f}t                      }|                    d|z             |                    d           t	          j        |t                     }t          ||           d S )Nrc   r  r   rl   )r   r!   r,   rN   rS   rH  r   r  s       r)   test_from_complexzTestLoadTxt.test_from_complex"  st    q!}}gann-HH	#	q			j'***S#r*   c                 R   t          j        dt           j                  }t           j        }t           j        }|d|z  z
  |d d <   t                      }t          j        ||d           |                    d           |                                }|                    d           |	                    dd          }t          ||k               |                    |           |                    d           t          j        |t                    }t          ||           d S )	Nrj   rj   rl   rK  z%.16er  r   s   e+00-s   e00+-)rS   rM  rN  rO  r   r   r  rN   rD  replacer   r,   rH  r   r   )r'   rg   rS  rT  r   txttxt_badr  s           r)   test_complex_misformattedz%TestLoadTxt.test_complex_misformatted*  s     HV2=111UTD2I~!!!II

1aW%%%%	q			ffhh	q			++h113		q			j'***S!r*   c                     t                      5 }t          |d          5 }|                    d           d d d            n# 1 swxY w Y   t          j        |          }d d d            n# 1 swxY w Y   t          |ddgddgg           d S )Nrb  z
1 213 42rc   rg  r:   rh  )r   r   r,   rS   rH  r   )r'   rL   r   r   s       r)   test_universal_newlinez"TestLoadTxt.test_universal_newline>  s   ZZ 	$4dC (A'''( ( ( ( ( ( ( ( ( ( ( ( ( ( (:d##D	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	41b'Ar7!344444s3   A-AA-A	A-	A	
A--A14A1c                    t                      }|                    d           |                    d           ddd}t          j        ||d          }t          j        g d          }t          |d	         |           d S )
Nz 1 	2 	3	start 
4	5	6	  
7	8	9.5	r   )r   r   r/  comment)<i4r  <f4|S8r  	r  )s   start s     r*   r  )r!   r,   rN   rS   rH  rn   r   rG  s        r)   test_empty_field_after_tabz&TestLoadTxt.test_empty_field_after_tabE  s    HH	=>>>	q			157 7Jqd333H,,,--1Y<+++++r*   c                    t          d          }ddd}t          j        ||d          \  }}}t          |j        j        dk               t          |j        j        dk               t          |j        j        d	k               t          |t          j        d
dg                     t          |t          j        ddg                     t          |t          j        ddg                     d S )NM 21 72
F 35 58rg   r   r   )|S1r  r  r  Trm   unpackr  r  r     M   Frg  #         R@      M@)r!   rS   rH  r   rm   rY  r   rn   r'   r  r   rg   r   r   s         r)   test_unpack_structuredz"TestLoadTxt.test_unpack_structuredO  s    '((&3HII*S48881au$%%%u$%%%u$%%%1bhd|445551bhBx001111bhc{3344444r*   c                    t                      }|                    d           |                    d           t          t          t
          j        |d           |                    d           t          t          t
          j        |d           |                    d           t          j        |t          dd          }t          j        g d	g d
g          }t          ||           t                      }|                    d           |                    d           t          j        |t          dd          }t          |j        dk               |                    d           t          j        |t          dd          }t          |j        dk               |                    d           t          j        |t          dd          }t          |j        dk               t                      }|                    d           |                    d           t          j        |t          dd          }t          |j        dk               |                    d           t          j        |t          dd          }t          |j        dk               |                    d           t          j        |t          dd          }t          |j        dk               t          j        t          d          5  t                      }t          t          j        |d          j        dk               t          t          j        |d          j        dk               d d d            d S # 1 swxY w Y   d S )Nz1,2,3
4,5,6r   r:   ndminr0  r:  rc   )rm   r;  r  r   r)  z0,1,2rj   r  )r:   z0
1
2)r:   rc   r]  r   r   rc   r^  )r!   r,   rN   r   r!  rS   rH  rp   rn   r   r   re   r   r_  r   )r'   r   r   rg   r  r   r   s          r)   test_ndmin_keywordzTestLoadTxt.test_ndmin_keywordZ  s)   HH		q			j"*aq9999	q			j"*as;;;;	q			Jqs!<<<Hiii+,,1a   HH		q			Jqs!<<<6!"""	q			Jqs!<<<4   	q			Jqs!<<<4   HH			q			Jqs!<<<6!"""	q			Jqs!<<<4   	q			Jqs!<<<4    \+-FGGG 	: 	:ABJq***0G;<<<BJq***0D8999	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	:s   A'M??NNc                     d }t          j         |                      }t          |t          j        d                     d S )Nc               3   <   K   t          d          D ]	} d| z  V  
d S NrR  r   )r   r   s    r)   r  z0TestLoadTxt.test_generator_source.<locals>.count  s4      2YY  Qh r*   rR  )rS   rH  r   r  r'   r  r  s      r)   test_generator_sourcez!TestLoadTxt.test_generator_source  sF    	 	 	 j!!3	".....r*   c                     t                      }|                    d           |                    d           t          t          dt
          j        |           d S )Nz1 2 3
4 5 6
2 3r   3)r!   r,   rN   r   r!  rS   rH  r"  s     r)   test_bad_linezTestLoadTxt.test_bad_line  sK    HH	#$$$	q			 	JRZ;;;;;r*   c                     t                      }|                    d           |                    d           t          j        dt
          fddt
          fg          }t          j        |d|d            d S )Nz100,foo,200
300,None,400r   r   )rg   S10r   r:  )r;  rm   rC  )r!   r,   rN   rS   rm   rp   rH  )r'   r   r   s      r)   test_none_as_stringzTestLoadTxt.test_none_as_string  sj    HH	+,,,	q			XSz<#s<==

12======r*   zANSI_X3.4-1968zWrong preferred encodingc                    d}|                     d                              dd                                          }t                      5 }t	          |d          5 }|                    |           d d d            n# 1 swxY w Y   t	          |d          5 }t          j        |dt          j                  }d d d            n# 1 swxY w Y   t          ||           t	          |d          5 }t          j        |dd          }d d d            n# 1 swxY w Y   g d	}t          |t          j
        |d
                     d d d            d S # 1 swxY w Y   d S )Ns/   5,6,7,Õscarscar
15,2,3,hello
20,2,3,Õscar
rf  r  r"   r   r   rt  S)s   5,6,7,Õscarscars   15,2,3,hellos   20,2,3,Õscarrl   )r=   r  
splitlinesr   r   r,   rS   rH  rk  r   rn   )r'   butf8sutf8r3  r   r   s         r)   test_binary_loadzTestLoadTxt.test_binary_load  sN   +W%%--dB77BBDDZZ 
	:4dD!! Q              dD!! CQJq7"'BBBC C C C C C C C C C C C C C Cq%(((dD!! ?QJq7#>>>? ? ? ? ? ? ? ? ? ? ? ? ? ? ?TTTAq"(1C"8"8"8999
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	: 
	:s~   EA?3E?B	EB	E"C<EC	EC	#E3DED	ED	+EEEc                    t                      }|                    d           |                    d           t          j        |t
          dd          }t          j        g dt
                    }t          ||           d S )N1,2,3,5
4,5,7,8
2,1,4,5r   r:  rc   rm   r;  max_rowsr  r  r  s       r)   test_max_rowszTestLoadTxt.test_max_rows  sw    HH	+,,,	q			Jqs !# # #H\\\3''1a     r*   c                    t                      }|                    d           |                    d           t          j        |t
          ddd          }t          j        g dt
                    }t          ||           t                      }|                    d           |                    d           t          j        |t
          ddd          }t          j        g dg d	gt
                    }t          ||           d S )
Nz comments
1,2,3,5
4,5,7,8
2,1,4,5r   r:  rc   rm   r;  r  r  r  comment
1,2,3,5
4,5,7,8
2,1,4,5rj   rk   r  r  r  r  r  s       r)   test_max_rows_with_skiprowsz'TestLoadTxt.test_max_rows_with_skiprows  s    HH	5666	q			Jqs !A/ / /H\\\3''1a   HH	4555	q			Jqs !A/ / /HlllLLL13771a     r*   c                    t                      }|                    d           |                    d           t          j        |t
          dd          }t          j        g dg dgt
                    }t          ||           t          j        |t
          d          }t          j        g d	t
                    }t          ||           d S )
Nr  r   r:  rj   r  r  r  r  rj   rc   rk   r  r  r  s       r)   $test_max_rows_with_read_continuationz0TestLoadTxt.test_max_rows_with_read_continuation  s    HH	+,,,	q			Jqs !# # #HlllLLL13771a   Jqs333HYYY$$1a     r*   c                    t                      }|                    d           |                    d           t          j        |t
          ddd          }t          j        g dg dg d	gt
                    }t          ||           d S )
Nr  r   r:  rc   r	  r  r  r  r  r  r  s       r)   test_max_rows_largerz TestLoadTxt.test_max_rows_larger  s    HH	4555	q			Jqs !A/ / /HlllLLL,,,?EE1a     r*   skipr   rc   )zignored
1,2
r  3,4
)ignored1,2r"   3,4zignored
1,2

3,4r   )z-1,0
r  r  r  )z-1,0r  r"   r  z-1,0
1,2

3,4c           
         t          j        t          dd|z
             5  t          j        |t
          |dd|z
            }t          |ddgdd	gdd
gg|d                     d d d            n# 1 swxY w Y   t          |t                    r|	                    d           t          j                    5  t          j        dt                     t          j        t                    5  t          j        |t
          |dd|z
             d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )NzInput line 3.*max_rows=r:   r   r:  )rm   r  r;  r  r  r   rc   rj   rk   error)r   r_  r   rS   rH  rp   r   rQ   r   rN   r   r   simplefilterr   )r'   r  r   r  s       r)   test_max_rows_empty_linesz%TestLoadTxt.test_max_rows_empty_lines  s    \+<AdF<<> > > 	F 	F*Tts&'f. . .Csb!Wq!fq!f$=dee$DEEE		F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F dH%% 	IIaLLL$&& 	, 	,!';777{++ , ,
4sTS$%dF, , , ,, , , , , , , , , , , , , , ,	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,sH   AA11A58A594D3-"DD3D	D3"D	#D33D7:D7N);r4   r5   r6   staticmethodrS   rH  r  r  r  r   rs   ry   r   r	  r  r  r  r   r   r   r   rO   implementationversionr  r  r>  rA  rH  rP  rU  r[  r`  rl  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  localegetpreferredencodingr  r  r  r  r  r  r   r  r/   r*   r)   r  r    s       |BJ''H, , ,
: : :! ! !$! ! !! ! !! ! !! ! !! ! !! ! !! ! ! [KC$6$>)$K=  ? ?% %? ?% ! ! !"C C CJ	N 	N 	N! ! !! ! !! ! !% % %) ) )+ + +$ $ $    6 6 6 [KC$6$>)$K=  ? ? ? ? [KC$6$>)$K=  ? ? ? ?    (5 5 5, , ,	5 	5 	5(: (: (:T/ / /< < <> > > [33559II9  ; ;: :; ;: ! ! !! ! !"! ! !! ! ! [ff-5556---..//02223***++,,-0/ 0 0, ,0 0, , ,r*   r  c                   x    e Zd Zd Zd Zd Zej                            de	e
g          d             Zd Zd ZdS )	Testfromregexc                    t                      }|                    d           |                    d           dt          j        fdg}t          j        |d|          }t          j        g d|          }t          ||           d S )Nz1.312 foo
1.534 bar
4.444 quxr   numvalS3z([0-9.]+)\s+(...)))ˡE?r*  g%C?r+  g-@quxrl   r!   r,   rN   rS   float64	fromregexrn   r   rG  s        r)   r   zTestfromregex.test_record  s    HH	1222	q			bj!=1L0"55HEEE  1a     r*   c                    t                      }|                    d           |                    d           dt          j        fdg}t          j        |d|          }t          j        g d|          }t          ||           d S )N1312 foo
1534 bar
4444 quxr   r  r  z(\d+)\s+(...)))   r*  )  r+  )\  r  rl   )r!   r,   rN   rS   r  r  rn   r   rG  s        r)   test_record_2zTestfromregex.test_record_2  s    HH	.///	q			bh/L,b11HBBB  1a     r*   c                    t                      }|                    d           |                    d           dt          j        fg}t          j        |d|          }t          j        g d|          }t          ||           d S )Nr  r   r  z(\d+)\s+...))r  )r  )r  rl   r  rG  s        r)   test_record_3zTestfromregex.test_record_3  s    HH	.///	q			bj!"LNB//H000;;;1a     r*   	path_typec                 T   d}t                      5 } ||          }t          |d          5 }|                    d|z   dz              d d d            n# 1 swxY w Y   dt          j        fdg}t          j        |d|d	          }t          j        d
d|                    d          z   fddg|          }t          ||           t          j
        dt          j                  }	t          j        ||	|d	          }t          ||           d d d            d S # 1 swxY w Y   d S )Nre  r   s	   1.312 foos    
1.534 bar
4.444 quxr  )r  U4z(?u)([0-9.]+)\s+(\w+)rf  r  r  r*  r  r  rl   z([0-9.]+)\s+(\w+))r   r   r,   rS   r  r  rn   r=   r   rS  compileUNICODE)
r'   r  rl  str_pathr3  r   r   r   rg   regexps
             r)   test_record_unicodez!Testfromregex.test_record_unicode  s   ZZ 	%89X&&DdD!! JQt+.HHIIIJ J J J J J J J J J J J J J J "*%}5BT#;R'RRRA5%$++g*>*>">?)+246 6 6Aq!$$$Z 4bjAAFT62@@@Aq!$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%s5   DA	DA	DA	B3DD!$D!c                     t          j        d          }t          d          }dt          j        fg}t          j        g d|          }t          j        |||          }t          ||           d S )N   (\d)   123r  r   rl   )rS  r  r   rS   r  rn   r  r   )r'   r	  r   r   rg   r   s         r)   test_compiled_bytesz!Testfromregex.test_compiled_bytes+  sl    H%%FOObj!"HYYYb)))LFB''1a     r*   c                     t          j        d          }t          d          }t          j        t
          d          5  t          j        ||t          j                   d d d            d S # 1 swxY w Y   d S )Nr  r  zstructured datatyper   rl   )	rS  r  r   r   r   r8  rS   r  r  )r'   r	  r   s      r)   test_bad_dtype_not_structuredz+Testfromregex.test_bad_dtype_not_structured3  s    H%%FOO]9,ABBB 	6 	6LF"*5555	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6 	6s   "A..A25A2N)r4   r5   r6   r   r   r  r   r   r  rY  r   r
  r  r  r/   r*   r)   r  r    s        	! 	! 	!	! 	! 	!! ! ! [[3+66% % 76%"! ! !6 6 6 6 6r*   r  c                   l   e Zd Z eej                  Zd Zd Zd Z	d Z
d Zd Zd Zd Zd	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d Z"d Z#d Z$d Z%d  Z&d! Z'd" Z(d# Z)d$ Z*d% Z+d& Z,d' Z-d( Z.d) Z/d* Z0d+ Z1d, Z2d- Z3d. Z4d/ Z5d0 Z6d1 Z7d2 Z8d3 Z9d4 Z:d5 Z;d6 Z<d7 Z=d8 Z>d9 Z?d: Z@d; ZAd< ZBd= ZCd> ZDd? ZEd@ ZFdA ZGdB ZHdC ZIdD ZJdE ZKdF ZLdG ZMdH ZNdI ZOdJ ZPdK ZQdL ZRdM ZSdN ZTdO ZUdP ZVdQ ZWdR ZXeYjZ        [                    dSg dT          dSe\fdU            Z]dVS )WTestFromTxtc                 |   t          d          }t          j        |dt          j        fdt          j        fg          }t          j        ddgddg          }t          ||           t          d	          }d
dd}t          j        ddg|          }t          j        ||          }t          ||           d S )Nr  r   r   rl   r   r   r   r   zM 64.0 75.0
F 25.0 60.0r  r  r  r  r  )r!   rS   
genfromtxtr  rn   r   )r'   r   r~  r  
descriptors        r)   r   zTestFromTxt.test_record@  s    j!!}T3/C?)KLLL(FF+K3MNNNT7###011:!35 5
(-/@A!+- - -}T444T7#####r*   c                 ~   t          d          }t          j        ddgddggt                    }t          j        |t                    }t          ||           |                    d           t          j        ddgddggt                    }t          j        |t                    }t          ||           d S )Nr  rc   rj   r:   rk   rl   r   )	r!   rS   rn   rp   r  r   rN   ro   rH  )r'   r   r  r~  s       r)   rs   zTestFromTxt.test_arrayO  s    j!!(QFQF+3777}T---4)))		!(QFQF+5999z$e,,,4)))))r*   c                 (   t          j        g dt                    }t          d          }t          j        |t                    }t          ||           t          d          }t          j        |t          d          }t          ||           d S )Nrx   r  rl   r  r:  r  )rS   rn   rp   r!   r  r   r'   r  r   r~  s       r)   ry   zTestFromTxt.test_1D[  s    (<<<--n%%}T---4)))k""}T<<<4)))))r*   c                 .   t          j        g dt                    }t          d          }t          j        |t          dd          }t          ||           t          d          }t          j        |t          dd          }t          ||           d S )Nr  r  r:  r  r  z1,2,3,5# comment
)rS   rn   rp   r!   r  r   r  s       r)   test_commentszTestFromTxt.test_commentsg  s    (<<<--,--}TcJJJT7###*++}TcJJJT7#####r*   c                 6   t          j        g dt                    }t          t          d          }t	          d          }t          j        |fddi|}t          ||           t	          d          }t          j        |fddi|}t          ||           d S )	Nr  r:  r  r  skip_headerrc   r  r  )rS   rn   rp   dictr!   r  r   rH  )r'   r  r^   r   r~  s        r)   r  zTestFromTxt.test_skiprowss  s    (<<<--C3///*++}T;;q;F;;T7###,--z$555f55T7#####r*   c                    d t          dd          D             }|                    d           |                    d t          d          D                        d|d<   t          d	d
dd          }t	          j        t          d                    |                    fi |}t	          j        d t          d          D             d dD                       }t          ||           d S )Nc                     g | ]}d |z  S )z# %ir/   r   s     r)   r1   z0TestFromTxt.test_skip_footer.<locals>.<listcomp>  s    000q
000r*   rc   r	  zA, B, Cc                     g | ]
}d |||fz  S )z%i,%3.1f,%03sr/   r   s     r)   r1   z0TestFromTxt.test_skip_footer.<locals>.<listcomp>  s#    DDDQ_1ay0DDDr*   3   z99,99r  r:  Tr  rR  )r;  r  r  skip_footerr  c                 *    g | ]}d |z  d |z  d |z  fS )r  r/   r   s     r)   r1   z0TestFromTxt.test_skip_footer.<locals>.<listcomp>  s+    KKKA$(D1HdQh7KKKr*   )   c                      g | ]}|t           fS r/   r   r0   _s     r)   r1   z0TestFromTxt.test_skip_footer.<locals>.<listcomp>      999a5z999r*   ABCrl   )
r   r   r]  r  rS   r  r!   r   rn   r   )r'   r   r^   r~  ctrls        r)   test_skip_footerzTestFromTxt.test_skip_footer  s    00E!QKK000IDD%))DDDEEER4QBOOO}VDIIdOO44????xKKrKKK995999; ; ;T4     r*   c                 v   t                      5 }|                    t                     d}t          t          t
          j        t          |          d           t          j        t          |          dd          }t          |t          j	        ddgddgddgd	d	gg                     t          j        t          |          d
          }t          |t          j	        ddgddgddgd	d	gg                     d}t          j        t          |          dd          }t          |t          j	        ddgddgd	d	gddgg                     t          j        t          |          d
d          }t          |t          j	        ddgddgd	d	gg                     d d d            d S # 1 swxY w Y   d S )Nz1 1
2 2
3 3
4 4
5  
6  
7  
rc   )r"  F)r"  invalid_raiser6  r7  r8  r9  r:   z1 1
2  
3 3
4 4
5  
6 6
7 7
rF  )
r   r   r   r   r!  rS   r  r!   r   rn   )r'   r   basestrrg   s       r)   test_skip_footer_with_invalidz)TestFromTxt.test_skip_footer_with_invalid  s      	FCJJ()));G*bm //q: : : : wQeE E EABHr2hR2r(RH%MNNOOOfWoo1===ABHr2hR2r(RH%MNNOOO;GwQeE E EABHr2hR2r(RH%MNNOOOwQeE E EABHr2hR2r(%CDDEEE+	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	Fs   FF..F25F2c                 d   t          d          }t          j        d          5 }t          j        ddt          j                   t	          j        |d d          }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t	          j	        dd	g          t	          j	        d
dg          t	          j	        ddg          d}t          |d         |d                    t          |d         |d                    t          |d         |d                    d S )Nz)gender age weight
M 64.0 75.0
F 25.0 60.0Tr   r   r"   rm   r  r   r  r  r  r  r  r  r  r  r  r  )r!   r   r   r   rS   VisibleDeprecationWarningr  r   categoryrn   r   r'   r   rb  r~  r  s        r)   test_headerzTestFromTxt.test_header  sc   CDD$D111 	CQ#Hb"2NOOO=T>>>DAaDMR%AABBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C  XtTl33(D$<00XtTl335 5 	T(^WX%6777T%['%.111T(^WX%677777s   ABBBc                    t          d          }t          j        d          5 }t          j        ddt          j                   t	          j        |d           }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t	          j	        dd	g          t	          j	        d
dg          t	          j	        ddg          t	          j	        ddg          t	          j	        ddg          g}t          |j        j        g d           t          |          D ]\  }}t          |d|z           |           d S )Nz*A 64 75.0 3+4j True
BCD 25 60.0 5+6j FalseTr   r   r"   rl   r      As   BCD@      r  r  y      @      @y      @      @F)f0f1f2f3r0  zf%i)r!   r   r   r   rS   r2  r  r   r3  rn   r   rm   r  r   )r'   r   rb  r~  r  r   r*  s          r)   test_auto_dtypezTestFromTxt.test_auto_dtype  s   CDD$D111 	CQ#Hb"2NOOO=T222DAaDMR%AABBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 8T6N++8RH%%8T4L))8VV,--8T5M**	.
 	TZ%'E'E'EFFF"7++ 	0 	0IQeai$////	0 	0s   ABBBc                     t          d          }t          j        |d           }t          j        g dg dg          }t	          ||           d S )Nz1 2 3 4
5 6 7 8
rl   rx   )r  r	  r  r  r!   rS   r  rn   r   r'   r   r~  r  s       r)   test_auto_dtype_uniformz#TestFromTxt.test_auto_dtype_uniform  sV    *++}T...(LLL,,,788T7#####r*   c                     t          d          }t          j        dt          fddt          fdt          fgfg          }t          j        ||d          }t          j        dd	g|
          }t          ||           d S )NrC  r   r   r   r(   r:  r  rD  rE  rl   )r!   rS   rm   rp   ro   r  rn   r   r'   r   
fancydtyper~  r  s        r)   rH  zTestFromTxt.test_fancy_dtype  s    *++XSzC3*sEl1K+LMNN
}TsCCC(M=9LLLT7#####r*   c                     ddd}t          d          }d}t          j        |||          }||d<   t          j        dd	g|
          }t	          ||           d S )N)grg   rb  r  r  s   M 64.0 75.0
F 25.0 60.0r  r1  r  r  r  rl   r@  )r'   r  r   r  r~  r  s         r)   test_names_overwritez TestFromTxt.test_names_overwrite  s    .!35 5
122+}T5AAA#
7(--/6@B B BT7#####r*   c                     t          j        t          d          5  t          j        d           d d d            d S # 1 swxY w Y   d S )Nzfname must be a string,r   {   )r   r   r8  rS   r  r  s    r)   test_bad_fnamezTestFromTxt.test_bad_fname  s    ]9,EFFF 	 	M#	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   >AAc                    t          d          }t          j        d          5 }t          j        ddt          j                   t	          j        |dd           }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t	          j	        g dd	d
t          fdt          fg          }t          ||           t          d          }t          j        d          5 }t          j        ddt          j                   t	          j        |dd           }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t          ||           d S )NzN
#gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        Tr   r   r"   )r  rm   r   ))r  rg  gfffffR@)r  r  g
ףp=*M@)r  rj  g=
ףp5@)r  r  r  r  rl   sO   
# gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        r!   r   r   r   rS   r2  r  r   r3  rn   rp   ro   r   )r'   r   rb  r~  r*  s        r)   test_commented_headerz!TestFromTxt.test_commented_header  s       $D111 	CQ#Hb"2NOOO=T>>>DAaDMR%AABBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C xMMM05#,5@QRT T TT4       $D111 	CQ#Hb"2NOOO=T>>>DAaDMR%AABBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	T4     s%   ABBB7AE!!E%(E%c                     t          d          }t          j        |t          t          fd d          }t          j        ddgdt          fdt          fg          }t          ||           d S )	Nzcol1 col2
 1 2
 3 4T)rm   rC  r  r   r   col1col2rl   r!   rS   r  rp   rn   r   rA  s       r)   test_names_and_comments_nonez(TestFromTxt.test_names_and_comments_none  sh    -..}T#sd$OOO(FF+VSMFC=3QRRRT7#####r*   c                    t                      5 }t          j                            |d          }t	          |d          5 }|                    d                                           d d d            n# 1 swxY w Y   t                      5  t          j	        t                    5  t          j        |d           d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nrg  r      ϖasciir  )r   rZ   r3  r   r   r,   r  r   r   r   UnicodeDecodeErrorrS   r  )r'   rm  fpathr   s       r)   test_file_is_closed_on_errorz(TestFromTxt.test_file_is_closed_on_error  s   YY 		;&GLL44EeT"" 8a-44667778 8 8 8 8 8 8 8 8 8 8 8 8 8 8
 $%% ; ;]#566 ; ;M%'::::; ; ; ; ; ; ; ; ; ; ; ; ; ; ;; ; ; ; ; ; ; ; ; ; ; ; ; ; ;		; 		; 		; 		; 		; 		; 		; 		; 		; 		; 		; 		; 		; 		; 		; 		; 		; 		;s}   1C9 (A4(C94A8	8C9;A8	<C9C!'C
>C!
CC!CC!C9!C%	%C9(C%	)C99C= C=c                    t          d          }t          j        d          5 }t          j        ddt          j                   t	          j        |ddd           }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t	          j	        d	d
dt          fdt          fg          }t          ||           d S )NA B C D
 aaaa 121 45 9.1Tr   r   r"   ACD)r  r  rm   r   )rM  -   333333"@r]  |S4r^  r_  rl   rM  r4  s        r)   test_autonames_and_usecolsz&TestFromTxt.test_autonames_and_usecols  s   122$D111 	CQ#Hb"2NOOO=&*$8 8 8DAaDMR%AABBB		C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C
 (,".c
S%L!IK K KT7#####s   ABBBc                     t          d          }t          j        |t          ddd id          }t          j        ddgd	d
ggt                    }t          ||           d S )Nr  r:  r:   c                 $    t          | pd          S r  r  r  s    r)   r  z:TestFromTxt.test_converters_with_usecols.<locals>.<lambda>!      Se__ r*   r  r  rj   r  r  r  rR  rA  s       r)   r	  z(TestFromTxt.test_converters_with_usecols  sq    .//}T()+D+D'E$+- - - (QI1v.44T7#####r*   c           	         t          d          }t          j        d          5 }t          j        ddt          j                   t	          j        |ddd dd i	          }t          |d
         j        t          j        u            d d d            n# 1 swxY w Y   t	          j	        dddt          fdt          fg          }t          ||           d S )Nr[  Tr   r   r"   r\  r^  c                 &    dt          |           z  S )Nrj   r  r  s    r)   r  zDTestFromTxt.test_converters_with_usecols_and_names.<locals>.<lambda>-  s    1s1vv: r*   )r  r  rm   r  r   )rM  Z   ra  rb  r_  rl   rM  r4  s        r)   &test_converters_with_usecols_and_namesz2TestFromTxt.test_converters_with_usecols_and_names&  s0   122$D111 	CQ#Hb"2NOOO=d&*,/1E1E+FH H HD AaDMR%AABBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C (,".c
S%L!IK K KT7#####s   A#BBBc                     dd i}t          d          }t          j        |dd ddg|          }t          j        t	          ddd	          d
fdt          j        fdt          fg          }t          ||           d S )Ndatec                 "    t          | d          S Nz%Y-%m-%d %H:%M:%SZ)r?   r  s    r)   r  z9TestFromTxt.test_converters_cornercases.<locals>.<lambda>6  s    hq*>?? r*   2009-02-03 12:00:00Z, 72214.0r:  r&  r;  rm   r  r    rj   r:       `@rl   )r!   rS   r  rn   r   object_ro   r   r'   	converterr   r~  r  s        r)   test_converters_cornercasesz'TestFromTxt.test_converters_cornercases3  s     ??A	566}TS#)6"2yJ J J(HT1a00&9#)2:"6!HJ J JT7#####r*   c                     dd i}t          d          }t          j        |dd ddg|          }t          j        t	          ddd	          d
fddt
          fg          }t          ||           d S )Nrm  c                 F    t          j        t          | d                    S ro  )rS   
datetime64r?   r  s    r)   r  z:TestFromTxt.test_converters_cornercases2.<locals>.<lambda>A  s    bmHQ8L,M,MNN r*   rp  r:  r&  rq  rr  rj   r:   rs  )rm  zdatetime64[us]rl   )r!   rS   r  rn   r   ro   r   ru  s        r)   test_converters_cornercases2z(TestFromTxt.test_converters_cornercases2>  s     NNP	566}TS#)6"2yJ J J(HT1a00&9"<vuo!NP P PT7#####r*   c                     t          d          }t          j        |ddd i          }t          |ddg           |                    d           t          j        |ddd	 i          }t          |d
dg           d S )Nz1 21
  3 42
r  r   c                 "    t          | d          S rc  r  r  s    r)   r  z3TestFromTxt.test_unused_converter.<locals>.<lambda>M      SBZZ r*   rf  rg  rh  rc   c                 "    t          | d          S rc  r  r  s    r)   r  z3TestFromTxt.test_unused_converter.<locals>.<lambda>R  r~  r*   rj  rk  )r!   rS   r  r   rN   r'   r   r~  s      r)   rl  z!TestFromTxt.test_unused_converterI  s    &''}T4()+?+?'@B B BTB8$$$		!}T4()+?+?'@B B BTB8$$$$$r*   c                     d }d }t          d          }t          ||ddd           }t          t          t          j        |fi | d S )Nc                     t          d|                                 v r|                                 d         p+d|                                 vr|                                 pd          S )N   rr  r  ro   lowerr^  rt  r  s    r)   r  z4TestFromTxt.test_invalid_converter.<locals>.<lambda>V  sZ    udaggii&7&IAGGIIbM &R&*!''))&;&I		&PS S  S r*   c                     t          d|                                 v r|                                 d         p+d|                                 vr|                                 pd          S )N   %r   r  r  r  s    r)   r  z4TestFromTxt.test_invalid_converter.<locals>.<lambda>X  sZ    eTQWWYY%6%G17799Q< %Q%)%:%Hqwwyy%OCR R r*   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;  rm   )r!   r  r   r   rS   r  )r'   
strip_rand	strip_perr(   r^   s        r)   test_invalid_converterz"TestFromTxt.test_invalid_converterU  s|    S S
R R	 5 6 6 $44   	nbmQAA&AAAAAr*   c                     t          d          }d }t          j        |dd|i          }t          j        ddgdd	gg          }t	          ||           d S )
Nz	q1,2
q3,4c                 0    t          | dd                    S r  r   r  s    r)   r  z;TestFromTxt.test_tricky_converter_bug1666.<locals>.<lambda>e  s    ae r*   r:  r   )r;  r  r6  r7  r8  r9  r@  )r'   r(   cnvr~  r  s        r)   test_tricky_converter_bug1666z)TestFromTxt.test_tricky_converter_bug1666b  sc    <  $$}Q#1c(CCC(RHr2h/00T7#####r*   c                    d}t          j        t          |          dt          dt          i          }t          j        dgddt          fdt          fg	          }t          ||           t          j        t          |          dt          dt          i          }t          j        g d
          }t          ||           d S )Nz2009; 23; 46rv  r   rw  )2009      7@.   )r:  rc  r;  r<  rl   )g     d@r  r  )rS   r  r!   ro   r<   rn   r   )r'   dstrr~  r  s       r)   test_dtype_with_convertersz&TestFromTxt.test_dtype_with_convertersj  s    }VD]]&)Au:O O O(-."/$u!NP P PT7###}VD]]&)Au:O O O(+++--T7#####r*   c                    d}dddddg d}t           t           t           fdd	}t          j        t          |          |d
d |          }t          j                            g d|          }t          ||           g d}t          j        t          |          |d
dd |          }t          j                            g d|          }t          ||           d S )Nz!1,5,-1,1:1
2,8,-1,1:n
3,3,-2,m:n
r   rc   rj   r:   )z1:1z1:nzm:1zm:n)e1r   e2r   )e3i2r   i1c                 8    |                                           S r$   r  )r~   dmaps    r)   r  zDTestFromTxt.test_dtype_with_converters_and_usecols.<locals>.<lambda>z  s    T!((**5E r*   )r   rc   rj   r:   r:  )rm   r;  r  r  ))rc   r  r  r   )rj   r  r  rc   )r:   r:   r:   rl   )r  r  r  )r   rc   r:   )rm   r;  r  r  r  ))rc   r  r   )rj   r  rc   )r:   r:   r:   )rp   rS   
recfromcsvr!   recrn   r   )r'   r  dtypconvr~  r  r  s         @r)   &test_dtype_with_converters_and_usecolsz2TestFromTxt.test_dtype_with_converters_and_usecolsv  s    5q33@@@33+E+E+E+EFF}VD]]$##'D: : :&,,CCC4,PPT7###444}VD]]$#%,DTK K K&,,:::$,GGT7#####r*   c           	         d}dt           fdt          fg}d }d|i}t          j        t	          |          d||          }t          j        dt          ddd          fd	t          d
dd          fg|          }t          ||           ddt           fdt          fgfg}t          t          d          5  t          j        t	          |          d||          }d d d            n# 1 swxY w Y   dt           fdt          fdg fg}t          t          d          5  t          j        t	          |          d||          }d d d            d S # 1 swxY w Y   d S )Nrn  ro  rp  c                 F    t          |                                 d          S rr  rs  r  s    r)   r  z4TestFromTxt.test_dtype_with_object.<locals>.<lambda>  ru  r*   rc   rv  rw  rx  rj   ry  rz  rl   nestzNested fields.* not supported.*)
rp   ru   rS   r  r!   rn   r   r   r   NotImplementedErrorr{  s          r)   r  z"TestFromTxt.test_dtype_with_object  s;   %#, 0188Y
}VD\\S(24 4 4($1%%&HT1b,A,A(BC   	T7###UCL66*:;<= !4!BD D 	F 	F='-*F F FD	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F #, 062,? !4!BD D 	F 	F='-*F F FD	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	F 	Fs$   5&C''C+.C+&EEEc                     t          j        t          d          t                    }|d         dk    sJ t          j        t          d          t                    }|d         dk    sJ d S )N1rl   r/      1strings   string)rS   r  r!   ru   )r'   parseds     r)   #test_dtype_with_object_no_converterz/TestFromTxt.test_dtype_with_object_no_converter  sh    vc{{&999bzT!!!!vh//v>>>bzY&&&&&&r*   c           	          t          d          }t          j        |dd t          ddt          i          }t          j        dgddt          fg	          }t          ||           d S )
Nzskip,skip,2001-01-01,1.0,skipr:  r  rj   )r;  r  rm   r  r  )
2001-01-01r6  )r"   |S10r"   rl   )r!   rS   r  ro   r<   rn   r   rA  s       r)   'test_userconverters_with_explicit_dtypez3TestFromTxt.test_userconverters_with_explicit_dtype  sx    566}TSE%+E
D D D(./".U!<> > >T7#####r*   c           
         d}t                      5 }t          |d          5 }|                    d|z   dz              d d d            n# 1 swxY w Y   t          j        |dd t
          ddt          j        j        id	          }d d d            n# 1 swxY w Y   t          j        d
|	                    d          z   dfgddt
          fg          }t          ||           d S )Nre  r   s   skip,skip,2001-01-01s	   ,1.0,skipr:  r  rj   rf  )r;  r  rm   r  r  rj  r  r6  )r"   z|U11r"   rl   )r   r   r,   rS   r  ro   compatunicodern   r=   r   )r'   rl  r3  r   r~  r  s         r)   ,test_utf8_userconverters_with_explicit_dtypez8TestFromTxt.test_utf8_userconverters_with_explicit_dtype  sw   ZZ 	34dD!! GQ/$6EFFFG G G G G G G G G G G G G G G=D)/Q	@Q<R*13 3 3D	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 	3 (\DKK,@,@@"EF".U!<> > >T7#####s3   BA
B
A	BA	4BBBc                     t          d          }t          j        |          }t          j        g dg dg          }t	          ||           d S )Nz1  2  3  4   5
6  7  8  9  10)r6  r7  r8  r9        @)rF        @rN        "@g      $@r@  rA  s       r)   test_spacedelimiterzTestFromTxt.test_spacedelimiter  s]    677}T""(0001113 4 4T7#####r*   c                     d}t          j        t          |          d          }t          j        g dg dg dg          }t	          ||           d S )Nz  1  2  3
  4  5 67
890123  4r:   )r;  r   )rk   r  C   )iz  rJ  rk   rS   r  r!   rn   r   rA  s       r)   test_integer_delimiterz"TestFromTxt.test_integer_delimiter  sY    0}VD\\Q777(IIIzzz===ABBT7#####r*   c                     t          d          }t          j        |t          ddd i          }t          j        g dt                    }t          ||           d S )Nr  r:  r:   c                 $    t          | pd          S r  r  r  s    r)   r  z*TestFromTxt.test_missing.<locals>.<lambda>  rg  r*   r  r  rR  rA  s       r)   r   zTestFromTxt.test_missing  sh    l##}T()+D+D'EG G G(---s33T7#####r*   c                 V   d}t          j        t          |          dd          }t          j        dt           j        dt           j        fdt           j        dfg          }t          j        g d	t
          
          }t          |j        |           t          |j        |           d S )Nz1	2	3
	2	
1		3r  T)r;  usemaskr   rj   rc   r:   )r   r   r   rc   r   rc   r   rc   r   rl   )	rS   r  r!   rn   nanboolr   r   mask)r'   r  r~  ctrl_dctrl_ms        r)   test_missing_with_tabsz"TestFromTxt.test_missing_with_tabs  s    &}VC[[D%), , ,9rvq"&&9Arvq>JLL;;;4HHHTY'''TY'''''r*   c                    t          j        ddgddggt                    }t                      }t          j        ||           |                    d           t          j        |t          d          }t          ||d d df                    t          j        g dg d	gt                    }t                      }t          j        ||           |                    d           t          j        |t          d
          }t          ||d d dd f                    |                    d           t          j        |t          t          j        ddg                    }t          ||d d dd f                    d S )Nrc   rj   r:   rk   r   r  r  r   r   r   )rS   rn   ro   r!   r  rN   r  r   r  s       r)   r>  zTestFromTxt.test_usecols  sU    (QFQF+U33xx

4!!!		!}T===T7111a4=)))(IIIyyy1599xx

4!!!		!}T???T7111abb5>***		!}T!Q8H8HIIIT7111abb5>*****r*   c                     d}t          j        t          |          dd          }t          j        ddgd dD             	          }t	          ||           d S )
N1 2 3
4 5 6a, b, cza, c)r  r  r  rk   r	  c                      g | ]}|t           fS r/   r   r&  s     r)   r1   z3TestFromTxt.test_usecols_as_css.<locals>.<listcomp>  s    0J0J0J!U0J0J0Jr*   acrl   r  r'   r   r~  r*  s       r)   test_usecols_as_csszTestFromTxt.test_usecols_as_css  sh    }VD\\#,f> > >x(0J0JT0J0J0JKKKT4     r*   c           
          t          d          }ddg}ddg}t          j        |dt          t	          ||                              }t          |d         dd	g           t          |d         d
dg           d S )NzJOE 70.1 25.3
BOB 60.5 27.9r&  r'  r(  r)  r*  r+  r,  r-  r.  r/  )r!   rS   r  ra  r  r   )r'   r   r  r<  r~  s        r)   "test_usecols_with_structured_dtypez.TestFromTxt.test_usecols_with_structured_dtype  s    455 }&S-?-?(@(@B B BT&\FF#3444T&\D$<00000r*   c                     t          j        t          d          d          }t          |t          j        ddg                     d S )Ns   1 2 3
4 5 6r   r1  r6  r9  )rS   r  r!   r   rn   )r'   r~  s     r)   test_usecols_with_integerz%TestFromTxt.test_usecols_with_integer  sB    }VO44a@@@T28RH--.....r*   c                 >   t          j        ddgdt          fdt          fg          }d}t          d          }t          j        t          |          fd	d
i|}t          ||           t          j        t          |          fd	di|}t          ||           d S )Nr  r  rg   r   rl   r  r  )r  r  r   r  )rg   r   )rS   rn   ro   r  r  r!   r   )r'   r*  r   r^   r~  s        r)   test_usecols_with_named_columnsz+TestFromTxt.test_usecols_with_named_columns  s    x(#uU|0LMMMI&&&}VD\\EE7EfEET4   }VD\\ ; ;%/;39; ;T4     r*   c                 x   t                      5 }|                    d           t                      }t          j        |          }t          |t          j        g                      t          j        |d          }t          |t          j        g                      d d d            d S # 1 swxY w Y   d S )Nzgenfromtxt: Empty input file:)messagerc   )r  )r   r   r!   rS   r  r   rn   )r'   r   r   r~  s       r)   r`  zTestFromTxt.test_empty_file  s       	-CJJ>J???88D=&&Drx||,,, =1555Drx||,,,	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	-s   BB//B36B3c                    t          d          }t          j        dt          fddt          fdt          fgfg          }t          j        ||dd          }t          j        d	d
g|          }t          ||           d S )NrC  r   r   r   r(   r:  T)rm   r;  r  rD  rE  rl   )	r!   rS   rm   rp   ro   r  marn   r   rD  s        r)   test_fancy_dtype_altz TestFromTxt.test_fancy_dtype_alt  s    *++XSzC3*sEl1K+LMNN
}TsDQQQ(M=9LLLT7#####r*   c                    t          d          }t          j        ddt          fdt          fdt          dfg          }t          j        ||          }t          j        dd	d
g dg dgfg|          }t          ||           d S rJ  )r!   rS   rm   ro   rp   r  rn   r   rG  s        r)   rP  zTestFromTxt.test_shaped_dtype'  s    011X~U|c5\f-/ 0 0M!2&&&HvsC)))YYY)?@A  1a     r*   c                    t          d          }t          ddd          }t          j        |fd dd|}t	          j        ddgd	d
gdt          fdt          fg          }t          ||           t          |j        |j                   |	                    d           t          j        |fddi|}t	          j        ddgd	d
gdt          fdt          fg          }t          ||           t          |j        |j                   d S )NA,B
0,1
2,N/Ar:  N/ATr;  missing_valuesr  rm   r  r  rj   r  FFFTr]  Br  rm   r   r  )r!   r  rS   r  r  rn   rp   r   r  rN   ro   r'   r   r^   r~  r  s        r)   test_withmissingzTestFromTxt.test_withmissing0  s)   '((EFFF}TFtFFvFF(FG,!/ ?#&*sCj!9; ; ; 	T7###TY---		!}T::4:6::(FG,!/ ?#&,e!=? ? ? 	T7###TY-----r*   c                 H   d}t          d dd          }dt          fdt          fdt          fg}t	          j        t          |          fdd	i|}t          j        g d
g d|          }t          ||           ||d<   t	          j        t          |          fdddddd|}t          j        g d
g d|          }t          ||           t	          j        t          |          fdddddd|}t          j        g d
g d|          }t          ||           d S )Nz4A, B, C
0, 0., 0j
1, N/A, 1j
-9, 2.2, N/A
3, -99, 3jr:  T)rm   r;  r  r]  r  r^  r  r  ))r   r  y                )rc   r  rK  )r  g@            8)r:   y              @)r  r  )r   r   rc   r  r  rm   r  r  r  r   rc   rj   )r  r  )r  r  r  r  )r   r  r^  )
r  rp   ro   r   rS   r  r!   r  rn   r   )r'   r   
basekwargsmdtyper~  r  s         r)   test_user_missing_valuesz$TestFromTxt.test_user_missing_valuesB  s   I4AAA
*sElS'N;}VD\\ * *% *(* *( < < < L L L!') ) ) 	T7###$
7}VD\\ b/1ce+D+Ddb bV`b b( < < < L L L!') ) ) 	T7###}VD\\ */1%+H+H$(* * )* * ( < < < L L L!') ) ) 	T7#####r*   c           
      <   t          j        ddgdt          fdt          fg          }d}t          dt          dd	d
dddddd          }t          j        t          |          fi |}t          j        ddgd dD                       }t          ||           t          j        t          |          fddi|}t          j        ddgd dD                       }t          ||           d}t          j        t          |          dt          dd          }t          j        g dg dg          }t          ||           t          j        t          |          dt          dd          }t          j        g dg dg          }t          ||           d S ) N)r   r:   )rk   r  rg   r   rl   zN/A, 2, 3
4, ,???r:  za,b,cr  r  z???)r   r   rj   r   r  )r;  rm   r  r  filling_values)r   rj   r:   )rk   r   r  c                      g | ]}|t           fS r/   r  r&  s     r)   r1   z8TestFromTxt.test_user_filling_values.<locals>.<listcomp>m  s    777A3x777r*   abcr  r  c                      g | ]}|t           fS r/   r  r&  s     r)   r1   z8TestFromTxt.test_user_filling_values.<locals>.<listcomp>q  s    3K3K3KQH3K3K3Kr*   r  z1,2,*,4
5,*,7,8
*)r;  rm   r  r  )rc   rj   r   rk   )r  r   r  r  r  )rc   rj   r  rk   )r  r  r  r  )rS   rn   rp   r  r  r!   r   )r'   r*  r   r^   r~  data2s         r)   test_user_filling_valuesz$TestFromTxt.test_user_filling_valuesb  s   x+S#Jc
3KLLL##).SU%C%C)*t%<%<	> > >
 }VD\\44V44xL1777779 9 9T4   }VD\\EE7EfEEx+3K3Kd3K3K3KLLLT4   $}VE]]c,/C C Cx|||455T4   }VE]]c,/D D Dx677T4     r*   c                    t          d          }t          j        |d dddd          }t          j        ddgdd	gd
t
          fdt          fg          }t          ||           t          |j        |j                   d S )NzA,B
0,1.5
2,-999.00r:  z-999.0T)rm   r;  r  r  r  )r   r0  )rj   g      r  r  r]  r  r  )	r!   rS   r  r  rn   rp   ro   r   r  rA  s       r)   test_withmissing_floatz"TestFromTxt.test_withmissing_float~  s    -..}T+34O O O(Hh/!/ ?#&*sEl!;= = = 	T7###TY-----r*   c                     t          d          }t          j        |d dd          }t          j        g dg dgg dg dg          }t          ||           d S )	Nz1 2 3
4 5 6
2,5Trm   r  r  r   r)  r  )r  )r!   rS   r  r  rn   r   rA  s       r)   test_with_masked_column_uniformz+TestFromTxt.test_with_masked_column_uniform  sv    &''}T,14A A A(IIIyyy1III8NOOOT7#####r*   c                     t          d          }t          j        |d dd          }t          j        ddgddgdt
          fd	t
          fd
t          fg          }t          ||           d S )NzTrue 2 3
False 5 6
r  Tr  r   )r   r  r	  r  r:  r;  r<  r  )r!   rS   r  r  rn   r  rp   r   rA  s       r)   test_with_masked_column_variousz+TestFromTxt.test_with_masked_column_various  s    -..}T,14A A A(Iy1!*I 6#',ttSk!JL L L 	T7#####r*   c                    dgdz  }t          d          D ]
}d|d|z  <   |                    dd           t          d                    |                    t	          d	d d
          fd}t          t          |          }t          t          |          d           t          |t          j
        dd dD                                                      d           t          t          t          j        d	d
           d S )N1, 1, 1, 1, 1r  r  2, 2, 2, 2 2rR  r   a, b, c, d, er  r:  Tr;  rm   r  c                  ,    t          j        fddi S )Nr-  FrS   r  r^   mdatas   r)   r   z)TestFromTxt.test_invalid_raise.<locals>.f  s     =FFeFvFFFr*   r`  c                      g | ]}|t           fS r/   r  r&  s     r)   r1   z2TestFromTxt.test_invalid_raise.<locals>.<listcomp>  s    .I.I.IA3x.I.I.Ir*   abcderl   r;  r  )r   insertr!   r   r  r   r   r   lenrS   r   rN   r   r!  r  )r'   r   r   r   mtestr^   r  s        @@r)   test_invalid_raisezTestFromTxt.test_invalid_raise  s)    2%q 	* 	*A)DaLLA'''tyy''4t<<<	G 	G 	G 	G 	G 	G.22SZZ$$$UBGB.I.I.I.I.IJJJKKK

1j"- #4	1 	1 	1 	1 	1 	1r*   c                    dgdz  }t          d          D ]
}d|d|z  <   |                    dd           t          d                    |                    t	          d	d d
d          fd}t          t          |          }t          t          |          d           t          |t          j
        dd dD                                                      d           t          j        fddi}t          t          |          d           t          j
        dd dD                       }d|d t          d          D             <   t          ||           d S )Nr	  r  r  r
  rR  r   r  r  r:  TF)r;  rm   r  r-  c                  ,    t          j        fddi S )Nr  )r   rk   r  r  s   r)   r   z6TestFromTxt.test_invalid_raise_with_usecols.<locals>.f  s     =AAA&AAAr*   r`  c                      g | ]}|t           fS r/   r  r&  s     r)   r1   z?TestFromTxt.test_invalid_raise_with_usecols.<locals>.<listcomp>  s    .F.F.FA3x.F.F.Fr*   aerl   r  r  c                      g | ]}|t           fS r/   r  r&  s     r)   r1   z?TestFromTxt.test_invalid_raise_with_usecols.<locals>.<listcomp>  s    $<$<$<!aX$<$<$<r*   abr  c                     g | ]}d |z  S )rR  r/   r&  s     r)   r1   z?TestFromTxt.test_invalid_raise_with_usecols.<locals>.<listcomp>  s    ***Aa***r*   )r   r  r!   r   r  r   r   r   r  rS   r   rN   r  )r'   r   r   r   r  r  r^   r  s         @@r)   test_invalid_raise_with_usecolsz+TestFromTxt.test_invalid_raise_with_usecols  s    2%q 	* 	*A)DaLLA'''tyy''4t$)+ + +	B 	B 	B 	B 	B 	B.22SZZ$$$UBGB.F.F.F.F.FGGGHHH

1e>>V>v>>SZZ$$$'"$<$<t$<$<$<===.4**q***+UG$$$$$r*   c                     dgdz  }t          d                    |                    }dd i}t          d|d dD             	          }t          t          t
          j        |fi | d S )
Nz1, 1, 1, 1, -1.1r  r  rk   c                 0    d|                                  z  S )Nz(%s)r  r  s    r)   r  z5TestFromTxt.test_inconsistent_dtype.<locals>.<lambda>  s    6AHHJJ#6 r*   r:  c                      g | ]}|t           fS r/   r  r&  s     r)   r1   z7TestFromTxt.test_inconsistent_dtype.<locals>.<listcomp>  s    777!aX777r*   r  )r;  r  rm   )r!   r   r  r   r!  rS   r  )r'   r   r  r  r^   s        r)   test_inconsistent_dtypez#TestFromTxt.test_inconsistent_dtype  s    "#b(tyy''667

77w777: : :j"-AA&AAAAAr*   c                     d}t          j        t          |          dd d          }t          j        ddgdt          fdt          fd	t
          fg
          }t          ||           d S )N0, 1, 2.3
4, 5, 6.7r:  f%02ir;  rm   
defaultfmtr   rc   ffffff@)rk   r  @f00f01f02rl   )rS   r  r!   rn   rp   ro   r   r'   r   r  r*  s       r)   test_default_field_formatz%TestFromTxt.test_default_field_format  s{    %fTll'*$7L L Lxk2 %s|eS\E5>JL L LUD!!!!!r*   c                     d}t          j        t          |          dt          d          }t          j        g dg dgt                    }t          ||           d S )Nr%  r:  r&  r'  r  r6  r*  r9  r  r+  rl   rS   r  r!   ro   rn   r   r/  s       r)   test_single_dtype_wo_namesz&TestFromTxt.test_single_dtype_wo_names  sf    %fTll'*%GM M Mx6eDDDUD!!!!!r*   c                     d}t          j        t          |          dt          d          }t          j        ddgd dD             	          }t          ||           d S )
Nr%  r:  r  r  r2  r3  c                      g | ]}|t           fS r/   r   r&  s     r)   r1   zBTestFromTxt.test_single_dtype_w_explicit_names.<locals>.<listcomp>  r(  r*   r  rl   r4  r/  s       r)   "test_single_dtype_w_explicit_namesz.TestFromTxt.test_single_dtype_w_explicit_names  ss    %fTll'*%yJ J Jx6995999; ; ;UD!!!!!r*   c                     d}t          j        t          |          dt          d          }t          j        ddgd dD             	          }t          ||           d S )
Nza, b, c
0, 1, 2.3
4, 5, 6.7r:  Tr  r2  r3  c                      g | ]}|t           fS r/   r   r&  s     r)   r1   zBTestFromTxt.test_single_dtype_w_implicit_names.<locals>.<listcomp>  r(  r*   r  rl   r4  r/  s       r)   "test_single_dtype_w_implicit_namesz.TestFromTxt.test_single_dtype_w_implicit_names  ss    .fTll'*%tE E Ex6995999; ; ;UD!!!!!r*   c                     d}t          j        t          |          dt          t          t          fd          }t          j        ddgdt          fdt          fd	t          fg
          }t          ||           d S )Nr%  r:  zf_%02ir'  )r   r6  r*  )rk   r  r+  f_00f_01f_02rl   rS   r  r!   rp   ro   rn   r   r/  s       r)   test_easy_structured_dtypez&TestFromTxt.test_easy_structured_dtype  s    %fTllc$'#68M M Mx|4 &}vuoOQ Q QUD!!!!!r*   c                 <   d}t          dd           }t          j        d          5 }t          j        ddt          j                   t	          j        t          |          fi |}t          |d         j	        t          j        u            d d d            n# 1 swxY w Y   t	          j
        d	gd
dt          fdg          }t          ||           t          j        d          5 }t          j        ddt          j                   t	          j        t          |          fddi|}t          |d         j	        t          j        u            d d d            n# 1 swxY w Y   t	          j
        dgddt          fdg          }t          ||           d S )Nz01/01/2003  , 1.3,   abcder:  )r;  rm   Tr   r   r"   r   )z01/01/2003  ?z   abcde)r:  z|S12r;  )r<  r  rl   	autostrip)z
01/01/2003rC  r  )r:  r  )r<  z|S5)r  r   r   r   rS   r2  r  r!   r   r3  rn   ro   r   )r'   r   r^   rb  r  r*  s         r)   test_autostripzTestFromTxt.test_autostrip  s0   +4000$D111 	CQ#Hb"2NOOOM&,,99&99EAaDMR%AABBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C x:;-e}mLN N NUD!!!$D111 	CQ#Hb"2NOOOM&,,II$I&IIEAaDMR%AABBB	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C x56-e}mLN N NUD!!!!!s%   A&BB"B,A(E  E$'E$c                 n   d}t          j        t          |          ddd           }dt          fdt          fdt          fg}t          j        d|	          }t          ||           t          j        t          |          ddd d
d
          }dt          fdt          fdt          fg}t          j        d|	          }t          ||           t          j        t          |          ddd d
          }dt          fdt          fdt          fg}t          j        d|	          }t          ||           d S )NzA.A, B (B), C:C
1, 2, 3.14r:  Tr;  r  rm   AAB_BCC)rc   rj   gQ	@rl   r"   r;  r  rm   replace_spacedeletecharsA.AB (B)C:Cr;  r  rm   rM  B_(B)r@  r'   r  r~  
ctrl_dtyper*  s        r)   test_replace_spacezTestFromTxt.test_replace_space  s?   +}VC[['*$dD D DSkE3<$?
xJ777T4   }VC[['*$d+-2? ? ? clWcNUENC
xJ777T4   }VC[['*$d)+- - - clWcNUENC
xJ777T4     r*   c                    d}t          j        t          |          ddt                    }dt          fdt          fdt          fg}t          j        d|	          }t          ||           t          j        t          |          ddt          d
d
          }dt          fdt          fdt          fg}t          j        d|	          }t          ||           t          j        t          |          ddt          d
          }dt          fdt          fdt          fg}t          j        d|	          }t          ||           d S )NzA.A, B (B), C:C
1, 2, 3r:  TrG  rH  rI  rJ  r   rl   r"   rK  rN  rO  rP  rQ  rR  )rS   r  r!   rp   rn   r   rS  s        r)   test_replace_space_known_dtypez*TestFromTxt.test_replace_space_known_dtype%  s?   (}VC[['*$cC C CSkE3<$=
x	444T4   }VC[['*$c+-2? ? ? clWcNUCLA
x	444T4   }VC[['*$c)+- - - clWcNUCLA
x	444T4     r*   c                 T   d}t          dd          }t          j        ddgd dD             	          }t          j        t	          |          fd
d i|}t          ||           t          j        ddgd dD             	          }t          j        t	          |          fi |}d S )NzA,,C
0,1,2
3,4,5r:  Tr  r  r   c                      g | ]}|t           fS r/   r  r&  s     r)   r1   z5TestFromTxt.test_incomplete_names.<locals>.<listcomp>C  s    BBBA3xBBBr*   )r]  r:  r^  rl   rm   c                      g | ]}|t           fS r/   r   r&  s     r)   r1   z5TestFromTxt.test_incomplete_names.<locals>.<listcomp>H  s    DDDa5zDDDr*   )r  rS   rn   r  r!   r   r'   r   r^   r*  r~  s        r)   test_incomplete_namesz!TestFromTxt.test_incomplete_names=  s    #4000xI.BB1ABBBD D D}VD\\@@@@@T4   xI.DD3CDDDF F F}VD\\44V44r*   c                     d}t          j        t          |          t          t          t          fd          }t          j        ddgdt          fdt          fdt          fg          }t          ||           d S )	Nz1 2 3
 4 5 6rg   r1  r   r)  r:  r;  rl   r@  r  s       r)   test_names_auto_completionz&TestFromTxt.test_names_auto_completionK  s    }VD\\$'#4CA A AxI. #SzD%=4+FH H HT4     r*   c                    d}d}t          j        t          |          t          t          t          fddd          }t	          |j        j        |           t          j        t          |          t          t          t          fddd          }t	          |j        j        |           t          j        t          |          t          ddd          }t	          |j        j        |           d S )Nz'A,B,C,D,E
0,1,2,3,4
0,1,2,3,4
0,1,2,3,4)r]  r^  Er:  )r   rj   rk   T)rm   r;  r  r  )rS   r  r!   rp   r   rm   r  )r'   r   
ctrl_namesr~  s       r)   test_names_with_usecols_bug1636z+TestFromTxt.test_names_with_usecols_bug1636T  s    ;$
}VD\\$'c?c%.d< < < 	TZ%z222}VD\\$'c?c%4DB B B 	TZ%z222}VD\\#&#%4DB B B 	TZ%z22222r*   c                    d}t          ddd           }t          j        ddgdt          fdt          fd	t          fg
          }t          j        t          |          fi |}t          ||           t          ddd           }t          j        ddgdt          fdt          fd	t          fg
          }t          j        t          |          fi |}t          ||           d S )Nz-    A    B   C
    0    1 2.3
   45   67   9.)r  r  rk   TrG  r)  )r`  r  r  r]  r  r^  rl   r  )r  rS   rn   rp   ro   r  r!   r   r[  s        r)   test_fixed_width_namesz"TestFromTxt.test_fixed_width_namesg  s    @	TBBBxl3 #SzC:U|DF F F}VD\\44V44T4   T:::xl3 #SzC:U|DF F F}VD\\44V44T4     r*   c                     d}t          dd d          }t          j        g dg dg dgt                    }t          j        t          |          fi |}t          ||           d S )	Ns   1, 2, 3
1, , 5
0, 6, 
r:  r  )r;  rm   r  r   )rc   r  r  )r   r	  r  rl   )r  rS   rn   rp   r  r!   r   r[  s        r)   test_filling_valueszTestFromTxt.test_filling_valuesv  su    +4EEExLLL,,,?sKKK}VD\\44V44T4     r*   c                    t          j        d          5 }t          j        ddt          j                   t          j        t          d          d d d          }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t          |d	         d
           t          j        d          5 }t          j        ddt          j                   t          j        t          d          d d d          }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t          |d	         d           d S )NTr   r   r"   ztest1,testNonetherestofthedatar:  rm   rC  r;  r   rc   s   testNonetherestofthedataztest1, testNonetherestofthedatas    testNonetherestofthedata)
r   r   r   rS   r2  r  r!   r   r3  r   )r'   rb  r~  s      r)   test_comments_is_nonez!TestFromTxt.test_comments_is_none~  s   $D111 	CQ#Hb"2NOOO=(H!I!I'+dcK K KDAaDMR%AABBB		C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C
 	T!W9:::$D111 	CQ#Hb"2NOOO=(I!J!J'+dcK K KDAaDMR%AABBB		C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C
 	T!W:;;;;;s%   A,BBBA,D<<E E c                 x   d}d}d|z   dz   }||z   |z   }t          j        d          5 }t          j        ddt          j                   t          j        t          |          d d d	
          }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t          |d         d           t          |d         d|z              t          |d         d           t          j        t          |          d d d	d          }t          |d         d           t          |d         d|
                    d          z              t          |d         d           t          j        d          5 }t          j        ddt          j                   t          j        t          d|z             d d d	
          }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t          |d         d           t          |d         d|z              d S )Ns      norm1,norm2,norm3
   test1,testNonethe   ,test3
Tr   r   r"   r:  rh  r   )rc   r      test1)rc   rc      testNonether      test3r9   rm   rC  r;  rj  test1testNonethetest3   0,testNonether:  r;  )r   r   r   rS   r2  r  r!   r   r3  r   r=   )r'   r9   normencr(   rb  r~  s          r)   test_latin1zTestFromTxt.test_latin1  s    %"V+k93J$D111 	CQ#Hb"2NOOO='+dcK K KDAaDMR%AABBB		C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C
 	T$Z***T$Z&!8999T$Z***}VAYY#'$#&.0 0 0 	T$Z)))T$Zx1H1H!HIIIT$Z)))$D111 	CQ#Hb"2NOOO=(86(A!B!B'+dcK K KDAaDMR%AABBB		C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C
 	T$Z###T$Z&!899999s%   A,B""B&)B&A/H  HHc                     d}|                      t          |          d d          }t          |t          j        |                    d                                                               d S r  )r  r   r   rS   rn   r=   r^  r  s      r)   test_binary_decode_autodtypez(TestFromTxt.test_binary_decode_autodtype  s\    4MM'%..xMHH1bhu||H'='='C'C'E'EFFGGGGGr*   c                    d}d}d|z   dz   }||z   |z   }t          j        d          5 }t          j        ddt          j                   t          j        t          |          d d d	
          }t          |d         j        t          j        u            d d d            n# 1 swxY w Y   t          j	        g ddd|z   dgg dg          }t          ||           d S )Nre  rk  rl  rm  Tr   r   r"   r:  rh  r   )s   norm1s   norm2s   norm3rn  ro  rp  )r   r   r   rS   r2  r  r!   r   r3  rn   r   )r'   rl  rv  rw  r(   rb  r~  ctls           r)   test_utf8_byte_encodingz#TestFromTxt.test_utf8_byte_encoding  sL   %"T)K73J$D111 	CQ#Hb"2NOOO='+dcK K KDAaDMR%AABBB		C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C 	C
 h///NT18<///1 2 2 	4%%%%%s   A,B""B&)B&c           	         d}t                      5 }t          |d          5 }|                    d|z   dz   dz             d d d            n# 1 swxY w Y   t          j        |d d dd          }t          j        d	d
|                    d          z   dgd	d
|                    d          z   dggt          j                  }t          ||           t          |d          5 }|                    d|z              d d d            n# 1 swxY w Y   t          j        |d d dd          }t          |d         d           t          |d         d
|                    d          z              d d d            d S # 1 swxY w Y   d S )Nre  r   rl  rm  rj   r:  rf  rq  rr  rs  rt  rl   ru  r:  r   r;  )
r   r   r,   rS   r  rn   r=   rk  r   r   )r'   rl  r3  r   r~  r|  s         r)   test_utf8_filezTestFromTxt.test_utf8_file  s   ZZ 	K4dD!! IQ-4{BaGHHHI I I I I I I I I I I I I I I=TD+.B B BD(}t{{7/C/CCWM}t{{7/C/CCWMO 7$ $ $C tS))) dD!! 1Q(4/0001 1 1 1 1 1 1 1 1 1 1 1 1 1 1=TD+.B B BDdQ'''d]T[[5I5I%IJJJ#	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	K 	KsZ   E=AE=A	E=A	BE=%D
>E=
D	E=D	AE==FFc                    d}d}	 t          j                    }|                    |           n+# t          t          f$ r t          j        d           Y nw xY wt                      5 }t          j	        |d          5 }|
                    d           |
                    d|z   dz              |
                    d|z   d	z              d d d            n# 1 swxY w Y   t          j        d
          5 }t          j        ddt          j                   t          j        |d d d          }t#          |d         j        t          j        u            d d d            n# 1 swxY w Y   t          j        g dd|dgdd|z   dggt          j                  }t+          ||           d d d            d S # 1 swxY w Y   d S )NrU  u   öüözTSkipping test_utf8_file_nodtype_unicode, unable to encode utf8 in preferred encodingr  znorm1,norm2,norm3
znorm1,z,norm3
ztest1,testNonethez,test3
Tr   r   r"   r:  rh  r   )norm1norm2norm3r  r  rr  rs  rt  rl   )r  r  r  UnicodeErrorImportErrorr   r  r   r  r   r,   r   r   r   rS   r2  r  r   r3  rn   rk  r   )	r'   rl  r9   rj  r3  r   rb  r~  r|  s	            r)   test_utf8_file_nodtype_unicodez*TestFromTxt.test_utf8_file_nodtype_unicode  s   	G244HKK!!!!k* 	G 	G 	GK F G G G G G	G ZZ 	*4t$$ A-...6)J6777+d2Z?@@@A A A A A A A A A A A A A A A (555 G'"(*(DF F F}T/24 4 4 !)EEFFFG G G G G G G G G G G G G G G (000vw/}t3W=? 7	$ $ $C
 tS)))#	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	*sl   (/ %AA(F7>AC
F7C	F7C	F76AE!F7!E%	%F7(E%	)AF77F;>F;c                 J   t          d          }t          ddd          }t          j        |fi |}t          j        ddgdt
          fd	t
          fg
          }t          t          |t          j                             t          ||           t          d          }t          j        |fd dd|}t          j        ddgddgdt
          fd	t
          fg          }t          ||           t          |j        |j                   t          |j        ddg           d S )NA,B
0,1
2,3r:  r  Tr  r  r  r]  r  rl   r  r  r  r  r  r  r   rj   )r!   r  rS   
recfromtxtrn   rp   r   rQ   recarrayr   r  r  r]  r  s        r)   test_recfromtxtzTestFromTxt.test_recfromtxt  s4   o&&EFFF}T,,V,,(FF+#&*sCj!9; ; ;
4--...T7###'((}TFtFFvFF(FG,!/ ?#&*sCj!9; ; ; 	T7###TY---TVaV$$$$$r*   c                 L   t          d          }t          ddd          }t          j        |fdd i|}t          j        ddgdt
          fd	t
          fg
          }t          t          |t          j                             t          ||           t          d          }t          j        |fd dd|}t          j        ddgddgdt
          fd	t
          fg          }t          ||           t          |j        |j                   t          |j        ddg           t          d          }t          j        |d          }t          j        ddgdt
          fdt
          fg
          }t          t          |t          j                             t          ||           t          d          }dt
          fdt          fg}t          j        |d|          }t          j        ddg|
          }t          t          |t          j                             t          ||           t          d          }t          j        |dd i          }t          j        ddgdt          dffg
          }t          |j        |j                   t          ||           d S )Nr  r  Tr  r  case_sensitiverm   r  r  r]  r  rl   r  r  r  r  r  r  r   rj   )r  rg   r   )r  rm   zcolor
"red"
"blue"c                 ,    |                      d          S )N   ")rt  r  s    r)   r  z-TestFromTxt.test_recfromcsv.<locals>.<lambda>-	  s    AGGENN r*   )r  )red)bluecolorrk   )r!   r  rS   r  rn   rp   r   rQ   r  r   r  r  r]  ro   r<   rm   )r'   r   r^   r~  r  rm   s         r)   test_recfromcsvzTestFromTxt.test_recfromcsv		  s   o&&U$tLLL}T88888(FF+#&*sCj!9; ; ;
4--...T7###'((}TFtFFvFF(FG,!/ ?#&*sCj!9; ; ; 	T7###TY---TVaV$$$o&&}T%999(FF+#&*sCj!9; ; ;
4--...T7###o&&sc5\*}T%uEEE(FF+!&( ( (
4--...T7### ,--}Tq2J2J.KLLL(Hi0'E1:9N8OPPPTZ///T7#####r*   c                    d}t          |          }t          j        |d          }t          j        |          }t          |ddgddgddgg           t          |d	d
gddgg           t	          t
          t          j        t          |          d           d}t          j        t          |          d          }t          j        ddgddgg          }t          ||           t	          t
          t          j        t          |          dd           t	          t
          t          j        t          |          d           t                      5 }|                    t                     t          j        t          |          dd          }t          j        ddgddgddgddgg          }t          ||           t          j        t          |          dd          }t          j        ddgddgddgddgg          }t          ||           d d d            n# 1 swxY w Y   d}t          |          }t          j        |ddd          }t          j        g dddg          }t          ||           t          j        |d |j
                  }t          j        ddgddg          }t          ||           d S ) Nz1 2
3 4
5 6
7 8
9 10
r:   )r  rc   rj   rk   r  r	  r  r  r  rR  r   z1 1
2 2
0 
3 3
4 4
5  
6  
7  
r6  r7  )r"  r  F)r  r-  r8  r9  z"a b
#c d
1 1
2 2
#0 
3 3
4 4
5  5
T)r  r  r  ))r6  r6  )r7  r7  )r8  r8  )r   <f8)r  r  rl   )r  rm   )r9  r9  )r  r  )r!   rS   r  r   r   r!  rn   r   r   r   rm   )r'   r   r  a1a2r~  r  r   s           r)   r  zTestFromTxt.test_max_rows2	  s   +Tll]3+++]3R1a&1a&1a&1222R1a&1b'*+++ 	j"-JJJJ 9}VD\\A666(RHr2h/00T7### 	j"-1 	" 	" 	" 	" 	j"-JJJJ    		(CJJ()))=OOODhR2r(RHr2hGHHGw'''=OOODhR2r(RHr2hGHHGw'''		( 		( 		( 		( 		( 		( 		( 		( 		( 		( 		( 		( 		( 		( 		( < Tll}Sa!4HHH(???)<8: : :T7### }S4tzBBB(J
3)<8: : :T7#####s   CH%%H),H)c                    t          j        d                              d          }d}|D ]}d|z   dz   }t                      5 }t	          |d          5 }|                    |           d d d            n# 1 swxY w Y   t          j        |          }d d d            n# 1 swxY w Y   t          ||           d S )Nr	  r  r  r  r  rb  )rS   r  r  r   r   r,   r  r   )r'   r  r  r  r   rL   r   r  s           r)   test_gft_using_filenamez#TestFromTxt.test_gft_using_filenameh	  s:    ill""6**& 	) 	)CS=7*D *t$__ "GGDMMM" " " " " " " " " " " " " " "mD))* * * * * * * * * * * * * * * sC((((	) 	)s6   B"A7+B"7A;;B">A;?B""B&	)B&	c                 <   t          j        d                              d          }d}|D ]}d|z   dz   }t                      }t	          j        |d          5 }|                    t          |                     d d d            n# 1 swxY w Y   t          d	          5 }t          |d          5 }|                    |           d d d            n# 1 swxY w Y   t          t          j        |          |           d d d            n# 1 swxY w Y   d S )
Nr	  r  r  r  r  rb  fileobjr  z.gz2r   )rS   r  r  r   r  GzipFiler,   r   r   r   r   r  )	r'   r  r  r  r   r(   rG  rL   r   s	            r)   test_gft_from_gzipzTestFromTxt.test_gft_from_gzipv	  s   1%%f--& 		@ 		@CS=7*D		Aqs333 'q&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ((( @D$__ "GGDMMM" " " " " " " " " " " " " " ""2=#6#6???@ @ @ @ @ @ @ @ @ @ @ @ @ @ @		@ 		@sH   #B		B	B	$D5CDCDC%DD	D	c                     d }t          j         |                      }t          |t          j        d                     d S )Nc               3   V   K   t          d          D ]} t          d| z            V  d S r  )r   r   r  s    r)   r  z3TestFromTxt.test_gft_using_generator.<locals>.count	  s@      2YY ( (dQh''''''( (r*   rR  )rS   r  r   r  r  s      r)   test_gft_using_generatorz$TestFromTxt.test_gft_using_generator	  sF    	( 	( 	( mEEGG$$3	".....r*   c                    t          d          }t          j        |d           }t          |j        j        g d           t          |j        d         t          k               t          |j        d         t          j        k               t          |j        d         t          j	        k               t          |d         d           t          |d         d           t          |d         d	           d S )
Nz%73786976294838206464 17179869184 1024rl   )r:  r;  r<  r:  r;  r<  g      Dl        i   )r!   rS   r  r   rm   r  r   ro   r4  int_r   r  s      r)   test_auto_dtype_largeintz$TestFromTxt.test_auto_dtype_largeint	  s     =>>}T...TZ%'9'9'9:::
4 E)***
4 BH,---
4 BG+,,,T
$9:::T$Z---T$Z&&&&&r*   c                 2   t          d          }t          j        |dd          \  }}}t          |t          j        g d                     t          |t          j        g d                     t          |t          j        g d                     d S )Nz1,2,3
4,5,6
7,8,9
0.0,1.0,2.0r:  T)r;  r  )r6  r9  r  r  )r7  r  rN  r6  )r8  rF  r  r7  )r!   rS   rH  r   rn   )r'   r  rg   r   r   s        r)   test_unpack_float_dataz"TestFromTxt.test_unpack_float_data	  s    788*SC===1a1bh';';';<<===1bh';';';<<===1bh';';';<<=====r*   c                 &   t          d          }ddd}t          j        ||d          \  }}}t          |j        t          j        d                     t          |j        t          j        d                     t          |j        t          j        d	                     t          |t          j        d
dg                     t          |t          j        ddg                     t          |t          j        ddg                     d S )Nr  r  r  r  Tr  r  r   r0  r  r  rg  r  r  r  )r!   rS   r  r   rm   r   rn   r  s         r)   r  z"TestFromTxt.test_unpack_structured	  s     '((&3EFF-2d;;;1aQWbhtnn---QWbhtnn---QWbhtnn---1bhd|445551bhBx001111bhc{3344444r*   c                 V   t          d          }t          j        ddg          t          j        ddg          t          j        ddg          f}t          j        |d dd	
          }t	          ||          D ]/\  }}t          ||           t          |j        |j                   0d S )NzM 21 72.
F 35 58.r  r  rg  r  r  r  Tzutf-8)rm   r  rj  )r!   rS   rn   r  r  r   r   rm   )r'   r  expectedr~  rU   results         r)   test_unpack_auto_dtypez"TestFromTxt.test_unpack_auto_dtype	  s     )**Hc3Z(("(B8*<*<bhSz>R>RS}STGLLLx.. 	2 	2KCsF+++FL1111	2 	2r*   c                     t          d          }ddd}t          j        ddgt          j                  }t          j        ||d	          }t          ||           t          |j        |j                   d S )
Nz21
35r   r   r  rg  r  rl   Tr  )r!   rS   rn   r  r  r   r   rm   r'   r  r   r  r~  s        r)   test_unpack_single_namez#TestFromTxt.test_unpack_single_name	  sx     X'228RHBH555}S48888T***X^TZ00000r*   c                    t          d          }ddd}t          j        dt          j                  }t          j        ||d          }t          ||           t          d	|j                   t          |j        |j                   d S )
Nr  r   r  r  r  rl   Tr  r/   )	r!   rS   rn   r  r  r   r   re   rm   r  s        r)   test_squeeze_scalarzTestFromTxt.test_squeeze_scalar	  s     Skk'228D111}S48888T***R$$$X^TZ00000r*   ndimr  c                     d}t          j        t          |          |          }t          j        t          |          |          }t	          ||           d S )N42r  )rS   rH  r   r  r   )r'   r  r  rg   r   s        r)   r  zTestFromTxt.test_ndmin_keyword	  sS     Jx}}D111M(3--t4441a     r*   N)^r4   r5   r6   r  rS   r  r  r   rs   ry   r  r  r+  r/  r5  r>  rB  rH  rH  rK  rN  rS  rY  rd  r	  rk  rw  r{  rl  r  r  r  r  r  r  r  r  r  r  r   r  r>  r  r  r  r  r`  r  rP  r  r  r  r  r  r  r  r  r#  r0  r5  r8  r;  rA  rE  rU  rW  r\  r^  rb  rd  rf  ri  rx  rz  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r   r  rp   r  r/   r*   r)   r  r  =  sJ       |BM**H$ $ $
* 
* 
*
* 
* 
*
$ 
$ 
$$ $ $	! 	! 	!F F F08 8 80 0 0 $ $ $$ $ $
$ 
$ 
$  ! ! !:$ $ $; ; ;
$ 
$ 
$$ $ $$ $ $	$ 	$ 	$	$ 	$ 	$
% 
% 
%B B B$ $ $
$ 
$ 
$$ $ $F F F6' ' '$ $ $
$ 
$ 
$$ $ $$ $ $$ $ $( ( (+ + +*! ! !1 1 1/ / /
	! 	! 	!
- 
- 
-$ $ $! ! !. . .$$ $ $@! ! !8. . .$ $ $$ $ $1 1 1&% % %.B B B" " "" " "" " "" " "" " "" " "&! ! !0! ! !05 5 5! ! !3 3 3&! ! !! ! !< < <: : :8H H H
& & & K K K*!* !* !*F% % %&'$ '$ '$R4$ 4$ 4$l) ) )@ @ @ / / /' ' '2> > >5 5 52 2 21 1 1
1 
1 
1 [VYYY//!s ! ! ! 0/! ! !r*   r  c                       e Zd Zd Zd Zd Zej                            e	d          d             Z
d Zd Zd	 Zd
 Zd ZdS )TestPathUsagec                    t          d          5 }t          |          }t          j        ddgddgg          }t          j        ||           t          j        |          }t          ||           d d d            d S # 1 swxY w Y   d S )N.txtr   g?rj   r:   rk   )r   r   rS   rn   r  rH  r   )r'   r3  rg   r   s       r)   test_loadtxtzTestPathUsage.test_loadtxt	  s    V$$$ 	%::D3(QF+,,AJtQ
4  Aq!$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%s   A#BBBc                 (   t          d          5 }t          |          }t          j        ddgddggt                    }t          j        ||           t          j        |          }t          ||           d d d            d S # 1 swxY w Y   d S )Nr1  r   rc   rj   r:   rk   )r   r   rS   rn   rp   r   rT   r   r'   r3  rg   r   s       r)   test_save_loadzTestPathUsage.test_save_load	  s    V$$$ 	(::D1a&1a&)3//AGD!74==DtQ'''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(s   A)BBBc                 t   t          d          5 }t          |          }t          j        ddgddggt                    }t          j        ||           t          j        |d          }t          ||           ~t          rt                       t                       d d d            d S # 1 swxY w Y   d S )	Nr1  r   rc   rj   r:   rk   r~   r}   )
r   r   rS   rn   rp   r   rT   r   r   r   r  s       r)   test_save_load_memmapz#TestPathUsage.test_save_load_memmap	  s    V$$$ 
	::D1a&1a&)3//AGD!743///DtQ''' 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	s   BB--B14B1zmemmap doesn't work correctlyrz   c                    t          d          5 }t          |          }t          j        ddgddggt                    }t          j        ||           t          j        |d          }d	|d
         d
<   d	|d
         d
<   ~t          rt                       t                       t          j        |          }t          ||           d d d            d S # 1 swxY w Y   d S )Nr1  r   rc   rj   r:   rk   zr+r  r  r   )
r   r   rS   rn   rp   r   rT   r   r   r   )r'   r3  rg   r   r   s        r)   test_save_load_memmap_readwritez-TestPathUsage.test_save_load_memmap_readwrite	
  s    V$$$ 	(::D1a&1a&)3//AGD!---AAaDGAaDG 74==DtQ'''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(s   B9CCCc                 &   t          d          5 }t          |          }t          j        |d           t          j        |          5 }t          |d         d           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S Nr   r   r  r  r  )r   r   rS   r   rT   r   r'   r3  r   s      r)   test_savez_loadzTestPathUsage.test_savez_load
  s+   V$$$ 	@::DHT~.... @$"4;???@ @ @ @ @ @ @ @ @ @ @ @ @ @ @	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@s5   :BA."B.A2	2B5A2	6BB
B
c                    t          d          5 }t          |          }t          j        |d           t          j        |          }t          |d         d           |                                 d d d            d S # 1 swxY w Y   d S r  )r   r   rS   savez_compressedrT   r   rR   r  s      r)   test_savez_compressed_loadz(TestPathUsage.test_savez_compressed_load"
  s    V$$$ 	::D.999974==DtE{N;;;JJLLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A$BB	Bc                    t          d          5 }t          |          }t          j        ddg          }t          j        ||           t          j        |          }t          ||           d d d            d S # 1 swxY w Y   d S )Nr  r   r   r   )r   r   rS   rn   r  r  r   r  s       r)   test_genfromtxtzTestPathUsage.test_genfromtxt+
  s    V$$$ 	(::D&&)**AJtQ=&&Dq$'''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(s   AA==BBc                     t          d          5 }t          |          }|                    d          5 }|                    d           d d d            n# 1 swxY w Y   t	          ddd          }t          j        |fi |}t          j        d	d
gdt          fdt          fg          }t          t          |t
          j                             t          ||           d d d            d S # 1 swxY w Y   d S )Nr  r   rb  r  r:  r  Tr  r  r  r]  r  rl   )r   r   r   r,   r  rS   r  rn   rp   r   rQ   r  r   r'   r3  r   r^   r~  r  s         r)   r  zTestPathUsage.test_recfromtxt3
  sw   V$$$ 
	(::D3 )1((() ) ) ) ) ) ) ) ) ) ) ) ) ) ) CTJJJF=0000Dh/'*Cj3*%=? ? ?GJtR[11222w'''
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	(s5   %C3AC3A	C3A	 BC33C7:C7c                    t          d          5 }t          |          }|                    d          5 }|                    d           d d d            n# 1 swxY w Y   t	          ddd          }t          j        |fdd i|}t          j        d	d
gdt          fdt          fg          }t          t          |t
          j                             t          ||           d d d            d S # 1 swxY w Y   d S )Nr  r   rb  r  r  Tr  rm   r  r  r]  r  rl   )r   r   r   r,   r  rS   r  rn   rp   r   rQ   r  r   r  s         r)   r  zTestPathUsage.test_recfromcsv@
  s|   V$$$ 
	(::D3 )1((() ) ) ) ) ) ) ) ) ) ) ) ) ) ) d4PPPF=<<T<V<<Dh/'*Cj3*%=? ? ?GJtR[11222w'''
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	( 
	(s5   %C5AC5A	C5A	 BC55C9<C9N)r4   r5   r6   r  r  r  r   r   r  r   r  r  r  r  r  r  r/   r*   r)   r  r  	  s        % % %( ( (   [w'FGG( ( HG( @ @ @  ( ( (( ( (( ( ( ( (r*   r  c                  x   t           j                            d          } t                      }t          j        |d          }t          j        ||            |                                 |                    d           t          j        |d          }t          t          j	        |          |            d S )Nr  r  rb  r  r   r~   )
rS   r   r   r  r  r   rR   rN   r   rT   rg   r(   r   s      r)   test_gzip_loadr  N
  s    
	  A		Aac***AGAqMMMGGIIIFF1IIIac***Arwqzz1%%%%%r*   c                        e Zd Zd Zd Zd ZdS )
JustWriterc                     || _         d S r$   baser'   r  s     r)   r%   zJustWriter.__init___
      			r*   c                 6    | j                             |          S r$   )r  r,   r&   s     r)   r,   zJustWriter.writeb
  s    yq!!!r*   c                 4    | j                                         S r$   )r  rM   r  s    r)   rM   zJustWriter.flushe
  s    y   r*   N)r4   r5   r6   r%   r,   rM   r/   r*   r)   r  r  ^
  sA          " " "! ! ! ! !r*   r  c                   "    e Zd Zd Zd ZddZdS )
JustReaderc                     || _         d S r$   r  r  s     r)   r%   zJustReader.__init__i
  r  r*   c                 6    | j                             |          S r$   )r  rD  )r'   r   s     r)   rD  zJustReader.readl
  s    y~~a   r*   r   c                 8    | j                             ||          S r$   )r  rN   )r'   offwhences      r)   rN   zJustReader.seeko
  s    y~~c6***r*   Nr^  )r4   r5   r6   r%   rD  rN   r/   r*   r)   r  r  h
  sF          ! ! !+ + + + + +r*   r  c                  \   t           j                            d          } t                      }t          |          }t          j        ||            |                                 |                    d           t          |          }t          t          j	        |          |            d S )Nr  r   )
rS   r   r   r  r   rM   rN   r  r   rT   r  s      r)   test_ducktypingr  s
  s    
	  A		A1AGAqMMMGGIIIFF1III1Arwqzz1%%%%%r*   c                  ,   t                      } t          j        | d          }|                    d           |                                 |                     d           t          d          5 }t          |d          5 }|                    |                                            d d d            n# 1 swxY w Y   t          j
        |          }d d d            n# 1 swxY w Y   |                                  t          |g d           d S )	Nrb  r     1 2 3
r   rp  r   r   r   )r   r  r  r,   rR   rN   r   r   rD  rS   rH  r   )r(   rG  rL   r   r  s        r)   test_gzip_loadtxtr  
  sf    			Aac***AGGJGGIIIFF1III				 4$ 	GGAFFHH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	j               GGIIIsIII&&&&&s6   3C#(B8,C#8B<	<C#?B<	 C##C'*C'c                  >   t                      } t          j        | d          }|                    d           |                                 |                     d           t          j        | d          }t          t          j        |          g d           d S )Nrb  r  r  r   r~   r   )	r   r  r  r,   rR   rN   r   rS   rH  )r(   r   s     r)   test_gzip_loadtxt_from_stringr  
  s    		Aac***AGGJGGIIIFF1IIIac***Arz!}}iii00000r*   c                     t                      } t          j        d          }t          j        d          }t          j        | ||           |                     d           t          j        |           }t          d|v            t          d|v            t          d|                                v            t          d|                                v            |                                D ]+\  }}t          |dv            t          |j
        d           ,t          t          |                                          dk               |D ]}t          |dv            t          d|                                v            d S )N)r:   r:   )r   r   r   r   r   rj   )r   rS   rM  r   rN   rT   r   keysitemsr   re   r  )r(   r   r   r/  r   rg   s         r)   test_npzfile_dictr  
  s[   		A
A
AHQ!qFF1III


AC1HC1HC16688OC16688O		 & &1Z   QWf%%%%C		NNa    ! !Z    C16688Or*   zPython lacks refcountsrz   c                     t                      } t          j        | g d           |                     d           t	                      5  t          j        |            d d d            n# 1 swxY w Y   |                     d           ddg}t	                      5  t          j        t          d          |          }t          |t          j	        dg|                     d d d            d S # 1 swxY w Y   d S )Nr   r   )rg   u1rj   )r   r  rj   z0 1 2 3rl   )r  r  )
r   rS   r   rN   r   rT   rH  r!   r   rn   )r   r   r   s      r)   test_load_refcountr  
  s~   
 			AHQ			FF1III			  



               FF1III
.	)B			 @ @Jvi((333Q"2!32>>>???@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @s%   	A**A.1A.A	C22C69C6c                     t                      } t          j        | d           t          j        | d           |                     d           t          j        |           dk    sJ t          j        |           dk    sJ t          j        t                    5  t          j        |            d d d            d S # 1 swxY w Y   d S )Nrc   rj   r   )r   rS   r   rN   rT   r   r   EOFError)r   s    r)   #test_load_multiple_arrays_until_eofr  
  s    		AGAqMMMGAqMMMFF1III71::????71::????	x	 	   



                 s   B==CCr$   )QrO   r   r  rZ   r   r>   r   r  rS  r   pathlibr   tempfiler   r   r   r   r  multiprocessingr   r	   ctypesr
   numpyrS   numpy.mar  numpy.lib._iotoolsr   r   numpy.compatr   numpy.ma.testutilsr   numpy.testingr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   numpy.testing._private.utilsr   r!   maxsizer  r  ru  r  r  rv  r?   rB   r   r   r  r  r  r  r  r  r  r  r  r  r  r  r  r   r   r  r  r/   r*   r)   <module>r      s^   



 				  				       				 				        ' ' ' ' ' '                        . . . . . . . .                 @ @ @ @ @ @ @ @             + + + + + +                                  9 8 8 8 8 8> > > > >W > > >& ;JJJGG   GGGKKKHH   HHH0 0 0 0h% h% h% h% h% h% h% h%VI I I I I= I I I] ] ] ] ]M ] ] ]@_ _ _ _ _ _ _ _B	E% E% E% E% E% E% E% E%Pn, n, n, n, n,+ n, n, n,`?6 ?6 ?6 ?6 ?6 ?6 ?6 ?6Jh! h! h! h! h!+ h! h! h!V%c( c( c( c( c( c( c( c(L& & & ! ! ! ! ! ! ! !+ + + + + + + +& & &' ' '*1 1 1  6 $-EFF@ @ GF@"    s$   5B< <CC
C CC