
    *i                    J   S SK r S SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKrS SK	r	S SK
Jr  S SKJr  S SKJrJr  S SKJrJr  S SKJr  S SKJr  S SKrS SKrS SKJr  S SKJr  S S	KJr  S S
K J!r!  S SK"J#r#J$r$  S SK%J&r&J'r'  S SK(J)r)  S SK*J+r+J,r,J-r-J.r.J/r/J0r0J1r1J2r2J3r3J4r4J5r5J6r6J7r7J8r8J9r9  S SK:J;r;   " S S\5      r<\Rz                  S:  r> S SK?r?Sr@ S SKBrBSrCS6S jrD " S S5      rE " S S\E5      rF " S S\E5      rG " S S5      rH " S S5      rI " S  S!\I5      rJ " S" S#5      rK " S$ S%\I5      rL " S& S'5      rMS( rN " S) S*5      rO " S+ S,5      rPS- rQS. rRS/ rSS0 rT\R                  R                  \+(       + S1S29S3 5       rWS4 rXS5 rYg! \A a    Sr@ Nf = f! \A a    SrC Nf = f)7    N)c_bool)datetime)BytesIOStringIO)Valueget_context)Path)NamedTemporaryFile)asbytes)VisibleDeprecationWarning)_npyio_impl)ConversionWarningConverterError)
recfromcsv
recfromtxt)assert_equal)HAS_REFCOUNTIS_PYPYIS_WASMassert_assert_allcloseassert_array_equalassert_no_gc_cyclesassert_no_warningsassert_raisesassert_raises_regexassert_warnsbreak_cyclessuppress_warningstempdirtemppath)requires_memoryc                   .    \ rS rSrSrSS jrS rS rSrg)	TextIO0   zHelper 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                 D    [         R                  " U [        U5      5        g N)r   __init__r   selfss     U/var/www/html/ai-backend/venv/lib/python3.13/site-packages/numpy/lib/tests/test_io.pyr(   TextIO.__init__9   s    wqz*    c                 D    [         R                  " U [        U5      5        g r'   )r   writer   r)   s     r,   r0   TextIO.write<   s    dGAJ'r.   c           	      n    [         R                  " X Vs/ s H  n[        U5      PM     sn5        g s  snf r'   )r   
writelinesr   )r*   linesr+   s      r,   r3   TextIO.writelines?   s(    4e!<e'!*e!<=!<s   2
 N) )	__name__
__module____qualname____firstlineno____doc__r(   r0   r3   __static_attributes__r6   r.   r,   r$   r$   0   s    +(>r.   r$   l        TFc                     [        U [        5      (       a  U R                  S5      n [        [        R
                  " X5      SS 6 $ )zM
This function is available in the datetime module only from Python >=
2.5.

latin1N   )
isinstancebytesdecoder   timestrptime)r+   fmts     r,   rE   rE   P   s:     !UHHXT]]1*2A.//r.   c                       \ rS rSrS rS rS rS rS r\	R                  R                  \R                  S:H  SS	9S
 5       rS r\	R                  R                   S 5       rSrg)RoundtripTest[   c                    UR                  S0 5      nUR                  SSS05      nUR                  SS5      nU(       a  [        SS9nUR                  nO[        5       nUn Un	U" U/U	Q70 UD6  UR	                  5         UR                  S5        [        R                  S	:X  a%  [        U[        5      (       d  UR                  5         [        R                  " U40 UD6n
Xl        Xl        [        U[        5      (       dt  UR                  5         S
[        5       ;   aU  [        U
[        R                  R                   R"                  5      (       d!  [$        R&                  " UR                  5        gggg! [        U[        5      (       dt  UR                  5         S
[        5       ;   aU  [        W
[        R                  R                   R"                  5      (       d!  [$        R&                  " UR                  5        f f f f = f)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platformrA   closenploadarrrQ   localslibnpyioNpzFileosremove)r*   	save_funcargskwargsrK   rL   rN   target_file	load_filer[   rQ   s              r,   	roundtripRoundtripTest.roundtrip\   s    JJ{B/	JJ{^T,BC	zz.%8,E:K#((I!)K#I	4Ck5C595Q||w&z+w/O/O!!#779:	:LH ,k733!!#!VX-%lBFFLL4H4HII		+"2"23 J . 4:k733!!#!VX-%lBFFLL4H4HII		+"2"23 J . 4s   #BE8 8BHc                    U R                  U5        U R                  USS9  U R                  [        R                  " U5      5        U R                  [        R                  " U5      SS9  UR                  S   S:  aP  U R                  [        R                  " U5      SS  5        U R                  [        R                  " U5      SS  SS9  g g )NT)rN   r      )rg   rY   asfortranarrayshaper*   as     r,   check_roundtripsRoundtripTest.check_roundtrips   s    qqt,r((+,r((+$?771:>NN2,,Q/34NN2,,Q/3$NG r.   c                    [         R                  " / [        5      nU R                  U5        [         R                  " SS/SS//[        5      nU R                  U5        [         R                  " SS/SS//[        5      nU R                  U5        [         R                  " SS/SS//[         R
                  S	9nU R                  U5        [         R                  " SS/SS//[         R                  S	9nU R                  U5        g )
Nrj      r@      y      ?      @y       @      @y      @      @y      @       @dtype)rY   arrayfloatro   intcsinglecdoublerm   s     r,   
test_arrayRoundtripTest.test_array   s    HHRa HHq!fq!f%u-a HHq!fq!f%s+a HHvv&(89La HHvv&(89La r.   c                     [         R                  " / [        5      nU R                  U5        [         R                  " SS/SS//[        5      nU R                  U5        g )Nrj   rr   r@   rs   )rY   rv   objectro   rm   s     r,   test_array_objectRoundtripTest.test_array_object   sK    HHR a HHq!fq!f%v.a r.   c                 `    [         R                  " / SQ[        5      nU R                  U5        g )Nrj   rr   r@   rs   )rY   rv   rx   rg   rm   s     r,   test_1DRoundtripTest.test_1D   s    HH\3'qr.   rP   zFails on Win32reasonc                     [         R                  " SS/SS//5      nU R                  USSS0S9  [         R                  " SS/SS//5      nU R                  USSS0S9  g )	Nrj   g      @rs   g333333@T	mmap_moder)rN   rL   )rY   rv   rg   rk   rm   s     r,   	test_mmapRoundtripTest.test_mmap   sh    HHq#hC)*qtS7IJ3x!S23qtS7IJr.   c                 X    [         R                  " SS/SS/S9nU R                  U5        g )Nrj   rr   r@   rs   xi4yr   rt   )rY   rv   ro   rm   s     r,   test_recordRoundtripTest.test_record   s*    HHff%k;-GHa r.   c                 <   [        S5       Vs/ s H  nSU-  S-  [        4PM     nn[        R                  " SUS9n[        R
                  " SS9   [        R                  " SS	[        5        U R                  U5        S S S 5        g s  snf ! , (       d  f       g = f)
N  %dd   i  rt   Trecordalwaysr7   )	rangerw   rY   oneswarningscatch_warningsfilterwarningsUserWarningro   )r*   idtrn   s       r,   test_format_2_0RoundtripTest.test_format_2_0   sz    16s<AqC'<GGD#$$D1##Hb+>!!!$ 21 =11s   B.B
B)r[   rQ   N)r8   r9   r:   r;   rg   ro   r{   r   r   pytestmarkskipifrV   rW   r   r   slowr   r=   r6   r.   r,   rH   rH   [   su    .4`H! ! [[/8HIK JK! [[% %r.   rH   c                       \ rS rSrS rSrg)TestSaveLoad   c                    [         R                  " U [        R                  /UQ70 UD6  [	        U R
                  S   U R                  5        [	        U R
                  S   R                  U R                  R                  5        [	        U R
                  S   R                  R                  U R                  R                  R                  5        g )Nr   )
rH   rg   rY   saver   r[   rQ   ru   flagsfnc)r*   rc   rd   s      r,   rg   TestSaveLoad.roundtrip   s    bgg???TXXa[$"3"34TXXa[&&(9(9(?(?@TXXa[&&**D,=,=,C,C,G,GHr.   r6   N)r8   r9   r:   r;   rg   r=   r6   r.   r,   r   r      s    Ir.   r   c                      \ rS rSrS rS r\R                  R                  \	SS9\R                  R                  \
(       + SS9\R                  R                  S 5       5       5       rS rS	 rS
 rS r\R                  R                  \SS9S 5       rS r\R                  R(                  S 5       rS r\R                  R/                  S/ SQ5      S 5       rSrg)TestSavezLoad   c                 P   [         R                  " U [        R                  /UQ70 UD6   [	        U R
                  5       Hv  u  p4U R                  SU-     n[        XE5        [        UR                  UR                  5        [        UR                  R                  UR                  R                  5        Mx     U R                  R                  (       aY  U R                  R                  R                  5         [        R                  " U R                  R                  R                  5        g g ! U R                  R                  (       aY  U R                  R                  R                  5         [        R                  " U R                  R                  R                  5        f f = f)Nzarr_%d)rH   rg   rY   savez	enumerater[   rQ   r   ru   r   r   fidrX   r`   ra   rS   )r*   rc   rd   nr[   reloadeds         r,   rg   TestSavezLoad.roundtrip   s   bhh@@@
	6#DHH-,,X\:S+SYY7SYY]]HNN,>,>?	 .   $$!!%%++-		$++//445 %t  $$!!%%++-		$++//445 %s   BD/ /A6F%c           	      t   [        SSS9 n[        R                  " US5       nUR                  SS5       n[        R
                  " U[        R                  " S5      5        SSS5        UR                  SS5       n[        R
                  " U[        R                  " S5      5        SSS5        UR                  S	S5       nUR                  S
5        SSS5        SSS5        [        R                  " U5       n[        US   5      S:X  d   e[        US   5      S:X  d   e[        US   5      S:X  d   eUS	   S
:X  d   e SSS5        SSS5        g! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N[= f! , (       d  f       g= f)z5Test loading non-.npy files and name mapping in .npz.numpy_test_npz_load_non_npy_.npzprefixsuffixwz	test1.npy
   Ntest2metadatas
   Name: Testtest1)
r!   zipfileZipFileopenrY   r   aranger0   rZ   len)r*   tmpnpzout_files       r,   test_load_non_npyTestSavezLoad.test_load_non_npy   s@   ;FKsc*cXXk3/8GGHbiim4 0XXgs+xGGHbiim4 ,XXj#.(NN=1 / + 3w<(B...3{+,2223w<(B...:-777	  LK//++.. +*  LKs   F)F,E"F<,E%(FE6FF):AFF)
E"F%
E3/F6
F F
F	F)
F&	"F))
F7zHangs on PyPyr   zNeeds 64bit platformc                    Sn[         R                  " U[         R                  S9n[        SSS9 n[         R                  " X2S9  A[         R
                  " U5      nUS   nUR                  5         S S S 5        g ! , (       d  f       g = f)Nl     rt   numpy_test_big_arrays_r   r   rn   rn   )rY   emptyuint8r!   r   rZ   rX   )r*   Lrn   r   npfiles        r,   test_big_arraysTestSavezLoad.test_big_arrays   se     HHQbhh'5fEHHSWWS\FsALLN FEEs   AA::
Bc                     [         R                  " SS/SS//[        5      n[         R                  " SS/SS//[        5      nU R	                  X5        g )	Nrj   rr   r@   rs         ?       @       @      @      @            @      (@)rY   rv   rw   complexrg   )r*   rn   bs      r,   test_multiple_arrays"TestSavezLoad.test_multiple_arrays   sJ    HHq!fq!f%u-HHvv&(9:GDqr.   c                 L   [         R                  " SS/SS//[        5      n[         R                  " SS/SS//[        5      n[	        5       n[         R
                  " X1US	9  UR                  S
5        [         R                  " U5      n[        XS   5        [        X$S   5        g Nrj   rr   r@   rs   r   r   r   r   )file_afile_br   r   r   )	rY   rv   rw   r   r   r   rU   rZ   r   r*   rn   r   cls        r,   test_named_arraysTestSavezLoad.test_named_arrays   s    HHq!fq!f%u-HHvv&(9:GDI
Q'	q	GGAJQ($Q($r.   c                 .   [         R                  " / SQ5      n[        5       n[         R                  " X!S9  UR	                  S5        [         R
                  " U5      n[        R                  " [        SS9   US     S S S 5        g ! , (       d  f       g = f)Nrj   rr   r@   r   r   z(1, 2)matchr   )	rY   rv   r   r   rU   rZ   r   raisesKeyError)r*   rn   fr   s       r,   test_tuple_getitem_raises'TestSavezLoad.test_tuple_getitem_raises	  s\    HHYI
	q	GGAJ]]884dG 544s   7B
Bc                    [         R                  " SS/SS//[        5      n[         R                  " SS/SS//[        5      n[	        5       n[         R
                  " X1US	9  UR                  S
5        [         R                  " U5      n[        [        [        UR                  5      5      SS/5        [        XR                  R                  5        [        X$R                  R                  5        g r   )rY   rv   rw   r   r   r   rU   rZ   r   sorteddirr   r   r   r   s        r,   test_BagObjTestSavezLoad.test_BagObj  s    HHq!fq!f%u-HHvv&(9:GDI
Q'	q	GGAJVCH%(';<Q

#Q

#r.   zCannot start threadc                     S n/ n[        S5       Vs/ s H  n[        R                  " X4S9PM     nnU H  nUR                  5         M     U H  nUR	                  5         M     U(       a  [        U5      eg s  snf )Nc                    [        SS9 n[        R                  R                  SS5      n [        R                  " XS9  S S S 5        g ! [
         a  nU R                  U5         S nAN)S nAff = f! , (       d  f       g = f)Nr   r   r   )r[   )r!   rY   randomrandnr   OSErrorappend)
error_listr   r[   errs       r,   writer9TestSavezLoad.test_savez_filename_clashes.<locals>.writer#  se    (Ciiooc3/+HHS* )(  +%%c**+	 )(s.   !A1A		
A.A)$A1)A..A11
A?r@   targetrc   )r   	threadingThreadstartjoinAssertionError)r*   r  errorsjthreadsts         r,   test_savez_filename_clashes)TestSavezLoad.test_savez_filename_clashes  s    
	+ !!H&$q ##6	B$ 	 &AGGI AFFH   (( &s   A9c                     [        SS9 n[        US5       n[        R                  " USS9  S S S 5        [        USS5       nUR	                  S5        [        UR                  (       + 5        [        R                  " U5      S	     [        UR                  (       + 5        UR	                  S5        [        UR                  (       + 5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N(= f! , (       d  f       g = f)
Nr   r   wbLOVELY LOADdatarbi'  r   r  )r!   r   rY   r   rU   r   closedrZ   )r*   r   fps      r,   test_not_closing_opened_fid)TestSavezLoad.test_not_closing_opened_fid6  s     V$c4B-0 !c4'2
BII&F#BII&
BII& ( %$ '' %$s:   C?CC?B
C.C?
C+	'C?.
C<	8C??
Dc                    [        SS9 n[        R                  " USS9  [        5        nUR	                  [
        5        [        SS5       H@  n [        R                  " U5      S      [        (       a  [        R                  " 5         M@  MB     S S S 5        S S S 5        g ! [         a  nSU 3n[        U5      eS nAff = f! [        (       a  [        R                  " 5         f f = f! , (       d  f       N_= f! , (       d  f       g = f)	Nr   r   r  r  rj   i  r  z!Failed to load data from a file: )r!   rY   r   r   filterResourceWarningr   rZ   	Exceptionr  r   gccollect)r*   r   supr   emsgs         r,   test_closing_fidTestSavezLoad.test_closing_fidE  s     V$HHS}- #$

?+q$A)V,
 #7JJL # ( % %$ % 2 A!E,S112 #7JJL # %$ %$sR    C:%C)B!*&C)C:!
C 	+B;	;C 	 C#C&	&C))
C7	3C::
Dc                    Sn[        SUS9 n[        R                  " USS9  [        R                  " U5      nUR                  R
                  nUR                  5         [        UR                  5        S S S 5        g ! , (       d  f       g = f)N&numpy_test_closing_zipfile_after_load_r   )r   r   place holderlab)	r!   rY   r   rZ   zipr  rX   r   r  )r*   r   r   r  r  s        r,   test_closing_zipfile_after_load-TestSavezLoad.test_closing_zipfile_after_load_  s^    
 :VF3sHHSn-773<DBJJLBII 433s   A'A==
Bzcount, expected_repr))rj   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                 J   [         R                  " SS/SS//[        5      n[        SS9 n[         R                  " U/U/U-  Q76   [         R
                  " U5      n[        U5      UR                  US9:X  d   eUR                  5         S S S 5        g ! , (       d  f       g = f)Nrj   rr   r@   rs   r   r   )fname)	rY   rv   rw   r!   r   rZ   reprformatrX   )r*   countexpected_reprrn   r   r   s         r,   test_repr_lists_keys"TestSavezLoad.test_repr_lists_keysl  s     HHq!fq!f%u-V$HHS'A3;'A7m222====GGI	 %$$s   A B
B"r6   N)r8   r9   r:   r;   rg   r   r   r   r   r   IS_64BITr   r   r   r   r   r   r   r  r  	slow_pypyr&  r.  parametrizer8  r=   r6   r.   r,   r   r      s    68  [[8[[H-CD[[  E 9
%	$ [[(=>) ?).' [[) )2 [[3 6 r.   r   c                      \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 r\R                  R                  S\\/5      S 5       rS rS rS rS rS rS rS r\R                  R                  S\\/5      S 5       r\R                  R;                  \R>                  S:H  SS9\R                  R@                  \!" SS9S 5       5       5       r"Sr#g)TestSaveTxti|  c                    [         R                  " SS/SS//[        5      nSn[        5       n[         R                  " X1US9  UR                  S5        [        UR                  5       [        US-   U-   S	-   S
-  5      [        US-   U-   S	-   S-  5      /5        [         R                  " SS/SS//[        5      n[        5       n[         R                  " X1SS9  UR                  S5        [        UR                  5       SS/5        g )Nrj   rr   r@   rs   z%.18erF   r    
r   r   r      1 2
   3 4
)
rY   rv   rw   r   savetxtrU   r   	readlinesr   rx   )r*   rn   rF   r   s       r,   r{   TestSaveTxt.test_array}  s    HHq!fq!f%u-I


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


1T"	q	Q[[]Xx$89r.   c                     [         R                  " / SQ[        5      n[        5       n[         R                  " X!SS9  UR                  S5        UR                  5       n[        U/ SQ5        g )Nr   r   r@  r   )s   1
s   2
s   3
s   4
)rY   rv   rx   r   rE  rU   rF  r   r*   rn   r   r4   s       r,   r   TestSaveTxt.test_1D  sH    HH\3'I


1T"	q	U<=r.   c           	          [        5       n[        [        [        R                  U[        R
                  " S5      5        [        [        [        R                  U[        R
                  " S/S///5      5        g )Nrj   rr   )r   r   
ValueErrorrY   rE  rv   r*   r   s     r,   
test_0D_3DTestSaveTxt.test_0D_3D  sH    Ij"**a!=j"**aQC!:,1GHr.   c                     [         R                  " SS/SS/S9n[        5       n[         R                  " X!SS9  UR	                  S5        [        UR                  5       S	S
/5        g )Nr   r   r   r   rt   r   r@  r   rC  rD  rY   rv   r   rE  rU   r   rF  r*   rn   r   s      r,   test_structuredTestSaveTxt.test_structured  sQ    HHff%k;-GHI


1T"	q	Q[[]Xx$89r.   c                     [         R                  " SS// SQS9n[        5       n[         R                  " X!SS/   SS9  UR	                  S	5        [        UR                  5       S
S/5        g )Nr   rs   r0  r1  ))foor   )barr   )bazr   rt   rW  rY  r   r@  r   s   1 3
s   4 6
rQ  rR  s      r,   test_structured_padded"TestSaveTxt.test_structured_padded  s\    HHi+ 4
  I


1'T2	q	Q[[]Xx$89r.   c                 
   [         R                  " S/ SQS9nUSS/   n[        SS9 n[        U5      n[         R                  " X25        [         R
                  " U5      n[        XB5        S S S 5        g ! , (       d  f       g = f)Nrj   )r   r   )zf4rt   r   r]  .npyr   )rY   r   r!   r	   r   rZ   r   )r*   rn   vpathr  s        r,   test_multifield_view TestSaveTxt.test_multifield_view  s`    GGADEsCjMV$:DGGD774=Dt'	 %$$s   AA44
Bc                     [         R                  " SS/SS//5      n[        5       n[         R                  " X!SSS9  UR	                  S5        [        UR                  5       S	S
/5        g )N      ?       @      @      @,r   )	delimiterrF   r   s   1,2
s   3,4
rQ  rR  s      r,   test_delimiterTestSaveTxt.test_delimiter  sT    HHr2hR)*I


13D1	q	Q[[]Xx$89r.   c                 Z   [         R                  " SS/5      n[        5       n[         R                  " X!SS/S9  UR	                  S5        [        UR                  5       SS/5        [        5       n[         R                  " X!S	S9  UR	                  S5        UR                  5       n[        US
S/5        [        5       n[         R                  " X!S	SS9  UR	                  S5        UR                  5       n[        US
S/5        [        5       n[        [        [         R                  X!SS9  g )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
ri  )rF   rj  c   )	rY   rv   r   rE  rU   r   rF  r   rL  rI  s       r,   test_formatTestSaveTxt.test_format  s    HHff%&I


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


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


1^s;	q	U]M:; Ij"**a;r.   c                     [        5       n[        R                  " SS/[        S9nSn[        R                  " XSUS9  UR                  S5        [        UR                  5       [        SU-   S	-   5      5        [        5       n[        R                  " XSUS
9  UR                  S5        [        UR                  5       [        SU-   S-   5      5        [        5       nSn[        R                  " XSX4S9  UR                  S5        [        UR                  5       [        XC-   S-   S-   5      5        [        5       nSn[        R                  " XSX4S9  UR                  S5        [        UR                  5       [        SU-   U-   S-   5      5        g )Nr   r   rt   zTest header / footerz%1d)rF   headerr   # z	
1 2
3 4
)rF   footerz
1 2
3 4
# rB  z% )rF   rr  commentsz1 2
3 4
)rF   rt  ru  )	r   rY   rv   rx   rE  rU   r   readr   )r*   r   rn   test_header_footer
commentstrs        r,   rw  TestSaveTxt.test_header_footer  sX    IHHff%S13


1U+=>	q	QVVXT$66GH	J I


1U+=>	q	QVVX^.@@4GH	J I



1U,	C	q	QVVXZ<tClRS	U I



1U,	C	q	QVVX\J69KKdRS	Ur.   filename_typec                    [        5        n[        R                  " SS/5      n[        R                  " U" U5      U5        [        R                  " U" U5      5      n[        X45        S S S 5        g ! , (       d  f       g = f)Nr   r   )r!   rY   rv   rE  loadtxtr   )r*   rz  rS   rn   r   s        r,   test_file_roundtripTestSaveTxt.test_file_roundtrip  sT    Z4&&)*AJJ}T*A.

=./Aq$	 ZZs   AA11
A?c                    SnSn[         R                  " X4[         R                  S9n[         R                  n[         R                  nUSU-  -   US S & [        5       n[         R                  " XcSS9  UR                  S5        UR                  5       n[        USS/5        [        5       n[         R                  " XcSU-  S9  UR                  S5        UR                  5       n[        US	S	/5        [        5       n[         R                  " XcS
/U-  S9  UR                  S5        UR                  5       n[        USS/5        g )Nrr   rt                 ?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)

rY   zeros
complex128pir$  r   rE  rU   rF  r   r*   ncolsnrowsrn   reimr   r4   s           r,   test_complex_arraysTestSaveTxt.test_complex_arrays  s!   HHe^2==9UUTTD2I~! I


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


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


1n-56	q	??A	Br.   c                 F   SnSn[         R                  " X4[         R                  S9n[         R                  n[         R                  nUSU-  -
  US S & [        5       n[         R                  " XcSS9  UR                  S5        UR                  5       n[        USS/5        g )Nrr   rt   r  z%.3er@  r   s0    (3.142e+00-2.718e+00j)  (3.142e+00-2.718e+00j)
r  r  s           r,   test_complex_negative_exponent*TestSaveTxt.test_complex_negative_exponent%  s    HHe^2==9UUTTD2I~!I


1V$	q	AAC	Dr.   c                      " S S[         5      nU" 5       n[        R                  " SS/5      n[        R                  " X#5        [        R                  " U5      n[        X45        g )Nc                       \ rS rSrS rSrg)4TestSaveTxt.test_custom_writer.<locals>.CustomWriteri8  c                 D    U R                  UR                  S5      5        g )N   
)extendsplit)r*   texts     r,   r0   :TestSaveTxt.test_custom_writer.<locals>.CustomWriter.write9  s    DJJu-.r.   r6   N)r8   r9   r:   r;   r0   r=   r6   r.   r,   CustomWriterr  8  s    /r.   r  r   r   )listrY   rv   rE  r|  r   )r*   r  r   rn   r   s        r,   test_custom_writerTestSaveTxt.test_custom_writer6  sK    	/4 	/ NHHff%&


1JJqM1 r.   c                 "   SR                  S5      n[        R                  " U/[        R                  S9n[	        5        n[        R
                  " [        R                  R                  US5      US/SS9  S S S 5        g ! , (       d  f       g = f)N   ϖUTF-8rt   test.csv%srF   encoding)	rC   rY   rv   str_r    rE  r`   ra  r  )r*   utf8rn   tmpdirs       r,   test_unicodeTestSaveTxt.test_unicodeB  s_    !!'*HHdV277+Y&JJrww||FJ7 ') YYs    7B  
Bc           	      V   SR                  S5      n[        R                  " U/[        R                  S9nSS/n[        (       a  UR                  S5        [        (       a  UR                  SS/5        [        5        nU H  n[        R                  " [        R                  R                  US	U-   5      US
/SS9  [        R                  " [        R                  R                  US	U-   5      S[        R                  S9n[        X&5        M     S S S 5        g ! , (       d  f       g = f)Nr  r  rt   r7   .gz.bz2.xz.lzmar  r  z	UTF-16-LEr  r  ru   )rC   rY   rv   r  HAS_BZ2r  HAS_LZMAr  r    rE  r`   ra  r  r|  r   )r*   r  rn   suffixesr  r   r   s          r,   test_unicode_roundtrip"TestSaveTxt.test_unicode_roundtripJ  s    !!'*HHdV277+;7OOF#8OOUG,-Y&"

277<<
V0CDa $v=JJrww||FJ4GH(3277D"1( # YYs   >BD
D(c                 *   SR                  S5      n[        R                  " U/[        R                  S9n[	        5       n[        R
                  " X2S/SS9  UR                  S5        [        UR                  5       R                  S5      US-   5        g Nr  r  rt   r  r  r   rB  )	rC   rY   rv   r  r   rE  rU   r   rv  r*   r  rn   r+   s       r,   test_unicode_bytestream#TestSaveTxt.test_unicode_bytestream[  si    !!'*HHdV277+I


1dVg6	q	QVVX__W-td{;r.   c                    SR                  S5      n[        R                  " U/[        R                  S9n[	        5       n[        R
                  " X2S/SS9  UR                  S5        [        UR                  5       US-   5        g r  )	rC   rY   rv   r  r   rE  rU   r   rv  r  s       r,   test_unicode_stringstream%TestSaveTxt.test_unicode_stringstreamc  s`    !!'*HHdV277+J


1dVg6	q	QVVXtd{+r.   iotypec                    [         R                  " S/5      nU" 5       n[         R                  " X2SS9  UR                  S5        U[        L a  [        UR                  5       SS-  5        g [        UR                  5       SS-  5        g )Nre  z%fr@  r   z%f
s   %f
)rY   rv   rE  rU   r   r   rv  )r*   r  rn   r+   s       r,   test_unicode_and_bytes_fmt&TestSaveTxt.test_unicode_and_bytes_fmtk  sc     HHbTNH


1T"	q	X6B;/7R<0r.   rP   zfiles>4GB may not workr   g   `A)
free_bytesc                 F   S n[        [        5      n[        S5      nUR                  X4S9nUR	                  5         UR                  5         UR                  (       a  [        S5      eUR                  S:X  a  [        R                  " S5        UR                  S:X  d   eg )Nc                    SU l          [        R                  " [        S5       Vs/ s HA  n[        R                  R                  [        R                  R                  SS5      S5      PMC     sn[        S9n[        5        n[        R                  " [        R                  R                  US5      US9  S S S 5        g s  snf ! , (       d  f       g = f! [         a	    S	U l         e f = f)
NFi 5 2   r   rs   rt   ztest.npz)	test_dataT)valuerY   asarrayr   r   randrandintr~   r    r   r`   ra  r  MemoryError)memoryerror_raisedr   r  r  s       r,   check_large_zip3TestSaveTxt.test_large_zip.<locals>.check_large_zip{  s    ',$ JJ16v(@1>A )+		(*		(9(9"c(BA)G1>(@GMO	 Y&HHRWW\\&*='02 Y(@ Y  +/"(s;   C AB?.C 4C6C ?C 
CC C C(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_zipTestSaveTxt.test_large_zipw  s    	" #6]
 &!KK5JKK			##LMM::LL^_zzQr.   r6   N)$r8   r9   r:   r;   r{   r   rN  rS  rZ  rb  rk  ro  rw  r   r   r<  r	   strr}  r  r  r  r  r  r  r  r   r   r  r   rV   rW   r   r"   r  r=   r6   r.   r,   r>  r>  |  s    : >I
::(:<4 UD [[_tSk:% ;%$BLD"
!))"<, [[X'':;	1 <	1 [[/8PQ[[$  %  R r.   r>  c                       \ rS rSrS rS r\R                  R                  \	(       + SS9S 5       r
\R                  R                  \(       + SS9S 5       rS	 rS
 rS rS rS rSrg)LoadTxtBasei  c           	         [         R                  " S5      R                  S5      nSnU H  nSU-   S-   nU H  n[        US9 nU" USSS	9 n	U	R	                  U5        S S S 5        U R                  USS
9n
[        X5        U" USSS
9 n	U R                  U	5      n
S S S 5        [        X5        S S S 5        M     M     g ! , (       d  f       Ng= f! , (       d  f       N;= f! , (       d  f       M  = f)Nr1  rr   r@   rB  z
0 1 23 4 5r   wtz	UTF-32-LE)moder  r  rt)rY   r   reshaper!   r0   loadfuncr   )r*   fopenr  wantedlinesepsepr  r   rS   r   ress              r,   check_compressedLoadTxtBase.check_compressed  s    1%%f-&CS=7*D"V,t$E F--{-CC&s3tT[AQ"mmA. B&s3 -, #  FE BA -,s<   	C!B?	+C!	C	C!?
C	C!
CC!!
C0c                 D    U R                  [        R                  S5        g )N)r  )r  gzipr   r*   s    r,   test_compressed_gzip LoadTxtBase.test_compressed_gzip  s    dii2r.   z	Needs bz2r   c                 D    U R                  [        R                  S5        g )N)r  )r  bz2r   r  s    r,   test_compressed_bz2LoadTxtBase.test_compressed_bz2  s    chh	2r.   z
Needs lzmac                 D    U R                  [        R                  S5        g )N)r  r  )r  lzmar   r  s    r,   test_compressed_lzma LoadTxtBase.test_compressed_lzma  s    dii)9:r.   c                    [        5        n[        US5       nUR                  SR                  S5      5        S S S 5        U R	                  USS9n[        U/ SQ5        S S S 5        g ! , (       d  f       N5= f! , (       d  f       g = f)Nr  z0.
1.
2.UTF-16r  )        re  rf  )r!   r   r0   encoder  r   )r*   ra  r   r   s       r,   test_encodingLoadTxtBase.test_encoding  sc    Z4dD!Q++H56 "dX6Aq,/	 Z!! Zs!   A9!A(&A9(
A6	2A99
Bc                 N   SR                  S5      n[        5        n[        US5       nUR                  UR	                  S5      5        S S S 5        U R                  US[        R                  S9n[        XA5        S S S 5        g ! , (       d  f       NA= f! , (       d  f       g = f)Ns   öüör  r  r  r  )	rC   r!   r   r0   r  r  rY   r  r   )r*   nonasciira  r   r   s        r,   test_stringloadLoadTxtBase.test_stringload  su    .55g>Z4dD!Q12 "dXRWWEAq+	 Z!! Zs"   B!B
2B
B	B
B$c                     SnU R                  [        U5      [        R                  SS9n[	        U[        R
                  " UR                  S5      R                  5       5      5        g Ns   h  i  jr  ru   r  )r  r   rY   r  r   rv   rC   r  r*   utf16r`  s      r,   test_binary_decodeLoadTxtBase.test_binary_decode  sH    4MM'%.(MK1bhhu||H'='C'C'EFGr.   c                    [        5       nUR                  S5        UR                  S5        U R                  U[        R
                  SSS 0S9n[        R                  " SR                  S5      /5      n[        X#5        g )Nr  r   rB   c                 $    U R                  S5      $ )Nr  rC   r   s    r,   <lambda>4LoadTxtBase.test_converters_decode.<locals>.<lambda>  s    188G3Dr.   )ru   r  
convertersr  )	r$   r0   rU   r  rY   r  rv   rC   r   r*   r   r   rn   s       r,   test_converters_decode"LoadTxtBase.test_converters_decode  sk    H		q	MM!277W&')D%E  GHHk((1231 r.   c                 j   SR                  S5      n[        5        n[        USSS9 nUR                  U5        S S S 5        U R	                  U[
        R                  SS 0SS9n[
        R                  " US-   /5      n[        XE5        S S S 5        g ! , (       d  f       N_= f! , (       d  f       g = f)	Nr  r  r  r  r   c                     U S-   $ )Nr  r6   r  s    r,   r  6LoadTxtBase.test_converters_nodecode.<locals>.<lambda>  s    q3wr.   ru   r  r  r  )	rC   r!   r   r0   r  rY   r  rv   r   )r*   r  ra  r   r   rn   s         r,   test_converters_nodecode$LoadTxtBase.test_converters_nodecode  s    !!'*Z4dD73q 4d"''*+->)?'.  0A $*&Aq$ Z33 Zs"   B$BAB$
B!	B$$
B2r6   N)r8   r9   r:   r;   r  r  r   r   r   r  r  r  r  r  r   r  r  r  r=   r6   r.   r,   r  r    sz    4 3 [[GK83 93 [[H\:; ;;0,H
!
%r.   r  c                      \ rS rSr\" \R                  5      rS rS r	S r
S rS rS rS rS	 rS
 rS r\R&                  R)                  \=(       a    \R.                  R0                  S:*  SS9S 5       rS rS rS rS rS rS rS r S r!S r"S r#S r$S r%S r&\R&                  R)                  \=(       a    \R.                  R0                  S:*  SS9S 5       r'\R&                  R)                  \=(       a    \R.                  R0                  S:*  SS9S 5       r(S r)S  r*S! r+S" r,S# r-S$ r.S% r/S& r0S' r1\R&                  R)                  \2Rf                  " 5       S(:H  S)S9S* 5       r4S+ r5S, r6S- r7S. r8\R&                  Rs                  S/S0/S1/ S2Q4S1/ S3Q4S1\:" S45      4S5/ S6Q4S5/ S7Q4S5\:" S85      4/5      S9 5       r;S:r<g;)<TestLoadTxti  c                 D    [         R                  U l        S[         l        g Nrj   )r   _loadtxt_chunksize
orig_chunkr  s    r,   setup_methodTestLoadTxt.setup_method  s    %88)*&r.   c                 .    U R                   [        l        g r'   )r  r   r  r  s    r,   teardown_methodTestLoadTxt.teardown_method  s    )-&r.   c                    [        5       nUR                  S5        UR                  S5        [        R                  " US[        R
                  4S[        R
                  4/S9n[        R                  " SS/SS	/S9n[        X#5        [        5       nUR                  S
5        UR                  S5        SSS.n[        R                  " SS/US9n[        R                  " XES9n[        Xv5        g )N1 2
3 4r   r   r   rt   r   r   r   r   zM 64 75.0
F 25 60.0genderageweightS1r   r^  namesformatsM      P@     R@F      9@      N@)r$   r0   rU   rY   r|  int32rv   r   )r*   r   r   rn   dmydescriptorr   r   s           r,   r   TestLoadTxt.test_record  s    H	
	q	JJq#rxx3/ BCHHff%k;-GH1 H	&'	q	!<#57HH'')0<>JJq-1 r.   c                    [        5       nUR                  S5        UR                  S5        [        R                  " U[
        S9n[        R                  " SS/SS//[
        5      n[        X#5        UR                  S5        [        R                  " U[        S9n[        R                  " SS/SS//[        5      n[        X#5        g )Nr%  r   rt   rj   rr   r@   rs   )	r$   r0   rU   rY   r|  rx   rv   r   rw   r  s       r,   r{   TestLoadTxt.test_array  s    H	
	q	JJq$HHq!fq!f%s+1 	q	JJq&HHq!fq!f%u-1 r.   c                    [        5       nUR                  S5        UR                  S5        [        R                  " U[
        S9n[        R                  " / SQ[
        5      n[        X#5        [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SS9n[        R                  " / SQ[
        5      n[        X#5        g )N1
2
3
4
r   rt   r   1,2,3,4
ri  ru   rj  r$   r0   rU   rY   r|  rx   rv   r   r  s       r,   r   TestLoadTxt.test_1D  s    H		q	JJq$HH\3'1 H		q	JJqs3HH\3'1 r.   c                     [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSS 0S9n[        R                  " / SQ[
        5      n[        X#5        g )N	1,2,3,,5
r   ri  r@   c                 *    [        U =(       d    S5      $ Nrx   r+   s    r,   r  *TestLoadTxt.test_missing.<locals>.<lambda>#      AJr.   ru   rj  r  rj   rr   r@   rG  r0  rA  r  s       r,   test_missingTestLoadTxt.test_missing  sW    H		q	JJqs#$&?"@BHH'-1 r.   c                     [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSS 0SS9n[        R                  " SS	/S
S//[
        5      n[        X#5        g )N1,2,3,,5
6,7,8,9,10
r   ri  r@   c                 *    [        U =(       d    S5      $ rF  rH  rI  s    r,   r  :TestLoadTxt.test_converters_with_usecols.<locals>.<lambda>,  rK  r.   rj   r@   ru   rj  r  usecolsrr   rG     	   rA  r  s       r,   test_converters_with_usecols(TestLoadTxt.test_converters_with_usecols'  sh    H	()	q	JJqs#$&?"@&( HHq$i!Q(#.1 r.   c                     [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSS9n[        R                  " / SQ[
        5      n[        X#5        g )N# comment
1,2,3,5
r   ri  #ru   rj  ru  rj   rr   r@   r0  rA  r  s       r,   test_comments_unicode!TestLoadTxt.test_comments_unicode1  sP    H	&'	q	JJqs #%HH\3'1 r.   c                     [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSS9n[        R                  " / SQ[
        5      n[        X#5        g )Nr\  r   ri     #r^  r_  rA  r  s       r,   test_comments_byteTestLoadTxt.test_comments_byte:  sP    H	&'	q	JJqs $&HH\3'1 r.   c                     [        5       nUR                  S5        UR                  S5        [        R                  " U[
        S/ SQS9n[        R                  " / SQ/ SQ/[
        5      n[        X#5        g )Nz,# comment
1,2,3
@ comment2
4,5,6 // comment3r   ri  )r]  @z//r^  r   rV  rA  r  s       r,   test_comments_multiple"TestLoadTxt.test_comments_multipleC  sU    H	AB	q	JJqs 02HHi+S11 r.   )rW  r@      zPyPy bug in error formattingr   c           	         [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSS9n[        R                  " / SQ[
        5      n[        X#5        [        5       nUR                  S5        UR                  S5        [        [        [        R                  U[
        SSS9  g )Nz/* comment
1,2,3,5
r   ri  z/*r^  r_  z*/ comment
1,2,3,5
)
r$   r0   rU   rY   r|  rx   rv   r   r   rL  r  s       r,   test_comments_multi_chars%TestLoadTxt.test_comments_multi_charsL  s     H	'(	q	JJqs $&HH\3'1  H	'(	q	j"**asc#	%r.   c                    [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSS9n[        R                  " / SQ[
        5      n[        X#5        [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSS9n[        R                  " / SQ[
        5      n[        X#5        g )Ncomment
1,2,3,5
r   ri  rj   )ru   rj  skiprowsr_  r\  rA  r  s       r,   test_skiprowsTestLoadTxt.test_skiprows^  s    H	$%	q	JJqs !#HH\3'1 H	&'	q	JJqs !#HH\3'1 r.   c           
         [         R                  " SS/SS//[        5      n[        5       n[         R                  " X!5        UR                  S5        [         R                  " U[        SS9n[        X1S S 2S4   5        [         R                  " / SQ/ S	Q/[        5      n[        5       n[         R                  " X!5        UR                  S5        [         R                  " U[        S
S9n[        X1S S 2SS 24   5        UR                  S5        [         R                  " U[        [         R                  " SS/5      S9n[        X1S S 2SS 24   5        [        [         R                  [         R                  [         R                  [         R                  [         R                  [         R                  [         R                  [         R                   4	 HH  nU" S5      nUR                  S5        [         R                  " U[        US9n[        X1S S 2S4   5        MJ      " S S5      nU" 5       nUR                  S5        [         R                  " U[        US9n[        X1S S 2S4   5        UR                  S5        [         R                  " U[        U4S9n[        X1S S 2S4   5        Sn[#        U5      nSS/n	SS/n
[         R                  " US[%        ['        X5      5      S9n[)        US   SS/5        [)        US   SS/5        UR                  S5        Sn[+        [,        S[/        U5      R0                   3[         R                  X,S9  [+        [,        S[/        U5      R0                   3[         R                  USUS/S9  g )Nrj   rr   r@   rs   r   rj   ru   rV  r   r@   rs   r0  r   c                       \ rS rSrS rSrg)*TestLoadTxt.test_usecols.<locals>.CrazyInti  c                     gr  r6   r  s    r,   	__index__4TestLoadTxt.test_usecols.<locals>.CrazyInt.__index__  s    r.   r6   N)r8   r9   r:   r;   rz  r=   r6   r.   r,   CrazyIntrx    s    r.   r|  z<JOE 70.1 25.3
                BOB 60.5 27.9
                stidtempS4f8r   rr   rV  ru      JOE   BOBL9@fffff;@      ?z^usecols must be.*rV  )rY   rv   rw   r   rE  rU   r|  r   rx   int8int16r7  int64r   uint16uint32uint64r$   r  r-  r   r   	TypeErrortyper8   )r*   rn   r   r   int_typeto_readr|  	crazy_intr  r-  dtypesr[   	bogus_idxs                r,   test_usecolsTestLoadTxt.test_usecolso  s   HHq!fq!f%u-I


1	q	JJqt411g&HHi+U3I


1	q	JJqv6112h' 	
q	JJqrxxA/?@112h' bggrxx288RXXryyBII/H qkGFF1I

1E7;AqAqD'*/	 	 J		q	JJqy911g&	q	JJq	|<11g& 4L jjF$s57I2JKS[66"23S[4,/ 	
q		 i!9!9 :;JJ	 	 i!9!9 :;JJAy!#4	r.   c                    [         R                  " [        5         [        R                  " S/S/SS9  S S S 5        [         R                  " [
        [        45         [        R                  " S/S/SS9  S S S 5        [         R                  " [        SS9   [        R                  " S/S	S
/SS9  S S S 5        g ! , (       d  f       N= f! , (       d  f       N[= f! , (       d  f       g = f)Nz1
l            ri  )rV  rj  l            zQIf a structured dtype .*. But 1 usecols were given and the number of fields is 3.r   z1,1
zi,2ir   )ru   rV  rj  )r   r   OverflowErrorrY   r|  rL  r  r  s    r,   test_bad_usecolsTestLoadTxt.test_bad_usecols  s    ]]=)JJw3? *]]J67JJw3? 8 ]]934 JJysK4 4 *)774 4s#   B9C
C9
C

C
C)c                 *   [        5       nUR                  S5        UR                  S5        [        R                  " S[
        4SS[
        4S[        4/4/5      n[        R                  " XSS9n[        R                  " S	S
/U5      n[        X45        g )N1,2,3.0
4,5,6.0
r   r   r   r  r+   ri  r@  rj   )rr   rg  rs   )r0        @)
r$   r0   rU   rY   ru   rx   rw   r|  rv   r   r*   r   r   r   rn   s        r,   test_fancy_dtypeTestLoadTxt.test_fancy_dtype  sw    H	$%	q	XXSzC3*sEl)C#DEFJJqc2HHm]3R81 r.   c                     [        S5      n[        R                  " SS[        4S[        4S[        S4/5      n[        R
                  " XS9n[        R                  " SS	S
/ SQ/ SQ/4/US9n[        X45        g Nzaaaa  1.0  8.0  1 2 3 4 5 6rS   r  r   r   blockr  rt   aaaare         @r   rV  r$   rY   ru   rw   rx   r|  rv   r   r  s        r,   test_shaped_dtypeTestLoadTxt.test_shaped_dtype  sr    01XX~U|c5\f-/ 0JJq#HHvsC)Y)?@A1 r.   c           	         [        S5      n[        R                  " SS[        4S[        4S[        S4/5      n[        R
                  " XS9n[        R                  " SS	S
/ SQ/ SQ// SQ/ SQ//4/US9n[        X45        g )Nz*aaaa  1.0  8.0  1 2 3 4 5 6 7 8 9 10 11 12r  r   r   r  )rr   rr   r@   rt   r  re  r  r   rV  )rW  rj  rX  )r         r  r  s        r,   test_3d_shaped_dtype TestLoadTxt.test_3d_shaped_dtype  s    ?@XX~U|c5\i02 3JJq#HHvsC"I.L0IJL M 	1 r.   c                     SS/n[         [        R                  4 H9  n[        R                  " SS/US9n[        R                  " XS9n[        XC5        M;     g )Nstr1str2rt   )r  rY   bytes_rv   r|  r   )r*   r   r   rn   r   s        r,   test_str_dtypeTestLoadTxt.test_str_dtype  sJ    V		"B&&)4A

1'Aq$ #r.   c                    [         R                  " [        SS9   [        5       n[        R
                  " U5      n[        UR                  S5        [        R
                  " U[        R                  S9n[        UR                  S5        [        UR                  [        R                  :H  5        S S S 5        g ! , (       d  f       g = f)Ninput contained no datar   r   rt   )r   warnsr   r$   rY   r|  r   rl   r  r   ru   )r*   r   r   s      r,   test_empty_fileTestLoadTxt.test_empty_file  sw    \\+-FGA

1A$'

1BHH-A$'AGGrxx'( HGGs   BB99
Cc                    [        5       nUR                  SS/5        UR                  S5        [        R                  " USSS 0S9n[        USS/5        UR                  S5        [        R                  " USS	S
 0S9n[        USS/5        g )Nz1 21
z3 42
r   rt  c                     [        U S5      $ N   rH  rI  s    r,   r  3TestLoadTxt.test_unused_converter.<locals>.<lambda>  
    3q":r.   rV  r     *   rj   c                     [        U S5      $ r  rH  rI  s    r,   r  r    r  r.   !   B   )r$   r3   rU   rY   r|  r   )r*   r   r  s      r,   test_unused_converter!TestLoadTxt.test_unused_converter  s    H	h)*	q	zz!T&')=%>@4"b*	q	zz!T&')=%>@4"b*r.   c           	          SnS[         4S[        4/nS nSU0n[        R                  " [	        U5      SUUS9n[        R
                  " S[        SSS5      4S	[        S
SS5      4/US9n[        XV5        g )N0 1; 2001-01-01
                   2; 2002-01-31 idxcodec                 6    [        U R                  5       S5      $ Nz%Y-%m-%drE   striprI  s    r,   r  4TestLoadTxt.test_dtype_with_object.<locals>.<lambda>      !'')Z8r.   rj   ;rj  ru   r    rr        rt   )rx   r~   rY   r|  r$   rv   r   r   r*   r  ndtypefuncr  testcontrols          r,   test_dtype_with_object"TestLoadTxt.test_dtype_with_object  s    %#, 018Y
zz&,#V%/1(($1%&HT1b,A(BC 	T#r.   c                     Sn[        5       nUR                  SU-  5        UR                  S5        [        R                  " U[        R
                  S9n[        X15        g )N)l   +&|    l   -(|    %s %sr   rt   )r$   r0   rU   rY   r|  r  r   r*   tgtr   r  s       r,   test_uint64_typeTestLoadTxt.test_uint64_type  sE    8H	#	q	jj")),Sr.   c                     Sn[        5       nUR                  SU-  5        UR                  S5        [        R                  " U[        R
                  S9n[        X15        g )N)l l    r  r   rt   )r$   r0   rU   rY   r|  r  r   r  s       r,   test_int64_typeTestLoadTxt.test_int64_type  sE    9H	#	q	jj"((+Sr.   c                    [         R                  " SSS5      R                  [         R                  5      n[         R                  " X* 45      R                  [
        5      nSR                  [        [
        R                  U5      5      n[        5       nUR                  U5        [
        [         R                  4 HC  nUR                  S5        [         R                  " X4[
        R                  SS9n[        XQU S9  ME     g )	Nir   r0  rB  r   r?   r  )err_msg)rY   logspaceastypefloat32hstackrw   r  maphexr$   r0   rU   r|  fromhexr   )r*   r  inpr   r   r  s         r,   test_from_float_hexTestLoadTxt.test_from_float_hex  s     kk#r1%,,RZZ8iid$++E2iiEIIs+,H	"**%BFF1I**JCbT3	 &r.   c                     [        S5      n[        R                  " [        SS9   [        R
                  " U5        SSS5        g! , (       d  f       g= f)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   rL  rY   r|  rM  s     r,   6test_default_float_converter_no_default_hex_conversionBTestLoadTxt.test_default_float_converter_no_default_hex_conversion&  s=     7O]]:JLJJqML L L   A
Ac                     [        S5      n[        R                  " [        SS9   [        R
                  " U5        SSS5        g! , (       d  f       g= f)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  rM  s     r,   &test_default_float_converter_exception2TestLoadTxt.test_default_float_converter_exception2  s>     9]]:ACJJqMC C Cr  c                     [        SS5      [        SS5      4n[        5       nUR                  SU-  5        UR                  S5        [        R
                  " U[         S9n[        X15        g )Nrj   r  r   rt   )r   r$   r0   rU   rY   r|  r   r  s       r,   test_from_complexTestLoadTxt.test_from_complex>  sR    q!}gan-H	#	q	jj'*Sr.   c                    [         R                  " S[         R                  S9n[         R                  n[         R                  nUSU-  -
  US S & [        5       n[         R                  " XASS9  UR                  S5        UR                  5       nUR                  S5        UR                  SS5      n[        Xe:g  5        UR                  U5        UR                  S5        [         R                  " U[        S9n[        Xq5        g )	Nrr   rr   rt   r  z%.16er@  r   s   e+00-s   e00+-)rY   r  r  r  r$  r   rE  rU   rv  replacer   r0   r|  r   r   )r*   rn   r  r  r   txttxt_badr  s           r,   test_complex_misformatted%TestLoadTxt.test_complex_misformattedF  s     HHV2==1UUTTD2I~!I


1W%	q	ffh	q	++h1		q	jj'*Sr.   c                 
   [        5        n[        US5       nUR                  S5        S S S 5        [        R                  " U5      nS S S 5        [        WSS/SS//5        g ! , (       d  f       N?= f! , (       d  f       N2= f)Nr   z
1 213 42rj   r  r@   r  )r!   r   r0   rY   r|  r   )r*   rS   r   r  s       r,   test_universal_newline"TestLoadTxt.test_universal_newlineZ  sa    Z4dCA' !::d#D  	41b'Ar7!34 ! Zs!   A4A#A4#
A1	-A44
Bc                     [        5       nUR                  S5        UR                  S5        SSS.n[        R                  " XSS9n[        R
                  " / SQ5      n[        US	   U5        g )
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$   r0   rU   rY   r|  rv   r   r  s        r,   test_empty_field_after_tab&TestLoadTxt.test_empty_field_after_taba  s[    H	=>	q	157JJqd3HH,-1Y<+r.   c                    [        S5      nSSS.n[        R                  " XSS9u  p4n[        UR                  R
                  S:H  5        [        UR                  R
                  S:H  5        [        UR                  R
                  S	:H  5        [        U[        R                  " S
S/5      5        [        U[        R                  " SS/5      5        [        U[        R                  " SS/5      5        g )NM 21 72
F 35 58rn   r   r   )|S1r  r  r,  Tru   unpackr  r  r     M   Fr  #         R@      M@)r$   rY   r|  r   ru   r  r   rv   r*   r  r   rn   r   r   s         r,   test_unpack_structured"TestLoadTxt.test_unpack_structuredk  s    '(&3HI**S48au$%u$%u$%1bhhd|451bhhBx011bhhc{34r.   c                 ^   [        5       nUR                  S5        UR                  S5        [        [        [
        R                  USS9  UR                  S5        [        [        [
        R                  USS9  UR                  S5        [
        R                  " U[        SSS9n[
        R                  " / S	Q/ S
Q/5      n[        X#5        [        5       nUR                  S5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        [        5       nUR                  S5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        [        R                  " [        SS9   [        5       n[        [
        R                  " USS9R                  S:H  5        [        [
        R                  " USS9R                  S:H  5        S S S 5        g ! , (       d  f       g = f)Nz1,2,3
4,5,6r   r@   ndminr  ri  rj   )ru   rj  r%  r   rV  z0,1,2rr   rT  )r@   z0
1
2)r@   rj   r  r   r   rj   r  )r$   r0   rU   r   rL  rY   r|  rx   rv   r   r   rl   r   r  r   )r*   r   r   rn   r8  r$  r   s          r,   test_ndmin_keywordTestLoadTxt.test_ndmin_keywordv  s,   H		q	j"**aq9	q	j"**as;	q	JJqs!<HHi+,1 H		q	JJqs!<6!"	q	JJqs!<4 	q	JJqs!<4 H			q	JJqs!<6!"	q	JJqs!<4 	q	JJqs!<4  \\+-FGABJJq*00G;<BJJq*00D89 HGGs   4A!L
L,c                     S n[         R                  " U" 5       5      n[        U[         R                  " S5      5        g )Nc               3   >   #    [        S5       H
  n SU -  v   M     g 7fNr   r   )r   r   s    r,   r6  0TestLoadTxt.test_generator_source.<locals>.count  s     2YQh s   r   )rY   r|  r   r   r*   r6  r  s      r,   test_generator_source!TestLoadTxt.test_generator_source  s+    	 jj!3		".r.   c                     [        5       nUR                  S5        UR                  S5        [        [        S[
        R                  U5        g )Nz1 2 3
4 5 6
2 3r   3)r$   r0   rU   r   rL  rY   r|  rM  s     r,   test_bad_lineTestLoadTxt.test_bad_line  s5    H	#$	q	 	JRZZ;r.   c                     [        5       nUR                  S5        UR                  S5        [        R                  " S[
        4SS[
        4/5      n[        R                  " USUS S9  g )Nz100,foo,200
300,None,400r   r   )rn   S10r   ri  )rj  ru   ru  )r$   r0   rU   rY   ru   rx   r|  )r*   r   r   s      r,   test_none_as_stringTestLoadTxt.test_none_as_string  sP    H	+,	q	XXSz<#s<=


12=r.   zANSI_X3.4-1968zWrong preferred encodingc           	         SnUR                  S5      R                  SS5      R                  5       n[        5        n[	        US5       nUR                  U5        S S S 5        [	        US5       n[        R                  " US[        R                  S9nS S S 5        [        WU5        [	        US5       n[        R                  " USSS9nS S S 5        / S	Qn[        U[        R                  " USS
95        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N\= f! , (       d  f       g = f)Ns/   5,6,7,Õscarscar
15,2,3,hello
20,2,3,Õscar
r  r  r7   r  r  r  S)s   5,6,7,Õscarscars   15,2,3,hellos   20,2,3,Õscarrt   )rC   r  
splitlinesr!   r   r0   rY   r|  r  r   rv   )r*   butf8sutf8ra  r   r   s         r,   test_binary_loadTestLoadTxt.test_binary_load  s    +W%--dB7BBDZ4dD!Q "dD!QJJq7"''B "q%(dD!QJJq7#> "TAq"((1C"89 Z!!!! "! ZsS   D2	C?D2/%D D24D!+D2?
D		D2
D	D2!
D/	+D22
E c                     [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSS9n[        R                  " / SQ[
        5      n[        X#5        g )N1,2,3,5
4,5,7,8
2,1,4,5r   ri  rj   ru   rj  max_rowsr_  rA  r  s       r,   test_max_rowsTestLoadTxt.test_max_rows  sP    H	+,	q	JJqs !#HH\3'1 r.   c                    [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSSS9n[        R                  " / SQ[
        5      n[        X#5        [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSSS9n[        R                  " / SQ/ S	Q/[
        5      n[        X#5        g )
Nz comments
1,2,3,5
4,5,7,8
2,1,4,5r   ri  rj   ru   rj  rp  rC  r_  comment
1,2,3,5
4,5,7,8
2,1,4,5rr   rs   r0  rW  rj  rA  r  s       r,   test_max_rows_with_skiprows'TestLoadTxt.test_max_rows_with_skiprows  s    H	56	q	JJqs !A/HH\3'1 H	45	q	JJqs !A/HHlL1371 r.   c                 n   [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSS9n[        R                  " / SQ/ SQ/[
        5      n[        X#5        [        R                  " U[
        SS9n[        R                  " / S	Q[
        5      n[        X#5        g )
NrA  r   ri  rr   rB  r_  rI  r@  rr   rj   rs   r0  rA  r  s       r,   $test_max_rows_with_read_continuation0TestLoadTxt.test_max_rows_with_read_continuation  s    H	+,	q	JJqs !#HHlL1371 JJqs3HH\3'1 r.   c                     [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSSS9n[        R                  " / SQ/ SQ/ S	Q/[
        5      n[        X#5        g )
NrH  r   ri  rj   r1  rG  r_  rI  rM  rA  r  s       r,   test_max_rows_larger TestLoadTxt.test_max_rows_larger  sY    H	45	q	JJqs !A/HHlL,?E1 r.   skipr  rj   )zignored
1,2
rB  3,4
)ignored1,2r7   3,4zignored
1,2

3,4r   )z-1,0
rT  rB  rU  )z-1,0rW  r7   rX  z-1,0
1,2

3,4c           
      j   [         R                  " [        SSU-
   3S9   [        R                  " U[
        USSU-
  S9n[        USS/SS	/SS
//US  5        S S S 5        [        U[        5      (       a  UR                  S5        [        R                  " 5          [        R                  " S[        5        [         R                  " [        5         [        R                  " U[
        USSU-
  S9  S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N(= f! , (       d  f       g = f)NzInput line 3.*max_rows=r@   r   ri  )ru   rp  rj  rC  r   r   rj   rr   rs   error)r   r  r   rY   r|  rx   r   rA   r   rU   r   r   simplefilterr   )r*   rS  r  r  s       r,   test_max_rows_empty_lines%TestLoadTxt.test_max_rows_empty_lines  s     \\+3AH:>@**Tts&'$h0Csb!Wq!fq!f$=de$DE	@ dH%%IIaL$$&!!';7{+

4sTS$%H. , '&@ @ ,+ '&s/   8D6D$ D1D$
D
D!	D$$
D2)r  N)=r8   r9   r:   r;   staticmethodrY   r|  r  r  r"  r   r{   r   rN  rY  r`  rd  rh  r   r   r   r   rV   implementationversionrl  rq  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r!  r'  r/  r3  r7  localegetpreferredencodingr>  rD  rJ  rN  rQ  r<  r   r\  r=   r6   r.   r,   r  r    s<   BJJ'H+
9!$!!!!!!! [[KC$6$6$>$>)$K=  ?%?% !"CJ	L!!!%)+$4 [[KC$6$6$>$>)$K=  ?? [[KC$6$6$>$>)$K=  ??(5,	5(:T/<> [[3359II9  ;:;: !!"!! [[ff-56-../023*++,-0/ 0.0.r.   r  c                   z    \ rS rSrS rS rS r\R                  R                  S\
\/5      S 5       rS rS rS	rg
)Testfromregexi  c                     [        5       nUR                  S5        UR                  S5        S[        R                  4S/n[        R
                  " USU5      n[        R                  " / SQUS9n[        X45        g )Nz1.312 foo
1.534 bar
4.444 quxr   numvalS3z([0-9.]+)\s+(...)))ˡE?rW  g%C?rX  g-@quxrt   r$   r0   rU   rY   float64	fromregexrv   r   r  s        r,   r   Testfromregex.test_record  sc    H	12	q	bjj!=1LL0"5HHE1 r.   c                     [        5       nUR                  S5        UR                  S5        S[        R                  4S/n[        R
                  " USU5      n[        R                  " / SQUS9n[        X45        g )N1312 foo
1534 bar
4444 quxr   rf  rg  z(\d+)\s+(...)))   rW  )  rX  )\  rm  rt   )r$   r0   rU   rY   r7  rp  rv   r   r  s        r,   test_record_2Testfromregex.test_record_2   sc    H	./	q	bhh/LL,b1HHB1 r.   c                     [        5       nUR                  S5        UR                  S5        S[        R                  4/n[        R
                  " USU5      n[        R                  " / SQUS9n[        X45        g )Nrs  r   rf  z(\d+)\s+...))rt  )ru  )rv  rt   rn  r  s        r,   test_record_3Testfromregex.test_record_3+  s]    H	./	q	bjj!"LLNB/HH0;1 r.   	path_typec                 *   Sn[        5        nU" U5      n[        US5       nUR                  SU-   S-   5        S S S 5        S[        R                  4S/n[        R
                  " USUSS	9n[        R                  " S
SUR                  S5      -   4SS/US9n[        Xx5        [        R                  " S[        R                  5      n	[        R
                  " XIUSS	9n[        Xx5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)Nr  r  s	   1.312 foos    
1.534 bar
4.444 quxrf  )rh  U4z(?u)([0-9.]+)\s+(\w+)r  r  rj  rW  rk  rl  rt   z([0-9.]+)\s+(\w+))r!   r   r0   rY   ro  rp  rv   rC   r   r  compileUNICODE)
r*   r|  r  str_pathra  r   r   r   rn   regexps
             r,   test_record_unicode!Testfromregex.test_record_unicode5  s    Z8X&DdD!Qt+.HHI " "**%}5BT#;R'RA5%$++g*>">?)+246Aq$ZZ 4bjjAFT2@Aq$ Z!! Zs"   DC3B0D3
D	=D
Dc                     [         R                  " S5      n[        S5      nS[        R                  4/n[        R
                  " / SQUS9n[        R                  " X!U5      n[        XT5        g )N   (\d)   123rf  r   rt   )r  r  r   rY   ro  rv   rp  r   )r*   r  r   r   rn   r   s         r,   test_compiled_bytes!Testfromregex.test_compiled_bytesG  sR    H%FObjj!"HHYb)LLB'1 r.   c                     [         R                  " S5      n[        S5      n[        R                  " [
        SS9   [        R                  " X![        R                  S9  S S S 5        g ! , (       d  f       g = f)Nr  r  zstructured datatyper   rt   )	r  r  r   r   r   r  rY   rp  ro  )r*   r  r   s      r,   test_bad_dtype_not_structured+Testfromregex.test_bad_dtype_not_structuredO  sG    H%FO]]9,ABLL"**5 CBBs   $A((
A6r6   N)r8   r9   r:   r;   r   rw  rz  r   r   r<  r  r	   r  r  r  r=   r6   r.   r,   rd  rd    sD    	!	!! [[[3+6% 7%"!6r.   rd  c                   (   \ rS rSr\" \R                  5      rS rS r	S r
S rS rS rS rS	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r \!RD                  RG                  S5      S 5       r$S r%S r&S r'S  r(S! r)S" r*S# r+S$ r,S% r-S& r.S' r/S( r0S) r1S* r2S+ r3S, r4S- r5S. r6S/ r7S0 r8S1 r9S2 r:S3 r;S4 r<S5 r=S6 r>S7 r?S8 r@S9 rAS: rBS; rCS< rDS= rES> rFS? rGS@ rHSA rISB rJSC rKSD rLSE rMSF rNSG rOSH rP\!RD                  RG                  SI5      SJ 5       rQ\!RD                  RG                  S5      SK 5       rRSL rSSM rTSN rUSO rVSP rWSQ rXSR rYSS rZST r[SU r\\!RD                  R                  SV/ SWQ5      SV\^4SX j5       r_SYr`gZ)[TestFromTxtiY  c                 \   [        S5      n[        R                  " US[        R                  4S[        R                  4/S9n[        R                  " SS/SS/S9n[        X#5        [        S	5      nS
SS.n[        R                  " SS/US9n[        R                  " XS9n[        X#5        g )Nr%  r   r   rt   r   r   r   r   zM 64.0 75.0
F 25.0 60.0r&  r*  r,  r/  r3  )r$   rY   
genfromtxtr7  rv   r   )r*   r  r  r  
descriptors        r,   r   TestFromTxt.test_record\  s    j!}}T3/C?)KL((FF+K3MNT#01:!35
((-/@A!+-}}T4T#r.   c                 H   [        S5      n[        R                  " SS/SS//[        S9n[        R                  " U[        S9n[        X25        UR                  S5        [        R                  " SS/SS//[        S9n[        R                  " U[        S9n[        X25        g )Nr%  rj   rr   r@   rs   rt   r   )	r$   rY   rv   rx   r  r   rU   rw   r|  )r*   r  r  r  s       r,   r{   TestFromTxt.test_arrayk  s    j!((QFQF+37}}T-4)		!((QFQF+59zz$e,4)r.   c                     [         R                  " / SQ[        5      n[        S5      n[         R                  " U[        S9n[        X15        [        S5      n[         R                  " U[        SS9n[        X15        g )Nr   r>  rt   r?  ri  r@  )rY   rv   rx   r$   r  r   r*   r  r  r  s       r,   r   TestFromTxt.test_1Dw  sX    ((<-n%}}T-4)k"}}T<4)r.   c                    [         R                  " / SQ[        5      n[        S5      n[         R                  " U[        SSS9n[        X15        [        S5      n[         R                  " U[        SSS9n[        X15        g )Nr_  r\  ri  r]  r^  z1,2,3,5# comment
)rY   rv   rx   r$   r  r   r  s       r,   test_commentsTestFromTxt.test_comments  s`    ((<-,-}}TcJT#*+}}TcJT#r.   c                    [         R                  " / SQ[        5      n[        SS.n[        S5      n[         R                  " U4SS0UD6n[        XA5        [        S5      n[         R                  " U4SS0UD6n[        XA5        g )	Nr_  ri  r@  ro  skip_headerrj   r\  rp  )rY   rv   rx   r$   r  r   r|  )r*   r  rd   r  r  s        r,   rq  TestFromTxt.test_skiprows  sr    ((<-S1*+}}T;q;F;T#,-zz$55f5T#r.   c                    [        SS5       Vs/ s H  nSU 3PM
     nnUR                  S5        UR                  [        S5       Vs/ s H  o SUS SUS 3PM     sn5        S	US
'   SSSSS.n[        R                  " [        SR                  U5      5      40 UD6n[        R                  " [        S5       Vs/ s H  oS US US 4PM     snS Vs/ s H
  oU[        4PM     snS9n[        XF5        g s  snf s  snf s  snf s  snf )Nrj   r1  rs  zA, B, C3   ri  z3.1f03dz99,99r   Tr0  r   )rj  r-  r  skip_footerrB  )   r   ABCrt   )
r   r  r  rY   r  r$   r  rv   rw   r   )r*   r   r  rd   r  _ctrls          r,   test_skip_footerTestFromTxt.test_skip_footer  s    "'1+.+Q"QC+.IeBi@is!Ad81QsG,i@AR"T!TVW}}VDIIdO4??xxrKAqEqe17K3895a5z59;T  /@ L9s   C9	C>=DD
c                    [        5        nUR                  [        5        Sn[        [        [
        R                  [        U5      SS9  [
        R                  " [        U5      SSS9n[        U[
        R                  " SS/SS/SS/S	S	//5      5        [
        R                  " [        U5      S
S9n[        U[
        R                  " SS/SS/SS/S	S	//5      5        Sn[
        R                  " [        U5      SSS9n[        U[
        R                  " SS/SS/S	S	/SS//5      5        [
        R                  " [        U5      S
SS9n[        U[
        R                  " SS/SS/S	S	//5      5        S S S 5        g ! , (       d  f       g = f)Nz1 1
2 2
3 3
4 4
5  
6  
7  
rj   )r  F)r  invalid_raisere  rf  rg  rh  r@   z1 1
2  
3 3
4 4
5  
6 6
7 7
r  )
r   r  r   r   rL  rY   r  r$   r   rv   )r*   r#  basestrrn   s       r,   test_skip_footer_with_invalid)TestFromTxt.test_skip_footer_with_invalid  sT    CJJ();G*bmm /q: wQeEABHHr2hR2r(RH%MNOfWo1=ABHHr2hR2r(RH%MNO;GwQeEABHHr2hR2r(RH%MNOwQeEABHHr2hR2r(%CDE+ !  s   E)E==
Fc                    [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " US SSS9n[        US   R                  [        L 5        S S S 5        [
        R                  " S	S
/5      [
        R                  " SS/5      [
        R                  " SS/5      S.n[        WS   US   5        [        US   US   5        [        US   US   5        g ! , (       d  f       N= f)Nz)gender age weight
M 64.0 75.0
F 25.0 60.0Tr   r   r7   rB   )ru   r-  r  r   r  r  r1  r5  r2  r6  r&  r'  r(  r)  )r$   r   r   r   r   rY   r  r   categoryrv   r   r*   r  r   r  r  s        r,   test_headerTestFromTxt.test_header  s    CD$$D1Q##Hb2KL==T*13DAaDMM%>>?	 2
  XXtTl3((D$<0XXtTl35 	T(^WX%67T%['%.1T(^WX%67 21s   AC99
Dc                    [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " US SS9n[        US   R                  [        L 5        S S S 5        [
        R                  " S	S
/5      [
        R                  " SS/5      [
        R                  " SS/5      [
        R                  " SS/5      [
        R                  " SS/5      /n[        WR                  R                  / SQ5        [        U5       H  u  pV[        USU 3   U5        M     g ! , (       d  f       N= f)Nz*A 64 75.0 3+4j True
BCD 25 60.0 5+6j FalseTr   r   r7   rB   r  r      As   BCD@      r2  r6  y      @      @y      @      @F)f0f1f2f3r^  r   )r$   r   r   r   r   rY   r  r   r  rv   r   ru   r-  r   )r*   r  r   r  r  r   r  s          r,   test_auto_dtypeTestFromTxt.test_auto_dtype  s    CD$$D1Q##Hb2KL==TGDDAaDMM%>>? 2 88T6N+88RH%88T4L)88VV,-88T5M*	.
 	TZZ%%'EF"7+IQ!g- , 21s   AD77
Ec                     [        S5      n[        R                  " US S9n[        R                  " / SQ/ SQ/5      n[	        X#5        g )Nz1 2 3 4
5 6 7 8
rt   r   )r0  r1  rW  rj  r$   rY   r  rv   r   r*   r  r  r  s       r,   test_auto_dtype_uniform#TestFromTxt.test_auto_dtype_uniform  s8    *+}}T.((L,78T#r.   c                     [        S5      n[        R                  " S[        4SS[        4S[        4/4/5      n[        R
                  " XSS9n[        R                  " SS	/US
9n[        X45        g )Nr  r   r   r  r+   ri  r@  r  r  rt   )r$   rY   ru   rx   rw   r  rv   r   r*   r  
fancydtyper  r  s        r,   r  TestFromTxt.test_fancy_dtype  sc    *+XXSzC3*sEl1K+LMN
}}TsC((M=9LT#r.   c                     SSS.n[        S5      nSn[        R                  " X!US9nX1S'   [        R                  " SS	/US
9n[	        XE5        g )N)grn   r   r*  r,  s   M 64.0 75.0
F 25.0 60.0r&  ru   r-  r-  r/  r3  rt   r  )r*   r  r  r-  r  r  s         r,   test_names_overwrite TestFromTxt.test_names_overwrite  s\    .!35
12+}}T5A#7((--/6@BT#r.   c                     [         R                  " [        SS9   [        R                  " S5        S S S 5        g ! , (       d  f       g = f)Nzfname must be a string,r   {   )r   r   r  rY   r  r  s    r,   test_bad_fnameTestFromTxt.test_bad_fname  s*    ]]9,EFMM# GFFs	   :
Ac                    [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " USS SS9n[        US   R                  [        L 5        S S S 5        [
        R                  " / S	QS
S[        4S[        4/S9n[        WU5        [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " USS SS9n[        US   R                  [        L 5        S S S 5        [        X45        g ! , (       d  f       N= f! , (       d  f       N+= f)NzN
#gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        Tr   r   r7   rB   )r-  ru   r  r   ))r0  r  gfffffR@)r4  r  g
ףp=*M@)r0  r  g=
ףp5@)r'  r  r(  r)  rt   sO   
# gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        r$   r   r   r   r   rY   r  r   r  rv   rx   rw   r   )r*   r  r   r  r  s        r,   test_commented_header!TestFromTxt.test_commented_header  s      $$D1Q##Hb2KL==T*13DAaDMM%>>?	 2
 xxM05#,5@QRTT4    $$D1Q##Hb2KL==T*13DAaDMM%>>?	 2
 	T ) 21 21s   AD1AE1
D?
Ec                     [        S5      n[        R                  " U[        [        4S SS9n[        R                  " SS/S[        4S[        4/S9n[        X#5        g )	Nzcol1 col2
 1 2
 3 4T)ru   ru  r-  r   r   col1col2rt   r$   rY   r  rx   rv   r   r  s       r,   test_names_and_comments_none(TestFromTxt.test_names_and_comments_none  sO    -.}}T#sd$O((FF+VSMFC=3QRT#r.   c                    [        5        n[        R                  R                  US5      n[	        US5       nUR                  SR                  5       5        S S S 5        [        5          [        R                  " [        5         [        R                  " USS9  S S S 5        S S S 5        S S S 5        g ! , (       d  f       Nb= f! , (       d  f       N0= f! , (       d  f       N9= f! , (       d  f       g = f)Nr  r     ϖasciir  )r    r`   ra  r  r   r0   r  r   r   r   UnicodeDecodeErrorrY   r  )r*   r  fpathr   s       r,   test_file_is_closed_on_error(TestFromTxt.test_file_is_closed_on_error#  s    Y&GGLL4EeT"a-4467 #
 $%]]#56MM%': 7 & Y"" 76 &% YsR   -C' B4C'*CCC#C'4
C	>C'
CC
C$	 C''
C5c           	      z   [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " USSS SS9n[        US	   R                  [        L 5        S S S 5        [
        R                  " S
SS[        4S[        4/S9n[        WU5        g ! , (       d  f       N?= f)NA B C D
 aaaa 121 45 9.1Tr   r   r7   ACDrB   )rV  r-  ru   r  r   )r  -   333333"@r  |S4r  r  rt   r  r  s        r,   test_autonames_and_usecols&TestFromTxt.test_autonames_and_usecols0  s    12$$D1Q##Hb2KL==&*$JDAaDMM%>>?	 2
 ((,".c
S%L!IKT7# 21s   AB,,
B:c                     [        S5      n[        R                  " U[        SSS 0SS9n[        R                  " SS/S	S
//[        5      n[        X#5        g )NrQ  ri  r@   c                 *    [        U =(       d    S5      $ rF  rH  rI  s    r,   r  :TestFromTxt.test_converters_with_usecols.<locals>.<lambda>@      Se_r.   rT  rU  rr   rG  rW  rX  r  r  s       r,   rY  (TestFromTxt.test_converters_with_usecols<  sT    ./}}T()+D'E$+- ((QI1v.4T#r.   c           
         [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " USSS SSS	 0S
9n[        US   R                  [        L 5        S S S 5        [
        R                  " SSS[        4S[        4/S9n[        WU5        g ! , (       d  f       N?= f)Nr  Tr   r   r7   r  rB   r  c                     S[        U 5      -  $ )Nrr   rH  rI  s    r,   r  DTestFromTxt.test_converters_with_usecols_and_names.<locals>.<lambda>L  s    1s1v:r.   )rV  r-  ru   r  r  r   )r  Z   r  r  r  rt   r  r  s        r,   &test_converters_with_usecols_and_names2TestFromTxt.test_converters_with_usecols_and_namesE  s    12$$D1Q##Hb2KL==d&*W,/1E+FHD AaDMM%>>? 2 ((,".c
S%L!IKT7# 21s   AB00
B>c                     SS 0n[        S5      n[        R                  " USS SS/US9n[        R                  " [	        SSS	5      S
4S[        R
                  4S[        4/S9n[        X45        g )Ndatec                     [        U S5      $ Nz%Y-%m-%d %H:%M:%SZ)rE   rI  s    r,   r  9TestFromTxt.test_converters_cornercases.<locals>.<lambda>U  s    hq*>?r.   2009-02-03 12:00:00Z, 72214.0ri  r}  rj  ru   r-  r    rr   r@       `@rt   )r$   rY   r  rv   r   object_rw   r   r*   	converterr  r  r  s        r,   test_converters_cornercases'TestFromTxt.test_converters_cornercasesR  sx     ?A	56}}TS#)6"2yJ((HT1a0&9#)2::"6!HJT#r.   c                     SS 0n[        S5      n[        R                  " USS SS/US9n[        R                  " [	        SSS	5      S
4SS[
        4/S9n[        X45        g )Nr  c                 B    [         R                  " [        U S5      5      $ r  )rY   
datetime64rE   rI  s    r,   r  :TestFromTxt.test_converters_cornercases2.<locals>.<lambda>`  s    bmmHQ8L,MNr.   r  ri  r}  r  r  rr   r@   r  )r  zdatetime64[us]rt   )r$   rY   r  rv   r   rw   r   r   s        r,   test_converters_cornercases2(TestFromTxt.test_converters_cornercases2]  so     NP	56}}TS#)6"2yJ((HT1a0&9"<vuo!NPT#r.   c                     [        S5      n[        R                  " USSS 0S9n[        USS/5        UR	                  S5        [        R                  " USSS	 0S9n[        US
S/5        g )Nz1 21
  3 42
rt  r   c                     [        U S5      $ r  rH  rI  s    r,   r  3TestFromTxt.test_unused_converter.<locals>.<lambda>l  
    SBZr.   r  r  r  rj   c                     [        U S5      $ r  rH  rI  s    r,   r  r  q  r  r.   r  r  )r$   rY   r  r   rU   r*   r  r  s      r,   r  !TestFromTxt.test_unused_converterh  sl    &'}}T4()+?'@BTB8$		!}}T4()+?'@BTB8$r.   c                 x    S nS n[        S5      nX!S.SS SS.n[        [        [        R                  U40 UD6  g )Nc                     [        SU R                  5       ;   =(       a    U R                  5       S   =(       d3    SU R                  5       ;  =(       a    U R                  5       =(       d    S5      $ )N   rr   r  rw   lowerr  r  r  s    r,   r  4TestFromTxt.test_invalid_converter.<locals>.<lambda>u  sJ    udaggi&7&IAGGIbM &T'+1779'<'J&Rs Ur.   c                     [        SU R                  5       ;   =(       a    U R                  5       S   =(       d3    SU R                  5       ;  =(       a    U R                  5       =(       d    S5      $ )N   %r   r  r  r  s    r,   r  r  w  sJ    eTQWWY%6%G1779Q< %S&*!'')&;&I	%QcT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  ri  rB   )r  rj  ru   r  )r$   r   r   rY   r  )r*   
strip_rand	strip_perr+   rd   s        r,   test_invalid_converter"TestFromTxt.test_invalid_convertert  sN    U
T	 5 6 (7cw0 	nbmmQA&Ar.   c                     [        S5      nS n[        R                  " USSU0S9n[        R                  " SS/SS	//5      n[	        X45        g )
Nz	q1,2
q3,4c                     [        U SS  5      $ r  )rw   rI  s    r,   r  ;TestFromTxt.test_tricky_converter_bug1666.<locals>.<lambda>  s    aer.   ri  r   )rj  r  re  rf  rg  rh  r  )r*   r+   cnvr  r  s        r,   test_tricky_converter_bug1666)TestFromTxt.test_tricky_converter_bug1666  sJ    < $}}Q#1c(C((RHr2h/0T#r.   c                 V   Sn[         R                  " [        U5      S[        S[        0S9n[         R
                  " S/SS[        4S[        4/S	9n[        X#5        [         R                  " [        U5      S[        S[        0S9n[         R
                  " / S
Q5      n[        X#5        g )Nz2009; 23; 46r  r   r  )2009      7@.   )r  r  r  r  rt   )g     d@r%  r&  )rY   r  r$   rw   rB   rv   r   )r*   dstrr  r  s       r,   test_dtype_with_converters&TestFromTxt.test_dtype_with_converters  s    }}VD]&)Au:O((-."/$u!NPT#}}VD]&)Au:O((+-T#r.   (ignore:.*recfromcsv.*:DeprecationWarningc           
      `  ^ SnSSSSS.m/ SQn[         [         [         U4S jS	.n[        [        U5      US
S USS9n[        R                  R                  / SQUS9n[        XE5        / SQn[        [        U5      US
SS USS9n[        R                  R                  / SQUS9n[        XE5        g )Nz!1,5,-1,1:1
2,8,-1,1:n
3,3,-2,m:n
r   rj   rr   r@   )z1:1z1:nzm:1zm:n)e1r   e2r   )e3i2r   i1c                 *   > TU R                  5          $ r'   r  )r   dmaps    r,   r  DTestFromTxt.test_dtype_with_converters_and_usecols.<locals>.<lambda>  s    T!((*5Er.   )r   rj   rr   r@   ri  rB   )ru   rj  r-  r  r  ))rj   r0  r   r   )rr   rj  r   rj   )r@   r@   r@   rt   )r,  r.  r2  )r   rj   r@   )ru   rj  rV  r-  r  r  ))rj   r0  r   )rr   rj  rj   )r@   r@   r@   )rx   r   r$   rY   recrv   r   )r*   r'  dtypconvr  r  r5  s         @r,   &test_dtype_with_converters_and_usecols2TestFromTxt.test_dtype_with_converters_and_usecols  s    51Q7F33+EF&-ts $I&&,,LTX,YT#8&-ts"+4D#*, &&,,@,MT#r.   c           	      ^   SnS[         4S[        4/nS nSU0n[        R                  " [	        U5      SUUS9n[        R
                  " S[        SSS5      4S	[        S
SS5      4/US9n[        XV5        SS[         4S[        4/4/n[        [        S5         [        R                  " [	        U5      SX$S9nS S S 5        S[         4S[        4S/ 4/n[        [        S5         [        R                  " [	        U5      SX$S9nS S S 5        g ! , (       d  f       NZ= f! , (       d  f       g = f)Nr  r  r  c                 6    [        U R                  5       S5      $ r  r  rI  s    r,   r  4TestFromTxt.test_dtype_with_object.<locals>.<lambda>  r  r.   rj   r  r  r  rr   r  r  rt   nestzNested fields.* not supported.*)
rx   r~   rY   r  r$   rv   r   r   r   NotImplementedErrorr  s          r,   r  "TestFromTxt.test_dtype_with_object  s8   %#, 018Y
}}VD\S(24(($1%&HT1b,A(BC 	T#UCL66*:;<= !4!BD=='-FDD #, 062,? !4!BD=='-FDD DD DD Ds    D$ D
D
D,c                     [         R                  " [        S5      [        S9nUS   S:X  d   e[         R                  " [        S5      [        S9nUS   S:X  d   eg )N1rt   r6      1strings   string)rY   r  r$   r~   )r*   parseds     r,   #test_dtype_with_object_no_converter/TestFromTxt.test_dtype_with_object_no_converter  sO    vc{&9bzT!!!vh/v>bzY&&&r.   c           	          [        S5      n[        R                  " USS [        SS[        0S9n[        R
                  " S/SS[        4/S	9n[        X#5        g )
Nzskip,skip,2001-01-01,1.0,skipri  r  rr   )rj  r-  ru   rV  r  )
2001-01-01re  )r7   |S10r7   rt   )r$   rY   r  rw   rB   rv   r   r  s       r,   'test_userconverters_with_explicit_dtype3TestFromTxt.test_userconverters_with_explicit_dtype  sU    56}}TSE%+E
D((./".U!<>T#r.   c                    Sn[        5        n[        US5       nUR                  SU-   S-   5        S S S 5        [        R                  " USS [
        SS[        0SS	9nS S S 5        [        R                  " S
UR                  S5      -   S4/SS[
        4/S9n[        WU5        g ! , (       d  f       Ny= f! , (       d  f       N^= f)Nr  r  s   skip,skip,2001-01-01s	   ,1.0,skipri  r  rr   r  )rj  r-  ru   rV  r  r  rK  re  )r7   z|U11r7   rt   )
r!   r   r0   rY   r  rw   r  rv   rC   r   )r*   r  ra  r   r  r  s         r,   ,test_utf8_userconverters_with_explicit_dtype8TestFromTxt.test_utf8_userconverters_with_explicit_dtype  s    Z4dD!Q/$6EF "==D)/QH*13D  ((\DKK,@@"EF".U!<>T7# "! Zs!   B6B%,B6%
B3	/B66
Cc                     [        S5      n[        R                  " U5      n[        R                  " / SQ/ SQ/5      n[	        X#5        g )Nz1  2  3  4   5
6  7  8  9  10)re  rf  rg  rh        @)r        @r        "@g      $@r  r  s       r,   test_spacedelimiterTestFromTxt.test_spacedelimiter  s<    67}}T"((013 4T#r.   c                     Sn[         R                  " [        U5      SS9n[         R                  " / SQ/ SQ/ SQ/5      n[	        X#5        g )Nz  1  2  3
  4  5 67
890123  4r@   )rj  r   )rs   r0  C   )iz  r  rs   )rY   r  r$   rv   r   r  s       r,   test_integer_delimiter"TestFromTxt.test_integer_delimiter  s8    0}}VD\Q7((Iz=ABT#r.   c                     [        S5      n[        R                  " U[        SSS 0S9n[        R                  " / SQ[        5      n[        X#5        g )NrD  ri  r@   c                 *    [        U =(       d    S5      $ rF  rH  rI  s    r,   r  *TestFromTxt.test_missing.<locals>.<lambda>  r  r.   rL  rM  r  r  s       r,   rN  TestFromTxt.test_missing  sC    l#}}T()+D'EG((-s3T#r.   c                 f   Sn[         R                  " [        U5      SSS9n[         R                  " S[         R                  S[         R                  4S[         R                  S4/5      n[         R                  " / S	Q[
        S
9n[        UR                  U5        [        UR                  U5        g )Nz1	2	3
	2	
1		3r  T)rj  usemaskr   rr   rj   r@   )r   r   r   rj   r   rj   r   rj   r   rt   )	rY   r  r$   rv   nanboolr   r  mask)r*   r  r  ctrl_dctrl_ms        r,   test_missing_with_tabs"TestFromTxt.test_missing_with_tabs  s{    &}}VC[D%),9rvvq"&&&9Arvvq>JL;4HTYY'TYY'r.   c                    [         R                  " SS/SS//[        5      n[        5       n[         R                  " X!5        UR                  S5        [         R                  " U[        SS9n[        X1S S 2S4   5        [         R                  " / SQ/ S	Q/[        5      n[        5       n[         R                  " X!5        UR                  S5        [         R                  " U[        S
S9n[        X1S S 2SS 24   5        UR                  S5        [         R                  " U[        [         R                  " SS/5      S9n[        X1S S 2SS 24   5        g )Nrj   rr   r@   rs   r   rt  ru  r   rv  r   )rY   rv   rw   r$   rE  rU   r  r   r  s       r,   r  TestFromTxt.test_usecols  s     ((QFQF+U3x


4!		!}}T=T1a4=)((Iy159x


4!		!}}T?T1ab5>*		!}}T!Q8HIT1ab5>*r.   c                     Sn[         R                  " [        U5      SSS9n[         R                  " SS/S Vs/ s H
  o3[        4PM     snS9n[        X$5        g s  snf )	N1 2 3
4 5 6a, b, cza, c)r-  rV  rT  rs   r1  acrt   )rY   r  r$   rv   rw   r   )r*   r  r  r  r  s        r,   test_usecols_as_cssTestFromTxt.test_usecols_as_css  sT    }}VD\#,f>xx(T0JTUT0JKT  1Ks   A
c           
          [        S5      nSS/nSS/n[        R                  " US[        [	        X#5      5      S9n[        US   SS	/5        [        US   S
S/5        g )NzJOE 70.1 25.3
BOB 60.5 27.9r}  r~  r  r  r  r  r  r  r  r  )r$   rY   r  r  r-  r   )r*   r  r-  r  r  s        r,   "test_usecols_with_structured_dtype.TestFromTxt.test_usecols_with_structured_dtype  se    45 }}&S-?(@BT&\FF#34T&\D$<0r.   c                     [         R                  " [        S5      SS9n[        U[         R                  " SS/5      5        g )Ns   1 2 3
4 5 6r   r  re  rh  )rY   r  r$   r   rv   )r*   r  s     r,   test_usecols_with_integer%TestFromTxt.test_usecols_with_integer$  s.    }}VO4a@T288RH-.r.   c                    [         R                  " SS/S[        4S[        4/S9nSnSS0n[         R                  " [	        U5      4S	S
0UD6n[        XA5        [         R                  " [	        U5      4S	S0UD6n[        XA5        g )NrT  rq  rn   r   rt   ro  r-  rp  rV  r   r   )rn   r   )rY   rv   rw   r  r$   r   )r*   r  r  rd   r  s        r,   test_usecols_with_named_columns+TestFromTxt.test_usecols_with_named_columns)  s    xx(#uU|0LM9%}}VD\E7EfET }}VD\ ;%/;39;T r.   c                 T   [        5        nUR                  SS9  [        5       n[        R                  " U5      n[        U[        R                  " / 5      5        [        R                  " USS9n[        U[        R                  " / 5      5        S S S 5        g ! , (       d  f       g = f)Nzgenfromtxt: Empty input file:)messagerj   )r  )r   r  r$   rY   r  r   rv   )r*   r#  r  r  s       r,   r  TestFromTxt.test_empty_file4  sp     CJJ>J?8D==&Drxx|, ==15Drxx|, !  s   BB
B'c                     [        S5      n[        R                  " S[        4SS[        4S[        4/4/5      n[        R
                  " XSSS9n[        R                  " S	S
/US9n[        X45        g )Nr  r   r   r  r+   ri  T)ru   rj  ra  r  r  rt   )	r$   rY   ru   rx   rw   r  marv   r   r  s        r,   test_fancy_dtype_alt TestFromTxt.test_fancy_dtype_alt@  se    *+XXSzC3*sEl1K+LMN
}}TsDQ((M=9LT#r.   c                     [        S5      n[        R                  " SS[        4S[        4S[        S4/5      n[        R
                  " XS9n[        R                  " SS	S
/ SQ/ SQ/4/US9n[        X45        g r  )r$   rY   ru   rw   rx   r  rv   r   r  s        r,   r  TestFromTxt.test_shaped_dtypeH  sr    01XX~U|c5\f-/ 0MM!&HHvsC)Y)?@A1 r.   c                    [        S5      nSSSS.n[        R                  " U4S SS.UD6n[        R                  " SS/S	S
/S[
        4S[
        4/S9n[        X45        [        UR                  UR                  5        UR                  S5        [        R                  " U4SS0UD6n[        R                  " SS/S	S
/S[        4S[        4/S9n[        X45        [        UR                  UR                  5        g )NA,B
0,1
2,N/Ari  N/ATrj  missing_valuesr-  ru   ra  r&  rr   r   FFFTr  Brg  ru   r   ra  )
r$   rY   r  r  rv   rx   r   rg  rU   rw   r*   r  rd   r  r  s        r,   test_withmissingTestFromTxt.test_withmissingQ  s    '("edK}}TFtFvF((FG,!/ ?#&*sCj!9; 	T#TYY-		!}}T:4:6:((FG,!/ ?#&,e!=? 	T#TYY-r.   c                    SnS SSS.nS[         4S[        4S[        4/n[        R                  " [        U5      4SS	0UD6n[        R                  " / S
Q/ SQUS9n[        XE5        X2S'   [        R                  " [        U5      4SSSS.SS.UD6n[        R                  " / S
Q/ SQUS9n[        XE5        [        R                  " [        U5      4SSSS.SS.UD6n[        R                  " / S
Q/ SQUS9n[        XE5        g )Nz4A, B, C
0, 0., 0j
1, N/A, 1j
-9, 2.2, N/A
3, -99, 3jri  T)ru   rj  r-  r  r  r  r  r  ))r   r  y                )rj   rG  r  )r  g@            8)r@   y              @)rb  rd  )r   r   rj   rb  r  ru   r  r  r  r   rj   rr   )r  ra  )rb  rd  rc  rd  )r   r  r  )	rx   rw   r   rY   r  r$   r  rv   r   )r*   r  
basekwargsmdtyper  r  s         r,   test_user_missing_values$TestFromTxt.test_user_missing_valuesc  s!   I##E
*sElS'N;}}VD\ *% *(*(( < L!') 	T#$7}}VD\ b/1ce+DdbV`b(( < L!') 	T#}}VD\ */1%+H$(* )* (( < L!') 	T#r.   c                 &   [         R                  " SS/S[        4S[        4/S9nSnS[        SS	S
SS.SSSS.S.n[         R                  " [	        U5      40 UD6n[         R                  " SS/S Vs/ s H
  oU[        4PM     snS9n[        XA5        [         R                  " [	        U5      4SS0UD6n[         R                  " SS/S Vs/ s H
  oU[        4PM     snS9n[        XA5        Sn[         R                  " [	        U5      S[        SSS9n[         R                  " / SQ/ SQ/5      n[        XA5        [         R                  " [	        U5      S[        SSS9n[         R                  " / SQ/ SQ/5      n[        XA5        g s  snf s  snf )N)r   r@   )rs   rG  rn   r   rt   zN/A, 2, 3
4, ,???ri  za,b,cr  rA  z???)r   r   rr   r   rG  )rj  ru   r-  r  filling_values)r   rr   r@   )rs   r   rG  abcrV  r|  rr  z1,2,*,4
5,*,7,8
*)rj  ru   r  r  )rj   rr   r   rs   )r0  r   rW  rj  r   )rj   rr   r   rs   )r0  r   rW  rj  rY   rv   rx   r  r$   r   )r*   r  r  rd   r  r  data2s          r,   test_user_filling_values$TestFromTxt.test_user_filling_values  sd   xx+S#Jc
3KL#""&,1(F,-A$(?	A
 }}VD\4V4xxL1167A3x79T }}VD\E7EfExx+d3KdHd3KLT $}}VE]c,/Cxx|45T }}VE]c,/Dxx67T  8 4Ls   3F	
F
c           	          [        S5      n[        R                  " US SSSSS9n[        R                  " SS/SS	/S
[
        4S[        4/S9n[        X#5        [        UR                  UR                  5        g )NzA,B
0,1.5
2,-999.00ri  z-999.0T)ru   rj  r  r-  ra  )r   r  )rr   g      r  r  r  r  r  )	r$   rY   r  r  rv   rx   rw   r   rg  r  s       r,   test_withmissing_float"TestFromTxt.test_withmissing_float  sr    -.}}T+34O((Hh/!/ ?#&*sEl!;= 	T#TYY-r.   c                     [        S5      n[        R                  " US SSS9n[        R                  " / SQ/ SQ// SQ/ SQ/S9n[        X#5        g )	Nz1 2 3
4 5 6
2,5Tru   r  ra  r   rV  rd  )rg  )r$   rY   r  r  rv   r   r  s       r,   test_with_masked_column_uniform+TestFromTxt.test_with_masked_column_uniform  sG    &'}}T,14A((Iy1I8NOT#r.   c                     [        S5      n[        R                  " US SSS9n[        R                  " SS/SS/S[
        4S	[
        4S
[        4/S9n[        X#5        g )NzTrue 2 3
False 5 6
r  Tr  r   )r   r0  r1  rd  r  r  r  r  )r$   rY   r  r  rv   rf  rx   r   r  s       r,   test_with_masked_column_various+TestFromTxt.test_with_masked_column_various  sc    -.}}T,14A((Iy1!*I 6#',ttSk!JL 	T#r.   c                   ^^ S/S-  n[        S5       H  nSUSU-  '   M     UR                  SS5        [        SR                  U5      5      mS	S S
S.mUU4S jn[	        [
        U5      n[        [        U5      S5        [        U[        R                  " SS Vs/ s H
  oU[        4PM     snS95        TR                  S5        [        [        [        R                  TS	S
S9  g s  snf )N1, 1, 1, 1, 1r  r0  2, 2, 2, 2 2r   r   a, b, c, d, erB  ri  Trj  ru   r-  c                  6   > [         R                  " T4SS0T D6$ )Nr  FrY   r  rd   mdatas   r,   r   )TestFromTxt.test_invalid_raise.<locals>.f  s    ==FeFvFFr.   r  abcdert   rj  r-  )r   insertr$   r  r   r   r   r   rY   r   rx   rU   r   rL  r  )r*   r  r   r   mtestr  rd   r  s         @@r,   test_invalid_raiseTestFromTxt.test_invalid_raise  s     2%qA)DaL A'tyy'"TDA	G.2SZ$UBGGB.IA3x.IJK

1j"-- #4	1 /Js   C'c                   ^^ S/S-  n[        S5       H  nSUSU-  '   M     UR                  SS5        [        SR                  U5      5      mS	S S
SS.mUU4S jn[	        [
        U5      n[        [        U5      S5        [        U[        R                  " SS Vs/ s H
  oU[        4PM     snS95        TR                  S5        [        R                  " T4SS0TD6n[        [        U5      S5        [        R                  " SS Vs/ s H
  oU[        4PM     snS9nSU[        S5       Vs/ s H  nSU-  PM
     sn'   [        XF5        g s  snf s  snf s  snf )Nr  r  r0  r  r   r   r  rB  ri  TF)rj  ru   r-  r  c                  6   > [         R                  " T4SS0T D6$ )NrV  )r   rs   r  r  s   r,   r   6TestFromTxt.test_invalid_raise_with_usecols.<locals>.f  s    ==AA&AAr.   r  aert   rV  r&  abr  )r   r  r$   r  r   r   r   r   rY   r   rx   rU   r  )	r*   r  r   r   r  r  r  rd   r  s	          @@r,   test_invalid_raise_with_usecols+TestFromTxt.test_invalid_raise_with_usecols  s,    2%qA)DaL A'tyy'"TD',.	B.2SZ$UBGGB.FA3x.FGH

1e>V>v>SZ$''"t$<t!Xt$<=.4q*Aa*+U$ /G
 %=*s   EE
0Ec                     S/S-  n[        SR                  U5      5      nSS 0nSUS Vs/ s H
  oD[        4PM     snSS	.n[        [        [
        R                  U40 UD6  g s  snf )
Nz1, 1, 1, 1, -1.1r  rB  rs   c                 *    SU R                  5        S3$ )N()r  r  s    r,   r  5TestFromTxt.test_inconsistent_dtype.<locals>.<lambda>  s    Qqxxzl!#4r.   ri  r  rB   )rj  r  ru   r  )r$   r  rx   r   rL  rY   r  )r*   r  r  r  r  rd   s         r,   test_inconsistent_dtype#TestFromTxt.test_inconsistent_dtype  si    "#b(tyy'45
"*29:'QC':Qj"--A&A  ;s   A$c                     Sn[         R                  " [        U5      SS SS9n[         R                  " SS/S[        4S[        4S	[
        4/S
9n[        X#5        g )N0, 1, 2.3
4, 5, 6.7ri  f%02irj  ru   
defaultfmtr   rj   ffffff@)rs   r0  @f00f01f02rt   )rY   r  r$   rv   rx   rw   r   r*   r  r  r  s       r,   test_default_field_format%TestFromTxt.test_default_field_format  sW    %fTl'*$7Lxxk2 %s|eS\E5>JLU!r.   c                     Sn[         R                  " [        U5      S[        SS9n[         R                  " / SQ/ SQ/[        S9n[        X#5        g )Nr  ri  r  r  r  re  r  rh  rS  r  rt   rY   r  r$   rw   rv   r   r  s       r,   test_single_dtype_wo_names&TestFromTxt.test_single_dtype_wo_names  s@    %fTl'*%GMxx6eDU!r.   c                     Sn[         R                  " [        U5      S[        SS9n[         R                  " SS/S Vs/ s H
  o3[        4PM     snS9n[        X$5        g s  snf )	Nr  ri  rp  r  r  r  r  rt   r  r*   r  r  r  r  s        r,   "test_single_dtype_w_explicit_names.TestFromTxt.test_single_dtype_w_explicit_names  sY    %fTl'*%yJxx63895a5z59;U! :   A 
c                     Sn[         R                  " [        U5      S[        SS9n[         R                  " SS/S Vs/ s H
  o3[        4PM     snS9n[        X$5        g s  snf )	Nza, b, c
0, 1, 2.3
4, 5, 6.7ri  Tr  r  r  r  rt   r  r  s        r,   "test_single_dtype_w_implicit_names.TestFromTxt.test_single_dtype_w_implicit_names  sY    .fTl'*%tExx63895a5z59;U! :r  c                     Sn[         R                  " [        U5      S[        [        [        4SS9n[         R
                  " SS/S[        4S[        4S	[        4/S
9n[        X#5        g )Nr  ri  zf_%02ir  )r   re  r  )rs   rS  r  f_00f_01f_02rt   rY   r  r$   rx   rw   rv   r   r  s       r,   test_easy_structured_dtype&TestFromTxt.test_easy_structured_dtype  s^    %fTlc$'#68Mxx|4 &}vuoOQU!r.   c                    SnSS SS.n[         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        U5      40 UD6n[        US	   R                  [        L 5        S S S 5        [        R                  " S
/SS[        4S/S9n[        WU5        [         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        U5      4SS0UD6n[        US	   R                  [        L 5        S S S 5        [        R                  " S/SS[        4S/S9n[        XE5        g ! , (       d  f       N= f! , (       d  f       NJ= f)Nz01/01/2003  , 1.3,   abcderi  rB   )rj  ru   r  Tr   r   r7   r   )z01/01/2003  ?z   abcde)r  z|S12r  )r  r  rt   	autostrip)z
01/01/2003r  r  )r  rL  )r  z|S5)r   r   r   r   rY   r  r$   r   r  rv   rw   r   )r*   r  rd   r   r  r  s         r,   test_autostripTestFromTxt.test_autostrip  s0   +"TwG$$D1Q##Hb2KLMM&,9&9EAaDMM%>>? 2 xx:;-e}mLNUD!$$D1Q##Hb2KLMM&,I$I&IEAaDMM%>>? 2 xx56-e}mLNU! 21 21s   AE?AE 
E 
E.c           	         Sn[         R                  " [        U5      SSS S9nS[        4S[        4S[        4/n[         R
                  " SUS	9n[        X$5        [         R                  " [        U5      SSS S
S
S9nS[        4S[        4S[        4/n[         R
                  " SUS	9n[        X$5        [         R                  " [        U5      SSS S
S9nS[        4S[        4S[        4/n[         R
                  " SUS	9n[        X$5        g )NzA.A, B (B), C:C
1, 2, 3.14ri  Trj  r-  ru   AAB_BCC)rj   rr   gQ	@rt   r7   rj  r-  ru   replace_spacedeletecharsA.AB (B)C:Crj  r-  ru   r  B_(B)r  r*   r  r  
ctrl_dtyper  s        r,   test_replace_spaceTestFromTxt.test_replace_space0  s    +}}VC['*$dDSkE3<$?
xxJ7T }}VC['*$d+-2? clWcNUENC
xxJ7T }}VC['*$d)+- clWcNUENC
xxJ7T r.   c           	      0   Sn[         R                  " [        U5      SS[        S9nS[        4S[        4S[        4/n[         R                  " SUS	9n[        X$5        [         R                  " [        U5      SS[        S
S
S9nS[        4S[        4S[        4/n[         R                  " SUS	9n[        X$5        [         R                  " [        U5      SS[        S
S9nS[        4S[        4S[        4/n[         R                  " SUS	9n[        X$5        g )NzA.A, B (B), C:C
1, 2, 3ri  Tr  r  r  r  r   rt   r7   r  r  r   r  r  r  )rY   r  r$   rx   rv   r   r  s        r,   test_replace_space_known_dtype*TestFromTxt.test_replace_space_known_dtypeH  s    (}}VC['*$cCSkE3<$=
xx	4T }}VC['*$c+-2? clWcNUCLA
xx	4T }}VC['*$c)+- clWcNUCLA
xx	4T r.   c                 t   SnSSS.n[         R                  " SS/S Vs/ s H
  o3[        4PM     snS9n[         R                  " [	        U5      4S	S 0UD6n[        XT5        [         R                  " SS/S Vs/ s H
  o3[        4PM     snS9n[         R                  " [	        U5      40 UD6ng s  snf s  snf )
NzA,,C
0,1,2
3,4,5ri  Tr  r  rv  )r  r  r  rt   ru   )rY   rv   rx   r  r$   r   rw   )r*   r  rd   r  r  r  s         r,   test_incomplete_names!TestFromTxt.test_incomplete_names`  s    #"T2xxI.1AB1AA3x1ABD}}VD\@@@T xxI.3CD3Ca5z3CDF}}VD\4V4 C
 Es   B0
9B5
c                     Sn[         R                  " [        U5      [        [        [        4SS9n[         R
                  " SS/S[        4S[        4S[        4/S9n[        X#5        g )	Nz1 2 3
 4 5 6rn   r  r   rV  r  r  rt   r  )r*   r  r  r  s       r,   test_names_auto_completion&TestFromTxt.test_names_auto_completionn  s\    }}VD\$'#4CAxxI. #SzD%=4+FHT r.   c                    SnSn[         R                  " [        U5      [        [        [        4SSSS9n[	        UR
                  R                  U5        [         R                  " [        U5      [        [        [        4SSSS9n[	        UR
                  R                  U5        [         R                  " [        U5      [        SSSS9n[	        UR
                  R                  U5        g )Nz'A,B,C,D,E
0,1,2,3,4
0,1,2,3,4
0,1,2,3,4)r  r  Eri  )r   rr   rs   T)ru   rj  rV  r-  )rY   r  r$   rx   r   ru   r-  )r*   r  
ctrl_namesr  s       r,   test_names_with_usecols_bug1636+TestFromTxt.test_names_with_usecols_bug1636w  s    ;$
}}VD\$'c?c%.d< 	TZZ%%z2}}VD\$'c?c%4DB 	TZZ%%z2}}VD\#&#%4DB 	TZZ%%z2r.   c                 |   SnSSS S.n[         R                  " SS/S[        4S[        4S	[        4/S
9n[         R                  " [        U5      40 UD6n[        XC5        SSS S.n[         R                  " SS/S[        4S[        4S	[        4/S
9n[         R                  " [        U5      40 UD6n[        XC5        g )Nz-    A    B   C
    0    1 2.3
   45   67   9.)r0  r0  rs   Tr  r  )r  rY  rU  r  r  r  rt   r0  )rY   rv   rx   rw   r  r$   r   r*   r  rd   r  r  s        r,   test_fixed_width_names"TestFromTxt.test_fixed_width_names  s    @(4$Gxxl3 #SzC:U|DF}}VD\4V4T  4$?xxl3 #SzC:U|DF}}VD\4V4T r.   c                     SnSS SS.n[         R                  " / SQ/ SQ/ SQ/[        S9n[         R                  " [	        U5      40 UD6n[        XC5        g )	Ns   1, 2, 3
1, , 5
0, 6, 
ri  rG  )rj  ru   r  r   )rj   rG  r0  )r   r1  rG  rt   r  r  s        r,   test_filling_valuesTestFromTxt.test_filling_values  sI    +"TTJxxL,?sK}}VD\4V4T r.   c           	      d   [         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        S5      S S SSS9n[        US	   R                  [        L 5        S S S 5        [        WS
   S5        [         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        S5      S S SSS9n[        US	   R                  [        L 5        S S S 5        [        US
   S5        g ! , (       d  f       N= f! , (       d  f       N/= f)NTr   r   r7   ztest1,testNonetherestofthedatari  rB   ru   ru  rj  r  r   rj   s   testNonetherestofthedataztest1, testNonetherestofthedatas    testNonetherestofthedata)
r   r   r   r   rY   r  r$   r   r  r   )r*   r   r  s      r,   test_comments_is_none!TestFromTxt.test_comments_is_none  s    $$D1Q##Hb2KL==(H!I'+dc*13D AaDMM%>>? 2 	T!W9:$$D1Q##Hb2KL==(I!J'+dc*13D AaDMM%>>? 2 	T!W:; 21 21s   ADAD!
D!
D/c           	         SnSnSU-   S-   nX#-   U-   n[         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        U5      S S S	S
S9n[        US   R                  [        L 5        S S S 5        [        WS   S5        [        US   SU-   5        [        US   S5        [        R
                  " [        U5      S S S	SS9n[        US   S5        [        US   SUR                  S5      -   5        [        US   S5        [         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        SU-   5      S S S	S
S9n[        US   R                  [        L 5        S S S 5        [        US   S5        [        US   SU-   5        g ! , (       d  f       GN<= f! , (       d  f       NB= f)Ns      norm1,norm2,norm3
   test1,testNonethe   ,test3
Tr   r   r7   ri  rB   r  r   )rj   r      test1)rj   rj      testNonether      test3r?   r   testNonethetest3   0,testNonether  r  )r   r   r   r   rY   r  r$   r   r  r   rC   )r*   r?   normencr+   r   r  s          r,   test_latin1TestFromTxt.test_latin1  s    %"V+k9J$$D1Q##Hb2KL=='+dc*13D AaDMM%>>? 2 	T$Z*T$Z&!89T$Z*}}VAY#'$#&.0 	T$Z)T$Zx1H!HIT$Z)$$D1Q##Hb2KL==(86(A!B'+dc*13D AaDMM%>>? 2 	T$Z#T$Z&!89/ 21  21s   AF90AG9
G
Gc                     SnU R                  [        U5      S SS9n[        U[        R                  " UR                  S5      R                  5       5      5        g r  )r  r   r   rY   rv   rC   r  r  s      r,   test_binary_decode_autodtype(TestFromTxt.test_binary_decode_autodtype  sD    4MM'%.xMH1bhhu||H'='C'C'EFGr.   c           	         SnSnSU-   S-   nX#-   U-   n[         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        U5      S S S	S
S9n[        US   R                  [        L 5        S S S 5        [        R                  " / SQSSU-   S// SQ/5      n[        WU5        g ! , (       d  f       N>= f)Nr  r"  r#  r$  Tr   r   r7   ri  rB   r  r   )s   norm1s   norm2s   norm3r%  r&  r'  )r   r   r   r   rY   r  r$   r   r  rv   r   )r*   r  r+  r,  r+   r   r  ctls           r,   test_utf8_byte_encoding#TestFromTxt.test_utf8_byte_encoding  s    %"T)K7J$$D1Q##Hb2KL=='+dc*13D AaDMM%>>? 2 hh/NT18</1 2 	4% 21s   AB<<
C
c           	         Sn[        5        n[        US5       nUR                  SU-   S-   S-  5        S S S 5        [        R                  " US S SSS9n[        R
                  " S	S
UR                  S5      -   S/S	S
UR                  S5      -   S//[        R                  S9n[        XE5        [        US5       nUR                  SU-   5        S S S 5        [        R                  " US S SSS9n[        US   S5        [        US   S
UR                  S5      -   5        S S S 5        g ! , (       d  f       N= f! , (       d  f       Np= f! , (       d  f       g = f)Nr  r  r#  r$  rr   ri  r  r  r   r(  r)  rt   r*  r  r   r  )
r!   r   r0   rY   r  rv   rC   r  r   r   )r*   r  ra  r   r  r3  s         r,   test_utf8_fileTestFromTxt.test_utf8_file  s4   Z4dD!Q-4{BaGH "==TD+.BD((}t{{7/CCWM}t{{7/CCWMO 77$C t) dD!Q(4/0 "==TD+.BDdQ'd]T[[5I%IJ# Z!! "! Zs;   ED)BE;D:AE)
D7	3E:
E	E
Ec           
      @   SnSn [         R                  " 5       nUR                  U5        [        5        n[        US5       nUR                  S5        UR                  SU-   S-   5        UR                  SU-   S	-   5        S S S 5        [        R                  " S
S9 n[        R                  " SS[        5        [        R                  " US S SSS9n[!        US   R"                  [        L 5        S S S 5        [        R$                  " / SQSUS/SSU-   S//[        R&                  S9n[)        WU5        S S S 5        g ! [        [        4 a    [
        R                  " S5         GN=f = f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nr  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   r7   ri  rB   r  r   )norm1norm2norm3r:  r<  r   r(  r)  rt   )ra  rb  r  UnicodeErrorImportErrorr   rS  r!   r   r0   r   r   r   r   rY   r  r   r  rv   r  r   )	r*   r  r?   r  ra  r   r   r  r3  s	            r,   test_utf8_file_nodtype_unicode*TestFromTxt.test_utf8_file_nodtype_unicode  sq   	G224HKK!
 Z4dD!Q-.6)J67+d2Z?@ " ((5''"(AC}}T/2WF !)BBC 6 ((0vw/}t3W=? 77	$C
 tS)# Z	 k* 	GKK F G	G
 "! 65 ZsO   &E  FA E-FAE>2AF &E*)E*-
E;	7F>
F	F
F(ignore:.*recfromtxt.*:DeprecationWarningc                    [        S5      nSSSS.n[        U40 UD6n[        R                  " SS/S[        4S	[        4/S
9n[        [        U[        R                  5      5        [        X45        [        S5      n[        U4S SS.UD6n[        R                  " SS/SS/S[        4S	[        4/S9n[        X45        [        UR                  UR                  5        [        UR                  SS/5        g )NA,B
0,1
2,3ri  r  Tr  r&  r  r  r  rt   r  r  r  r  r  r  r   rr   )r$   r   rY   rv   rx   r   rA   recarrayr   r  rg  r  r  s        r,   test_recfromtxtTestFromTxt.test_recfromtxt	  s     o&"edK$)&)((FF+#&*sCj!9;
4-.T#'($CdDCFC((FG,!/ ?#&*sCj!9; 	T#TYY-TVVaV$r.   c                 `   [        S5      nSSSSS.n[        U4SS 0UD6n[        R                  " SS/S	[        4S
[        4/S9n[        [        U[        R                  5      5        [        X45        [        S5      n[        U4S SS.UD6n[        R                  " SS/SS/S	[        4S
[        4/S9n[        X45        [        UR                  UR                  5        [        UR                  SS/5        [        S5      n[        USS9n[        R                  " SS/S[        4S[        4/S9n[        [        U[        R                  5      5        [        X45        [        S5      nS[        4S[        4/n[        USUS9n[        R                  " SS/US9n[        [        U[        R                  5      5        [        X45        [        S5      n[        USS 0S9n[        R                  " SS/S[        S44/S9n[        UR                  UR                  5        [        X45        g )NrC  r  TrB   )r  r-  case_sensitiver  ru   r&  r  r  r  rt   r  r  r  r  r  r  r   rr   )r  rn   r   )r  ru   zcolor
"red"
"blue"c                 $    U R                  S5      $ )N")r  r  s    r,   r  -TestFromTxt.test_recfromcsv.<locals>.<lambda>X	  s    r.   )r  )red)bluecolorrs   )r$   r   rY   rv   rx   r   rA   rD  r   r  rg  r  rw   r  ru   )r*   r  rd   r  r  ru   s         r,   test_recfromcsvTestFromTxt.test_recfromcsv2	  s    o&$)DD")+$5d5f5((FF+#&*sCj!9;
4-.T#'($CdDCFC((FG,!/ ?#&*sCj!9; 	T#TYY-TVVaV$o&$u6((FF+#&*sCj!9;
4-.T#o&sc5\*$uEB((FF+!&(
4-.T# ,-$A/F+GH((Hi0'C89L8MNTZZ/T#r.   c                    Sn[        U5      n[        R                  " USS9n[        R                  " U5      n[        USS/SS/SS//5        [        US	S
/SS//5        [	        [
        [        R                  [        U5      SS9  Sn[        R                  " [        U5      SS9n[        R                  " SS/SS//5      n[        XV5        [	        [
        [        R                  [        U5      SSS9  [	        [
        [        R                  [        U5      SS9  [        5        nUR                  [        5        [        R                  " [        U5      SSS9n[        R                  " SS/SS/SS/SS//5      n[        XV5        [        R                  " [        U5      SSS9n[        R                  " SS/SS/SS/SS//5      n[        XV5        S S S 5        Sn[        U5      n[        R                  " USSSS9n[        R                  " / SQSS/S9n[        XV5        [        R                  " US UR                  S9n[        R                  " SS/SS/S9n[        XV5        g ! , (       d  f       N= f) Nz1 2
3 4
5 6
7 8
9 10
r@   )rC  rj   rr   rs   r0  r1  rW  rj  rX  r   r   z1 1
2 2
0 
3 3
4 4
5  
6  
7  
re  rf  )r  rC  F)rC  r  rg  rh  z"a b
#c d
1 1
2 2
#0 
3 3
4 4
5  5
T)r  rC  r-  ))re  re  )rf  rf  )rg  rg  )r   <f8)r8  rR  rt   )rC  ru   )rh  rh  )rS  rS  )r$   rY   r  r   r   rL  rv   r   r  r   ru   )r*   r  r  a1a2r  r  r#  s           r,   rD  TestFromTxt.test_max_rows]	  s    +Tl]]3+]]3R1a&1a&1a&12R1a&1b'*+ 	j"--J 9}}VD\A6((RHr2h/0T# 	j"--1 	" 	j"--J  CJJ()==ODhhR2r(RHr2hGHG'==ODhhR2r(RHr2hGHG' ! < Tl}}Sa!4H((?)<8:T# }}S4tzzB((J
3)<8:T#3 ! s   'B.I**
I8c                 n   [         R                  " S5      R                  S5      nSnU Hf  nSU-   S-   n[        5        n[	        US5       nUR                  U5        S S S 5        [         R                  " U5      nS S S 5        [        WU5        Mh     g ! , (       d  f       N== f! , (       d  f       N0= f)Nr1  r  r  r  r  r   )rY   r   r  r!   r   r0   r  r   )r*   r  r  r  r  rS   r   r  s           r,   test_gft_using_filename#TestFromTxt.test_gft_using_filename	  s     iil""6*&CS=7*Dt$_GGDM %mmD)  sC(  %_ s#   B&BB&
B#B&&
B4	c                    [         R                  " S5      R                  S5      nSnU H  nSU-   S-   n[        5       n[        R
                  " USS9 nUR                  [        U5      5        S S S 5        [        SS	9 n[        US5       nUR                  U5        S S S 5        [        [         R                  " U5      U5        S S S 5        M     g ! , (       d  f       Nk= f! , (       d  f       NL= f! , (       d  f       M  = f)
Nr1  r  r  r  r  r   fileobjr  z.gz2r   )rY   r   r  r   r  GzipFiler0   r   r!   r   r   r  )	r*   r  r  r  r  r+   r  rS   r   s	            r,   test_gft_from_gzipTestFromTxt.test_gft_from_gzip	  s    1%%f-&CS=7*D	Aqs3q& 4 (D$_GGDM %"2==#6? )(  43 %_ )(s0   C C6C%(C6
C"	%
C3/C66
D	c                     S n[         R                  " U" 5       5      n[        U[         R                  " S5      5        g )Nc               3   P   #    [        S5       H  n [        SU -  5      v   M     g 7fr+  )r   r   r,  s    r,   r6  3TestFromTxt.test_gft_using_generator.<locals>.count	  s"     2YdQh'' s   $&r   )rY   r  r   r   r.  s      r,   test_gft_using_generator$TestFromTxt.test_gft_using_generator	  s+    	( mmEG$3		".r.   c                    [        S5      n[        R                  " US S9n[        UR                  R
                  / SQ5        [        UR                  S   [        :H  5        [        UR                  S   [        R                  :H  5        [        UR                  S   [        R                  :H  5        [        US   S5        [        US   S5        [        US   S	5        g )
Nz%73786976294838206464 17179869184 1024rt   )r  r  r  r  r  r  g      Dl        i   )r$   rY   r  r   ru   r-  r   rw   r  int_r   r  s      r,   test_auto_dtype_largeint$TestFromTxt.test_auto_dtype_largeint	  s     =>}}T.TZZ%%'9:

4 E)*

4 BHH,-

4 BGG+,T
$9:T$Z-T$Z&r.   c                    [        S5      n[        R                  " USSS9u  p#n[        U[        R                  " / SQ5      5        [        U[        R                  " / SQ5      5        [        U[        R                  " / SQ5      5        g )Nz1,2,3
4,5,6
7,8,9
0.0,1.0,2.0ri  T)rj  r  )re  rh  rT  r  )rf  rS  r  re  )rg  r  rU  rf  )r$   rY   r|  r   rv   )r*   r  rn   r   r   s        r,   test_unpack_float_data"TestFromTxt.test_unpack_float_data	  s_    78**SC=a1bhh';<=1bhh';<=1bhh';<=r.   c                    [        S5      nSSS.n[        R                  " XSS9u  p4n[        UR                  [        R                  " S5      5        [        UR                  [        R                  " S5      5        [        UR                  [        R                  " S	5      5        [        U[        R                  " S
S/5      5        [        U[        R                  " SS/5      5        [        U[        R                  " SS/5      5        g )Nr  r  r*  r,  Tr  r+  r   r^  r  r  r  r  r  r  )r$   rY   r  r   ru   r   rv   r   s         r,   r!  "TestFromTxt.test_unpack_structured	  s     '(&3EF--d;aQWWbhhtn-QWWbhhtn-QWWbhhtn-1bhhd|451bhhBx011bhhc{34r.   c                 T   [        S5      n[        R                  " SS/5      [        R                  " SS/5      [        R                  " SS/5      4n[        R                  " US SS	S
9n[	        X#5       H0  u  pE[        XE5        [        UR                  UR                  5        M2     g )NzM 21 72.
F 35 58.r0  r4  r  r  r  r  Tzutf-8)ru   r  r  )r$   rY   rv   r  r-  r   r   ru   )r*   r  expectedr  r[   results         r,   test_unpack_auto_dtype"TestFromTxt.test_unpack_auto_dtype	  s     )*HHc3Z("((B8*<bhhSz>RS}}STGLx.KCs+FLL1 /r.   c                     [        S5      nSSS.n[        R                  " SS/[        R                  S9n[        R                  " XSS	9n[        X45        [        UR                  UR                  5        g )
Nz21
35r   r   r,  r  r  rt   Tr  )r$   rY   rv   r7  r  r   r   ru   r*   r  r   rn  r  s        r,   test_unpack_single_name#TestFromTxt.test_unpack_single_name	  sZ     X'288RHBHH5}}S488*X^^TZZ0r.   c                    [        S5      nSSS.n[        R                  " S[        R                  S9n[        R                  " XSS9n[        X45        [        S	UR                  5        [        UR                  UR                  5        g )
NrD  r   rs  r,  rt  rt   Tr  r6   )	r$   rY   rv   r7  r  r   r   rl   ru   rt  s        r,   test_squeeze_scalarTestFromTxt.test_squeeze_scalar	  sc     Sk'288D1}}S488*R$X^^TZZ0r.   ndimr  c                     Sn[         R                  " [        U5      US9n[         R                  " [        U5      US9n[	        X45        g )N42r$  )rY   r|  r   r  r   )r*   rz  r  rn   r   s        r,   r'  TestFromTxt.test_ndmin_keyword
  s9     JJx}D1MM(3-t41 r.   r6   N)ar8   r9   r:   r;   r^  rY   r  r  r   r{   r   r  rq  r  r  r  r  r  r  r  r  r  r  r  r  rY  r  r  r  r  r  r!  r(  r   r   r   r;  r  rH  rM  rP  rV  rZ  rN  rj  r  rs  rv  ry  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r	  r  r  r  r  r  r  r-  r0  r4  r7  r?  rE  rO  rD  rW  r]  rb  rf  ri  r!  rp  ru  rx  r<  rx   r'  r=   r6   r.   r,   r  r  Y  sA   BMM*H$
*
*
$$	!F08. $$
$!>$;
$$$	$	$
%B$
$ [[ JK$ L$ F6'$
$$$$(+*!1/
	!
-$!.$$@!8.$$1(%0B""""""&!0!05!3&!!<":<H
&"K*!*F [[ JK% L%& [[ JK($ L($T4$l)@ /'2>521
1 [[VY/!s ! 0!r.   r  c                      \ rS rSrS rS rS r\R                  R                  \
SS9\R                  R                  S\\/5      S 5       5       r\R                  R                  S\\/5      S	 5       r\R                  R                  S\\/5      S
 5       r\R                  R                  S\\/5      S 5       r\R                  R                  S\\/5      \R                  R%                  S5      S 5       5       r\R                  R                  S\\/5      \R                  R%                  S5      S 5       5       rSrg)TestPathUsagei
  c                    [        SS9 n[        U5      n[        R                  " SS/SS//5      n[        R                  " X5        [        R
                  " U5      n[        X25        S S S 5        g ! , (       d  f       g = f)N.txtr   g?rr   r@   rs   )r!   r	   rY   rv   rE  r|  r   )r*   ra  rn   r   s       r,   test_loadtxtTestPathUsage.test_loadtxt
  s^    V$:D3(QF+,AJJt

4 Aq$ %$$s   AA22
B c                    [        SS9 n[        U5      n[        R                  " SS/SS//[        5      n[        R
                  " X5        [        R                  " U5      n[        X25        S S S 5        g ! , (       d  f       g = f)Nr_  r   rj   rr   r@   rs   )r!   r	   rY   rv   rx   r   rZ   r   r*   ra  rn   r  s       r,   test_save_loadTestPathUsage.test_save_load
  s_    V$:D1a&1a&)3/AGGD774=Dt' %$$s   A$A77
Bc                 N   [        SS9 n[        U5      n[        R                  " SS/SS//[        5      n[        R
                  " X5        [        R                  " USS9n[        X25        A[        (       a  [        5         [        5         S S S 5        g ! , (       d  f       g = f)	Nr_  r   rj   rr   r@   rs   r   r   )
r!   r	   rY   rv   rx   r   rZ   r   r   r   r  s       r,   test_save_load_memmap#TestPathUsage.test_save_load_memmap&
  st    V$:D1a&1a&)3/AGGD7743/Dt'w %$$s   BB
B$zmemmap doesn't work correctlyr   rz  c                    [        SS9 nU" U5      n[        R                  " SS/SS//[        5      n[        R                  " X#5        [        R
                  " USS9nS	US
   S
'   S	US
   S
'   A[        (       a  [        5         [        5         [        R
                  " U5      n[        XS5        S S S 5        g ! , (       d  f       g = f)Nr_  r   rj   rr   r@   rs   zr+r  r0  r   )	r!   rY   rv   rx   r   rZ   r   r   r   )r*   rz  ra  rn   r   r  s         r,   test_save_load_memmap_readwrite-TestPathUsage.test_save_load_memmap_readwrite4
  s     V$ &D1a&1a&)3/AGGD-AAaDGAaDGw774=Dt' %$$s   B&B99
Cc                    [        SS9 nU" U5      n[        R                  " USS9  [        R                  " U5       n[	        US   S5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = fNr   r   r*  r+  r,  )r!   rY   r   rZ   r   r*   rz  ra  r  s       r,   test_savez_loadTestPathUsage.test_savez_loadE
  s]    V$ &DHHT~.$"4;?  %$  %$s"   4A0AA0
A-	)A00
A>c                     [        SS9 nU" U5      n[        R                  " USS9  [        R                  " U5      n[	        US   S5        UR                  5         S S S 5        g ! , (       d  f       g = fr  )r!   rY   savez_compressedrZ   r   rX   r  s       r,   test_savez_compressed_load(TestPathUsage.test_savez_compressed_loadM
  sV    V$ &D.9774=DtE{N;JJL %$$s   AA&&
A4c                     [        SS9 nU" U5      n[        R                  " SS/5      n[        R                  " X#5        [        R                  " U5      n[        X45        S S S 5        g ! , (       d  f       g = f)Nr  r   r   r   )r!   rY   rv   rE  r  r   )r*   rz  ra  rn   r  s        r,   test_genfromtxtTestPathUsage.test_genfromtxtV
  sW    V$ &D&&)*AJJt==&Dq' %$$s   AA++
A9rA  c                    [        SS9 nU" U5      n[        US5       nUR                  S5        S S S 5        SSSS.n[        U40 UD6n[        R
                  " S	S
/S[        4S[        4/S9n[        [        U[        R                  5      5        [        XV5        S S S 5        g ! , (       d  f       N|= f! , (       d  f       g = f)Nr  r   r   rC  ri  r  Tr  r&  r  r  r  rt   )r!   r   r0   r   rY   rv   rx   r   rA   rD  r   r*   rz  ra  r   rd   r  r  s          r,   rE  TestPathUsage.test_recfromtxt_
  s     V$ &DdCA( ! $'%$OFd-f-Dhh/'*Cj3*%=?GJtR[[12' %$  %$s"   B8B'A-B8'
B5	1B88
Cr*  c                    [        SS9 nU" U5      n[        US5       nUR                  S5        S S S 5        SSSS.n[        U4SS 0UD6n[        R
                  " S	S
/S[        4S[        4/S9n[        [        U[        R                  5      5        [        XV5        S S S 5        g ! , (       d  f       N~= f! , (       d  f       g = f)Nr  r   r   rC  r  T)r  r-  rH  ru   r&  r  r  r  rt   )r!   r   r0   r   rY   rv   rx   r   rA   rD  r   r  s          r,   rO  TestPathUsage.test_recfromcsvn
  s     V$ &DdCA( ! #($$F d9$9&9Dhh/'*Cj3*%=?GJtR[[12' %$  %$s"   B:B)A/B:)
B7	3B::
Cr6   N)r8   r9   r:   r;   r  r  r  r   r   r  r   r<  r	   r  r  r  r  r  r   rE  rO  r=   r6   r.   r,   r  r  
  sY   %( [[w'FG[[_tSk:( ; H( [[_tSk:@ ;@ [[_tSk: ; [[_tSk:( ;( [[_tSk:[[ JK( L ;( [[_tSk:[[ JK( L ;(r.   r  c                  X   [         R                  R                  S5      n [        5       n[        R                  " USS9n[         R
                  " X 5        UR                  5         UR                  S5        [        R                  " USS9n[        [         R                  " U5      U 5        g )Nr0  r0  r   rZ  r   r   )
rY   r   r   r  r\  r   rX   rU   r   rZ   rn   r+   r   s      r,   test_gzip_loadr  
  sn    
		 A	Aac*AGGAMGGIFF1Iac*Arwwqz1%r.   c                   &    \ rS rSrS rS rS rSrg)
JustWriteri
  c                     Xl         g r'   baser*   r  s     r,   r(   JustWriter.__init__
      	r.   c                 8    U R                   R                  U5      $ r'   )r  r0   r)   s     r,   r0   JustWriter.write
  s    yyq!!r.   c                 6    U R                   R                  5       $ r'   )r  rT   r  s    r,   rT   JustWriter.flush
  s    yy  r.   r  N)r8   r9   r:   r;   r(   r0   rT   r=   r6   r.   r,   r  r  
  s    "!r.   r  c                   *    \ rS rSrS rS rSS jrSrg)
JustReaderi
  c                     Xl         g r'   r  r  s     r,   r(   JustReader.__init__
  r  r.   c                 8    U R                   R                  U5      $ r'   )r  rv  )r*   r   s     r,   rv  JustReader.read
  s    yy~~a  r.   c                 8    U R                   R                  X5      $ r'   )r  rU   )r*   offwhences      r,   rU   JustReader.seek
  s    yy~~c**r.   r  Nr  )r8   r9   r:   r;   r(   rv  rU   r=   r6   r.   r,   r  r  
  s    !+r.   r  c                  0   [         R                  R                  S5      n [        5       n[        U5      n[         R                  " X 5        UR                  5         UR                  S5        [        U5      n[        [         R                  " U5      U 5        g )Nr  r   )
rY   r   r   r  r   rT   rU   r  r   rZ   r  s      r,   test_ducktypingr  
  s`    
		 A	A1AGGAMGGIFF1I1Arwwqz1%r.   c                     [        5       n [        R                  " U SS9nUR                  S5        UR	                  5         U R                  S5        [        SS9 n[        US5       nUR                  U R                  5       5        S S S 5        [        R                  " U5      nS S S 5        U R	                  5         [        W/ SQ5        g ! , (       d  f       NK= f! , (       d  f       N>= f)	Nr   rZ     1 2 3
r   r  r   r  r   )r   r  r\  r0   rX   rU   r!   r   rv  rY   r|  r   )r+   r  rS   r   r  s        r,   test_gzip_loadtxtr  
  s     		Aac*AGGJGGIFF1I		4$GGAFFH jj 
  GGIsI&  
 	s$   C( CC
C	C
C,c                     [        5       n [        R                  " U SS9nUR                  S5        UR	                  5         U R                  S5        [        R                  " U SS9n[        [        R                  " U5      / SQ5        g )Nr   rZ  r  r   r   r   )	r   r  r\  r0   rX   rU   r   rY   r|  )r+   r   s     r,   test_gzip_loadtxt_from_stringr  
  s[    	Aac*AGGJGGIFF1Iac*Arzz!}i0r.   c                  l   [        5       n [        R                  " S5      n[        R                  " S5      n[        R                  " XUS9  U R	                  S5        [        R
                  " U 5      n[        SU;   5        [        SU;   5        [        SUR                  5       ;   5        [        SUR                  5       ;   5        UR                  5        H)  u  pE[        US;   5        [        UR                  S5        M+     UR                  5        H  n[        UR                  S5        M     [        [        UR                  5       5      S:H  5        U H  n[        US;   5        M     [        SUR                  5       ;   5        UR                  S5      US   :H  R                  5       (       d   eg )N)r@   r@   )r   r   r   r   r   rr   )r   rY   r  r   rU   rZ   r   keysitemsr   rl   valuesr   rR   all)r+   r   r   r]  r   rn   s         r,   test_npzfile_dictr  
  s<   	A
A
AHHQqFF1I

AC1HC1HC1668OC1668O	Z QWWf%  XXZQWWf%  C	Na Z   C1668OEE#J!C& %%''''r.   zPython lacks refcountsr   c            	         [        5       n [        R                  " U / SQ5        U R                  S5        [	        5          [        R
                  " U 5        S S S 5        U R                  S5        SS/n[	        5          [        R                  " [        S5      US9n[        U[        R                  " S/US95        S S S 5        g ! , (       d  f       Nu= f! , (       d  f       g = f)Nr   r   )rn   u1rr   )r   r  rr   z0 1 2 3rt   )r&  r  )
r   rY   r   rU   r   rZ   r|  r$   r   rv   )r   r   r   s      r,   test_load_refcountr  
  s    
 		AHHQ	FF1I		

 
 FF1I
.	)B		JJvi(3Q"2!32>? 
	 
	
 
	s   C=?C
C
C$c                     [        5       n [        R                  " U S5        [        R                  " U S5        U R                  S5        [        R                  " U 5      nUS:X  d   e[        R                  " U 5      nUS:X  d   e[
        R                  " [        5         [        R                  " U 5        S S S 5        g ! , (       d  f       g = f)Nrj   rr   r   )r   rY   r   rU   rZ   r   r   EOFError)r   out1out2s      r,   #test_load_multiple_arrays_until_eofr    s    	AGGAqMGGAqMFF1I771:D199771:D199	x	 

 
!	 	 s    C  
Cc                     [         R                  " SS/[        S9n [        SS9 n[         R                  " X5        S S S 5        [        SS9 n[
        R                  " [        SS9   [         R                  " XSS	9  S S S 5        S S S 5        [        SS9 n[         R                  " X5        S S S 5        [        SS9 n[
        R                  " [        SS9   [         R                  " XSS	9  S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N[= f! , (       d  f       g = f)
Nrj   hellort   r   r   z$Object arrays cannot be saved when.*r   F)rM   )	rY   rv   r~   r!   r   r   r   rL  r  )	obj_arrayr   s     r,   test_savez_nopickler    s    !WV4I		 C
  
! 
	 C]]:-STHHS%8 U 
! 
	 C
C+ 
! 
	 C]]:-STUC U 
!	  
!	  UT 
!	  
!	  UT 
!	 s_   C?D!'D=D!D2>EE.E?
D
D	D!!
D/2
E 
E	E
E"r'   )Zr!  r  ra  r`   r  rV   r  rD   r   r   ctypesr   r   ior   r   multiprocessingr   r   pathlibr	   tempfiler
   r   numpyrY   numpy.mar  numpy._utilsr   numpy.exceptionsr   	numpy.libr   numpy.lib._iotoolsr   r   numpy.lib._npyio_implr   r   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  r  r>  r  r  rE   rH   r   r   r>  r  r  rd  r  r  r  r  r  r  r  r  r  r   r   r  r  r  r6   r.   r,   <module>r     s   	   	 	 
         .  '      6 ! @ 8 +    " 9>W >& ;;GH
0h% h%VI= IkM k\^ ^@	E% E%Pn.+ n.`?6 ?6Jw!+ w!t%j( j(Z& ! !+ +&'*1(> $-EF@ G@$
DWV  G
  Hs$   
F	 F 	FFF"!F"