
    Kh߭                    B   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  S SKrS SKJrJr  S SKJ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!  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,J-r-J.r.J/r/J0r0J1r1J2r2J3r3J4r4J5r5J6r6  S SK7J8r8  S SK9J:r:   " S S\5      r;\ Rx                  S:  r= S SK>r>Sr? S SKArASrBS6S jrC " S S5      rD " S S\D5      rE " S S\D5      rF " S S5      rG " S S5      rH " S  S!\H5      rI " S" S#5      rJ " S$ S%\H5      rK " S& S'5      rLS( rM " S) S*5      rN " S+ S,5      rOS- rPS. rQS/ rRS0 rS\R                  R                  \1(       + S1S29S3 5       rVS4 rWS5 rXg! \@ a    Sr? Nf = f! \@ a    SrB Nf = f)7    N)Path)NamedTemporaryFile)BytesIOStringIO)datetime)Valueget_context)c_bool)VisibleDeprecationWarning)ConverterErrorConversionWarning)_npyio_impl)
recfromcsv
recfromtxt)assert_equal)assert_warnsassert_assert_raises_regexassert_raisesassert_allcloseassert_array_equaltemppathtempdirIS_PYPYHAS_REFCOUNTsuppress_warningsassert_no_gc_cyclesassert_no_warningsbreak_cyclesIS_WASM)requires_memory)asbytesc                   .    \ rS rSrSrSS jrS rS rSrg)	TextIO#   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     I/var/www/html/env/lib/python3.13/site-packages/numpy/lib/tests/test_io.pyr(   TextIO.__init__,   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.writelines2   s(    4e!<e'!*e!<=!<s   2
 N) )	__name__
__module____qualname____firstlineno____doc__r(   r0   r3   __static_attributes__r6   r.   r,   r$   r$   #   s    +(>r.   r$   l        TFc                     [        U 5      [        :X  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   )typebytesdecoder   timestrptime)r+   fmts     r,   rE   rE   C   s9     Aw%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)RoundtripTestN   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platform
isinstance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.roundtripO   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      )rh   rZ   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 )
Nrk      r@      y      ?      @y       @      @y      @      @y      @       @dtype)rZ   arrayfloatrp   intcsinglecdoublern   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 )Nrk   rs   r@   rt   )rZ   rw   objectrp   rn   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rk   rs   r@   rt   )rZ   rw   ry   rh   rn   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 )	Nrk   g      @rt   g333333@T	mmap_moder)rN   rL   )rZ   rw   rh   rl   rn   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rk   rs   r@   rt   xi4yr   ru   )rZ   rw   rp   rn   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  ru   Trecordalwaysr7   )	rangerx   rZ   oneswarningscatch_warningsfilterwarningsUserWarningrp   )r*   idtro   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;   rh   rp   r|   r   r   pytestmarkskipifrV   rW   r   r   slowr   r=   r6   r.   r,   rH   rH   N   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   rh   rZ   saver   r\   rQ   rv   flagsfnc)r*   rd   re   s      r,   rh   TestSaveLoad.roundtrip   s    bgg???TXXa[$"3"34TXXa[&&(9(9(?(?@TXXa[&&**D,=,=,C,C,G,GHr.   r6   N)r8   r9   r:   r;   rh   r=   r6   r.   r,   r   r      s    Ir.   r   c                      \ 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   rh   rZ   savez	enumerater\   rQ   r   rv   r   r   fidrY   ra   rb   rS   )r*   rd   re   nr\   reloadeds         r,   rh   TestSavezLoad.roundtrip   s   bhh@@@
	6#DHH-,,X\:S+SYY7SYY]]HNN,>,>?	 .   $$!!%%++-		$++//445 %t  $$!!%%++-		$++//445 %s   BD/ /A6F%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         AS S S 5        g ! , (       d  f       g = f)Nl     ru   numpy_test_big_arrays_.npz)prefixsuffixro   ro   )rZ   emptyuint8r   r   r[   rY   )r*   Lro   tmpnpfiles        r,   test_big_arraysTestSavezLoad.test_big_arrays   sh     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 )	Nrk   rs   r@   rt         ?       @       @      @      @            @      (@)rZ   rw   rx   complexrh   )r*   ro   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 Nrk   rs   r@   rt   r   r   r   r   )file_afile_br   r   r   )	rZ   rw   rx   r   r   r   rU   r[   r   r*   ro   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rk   rs   r@   r   r   z(1, 2)matchr   )	rZ   rw   r   r   rU   r[   r   raisesKeyError)r*   ro   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   )rZ   rw   rx   r   r   r   rU   r[   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   rZ   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@   targetrd   )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   openrZ   r   rU   r   closedr[   )r*   r   fps      r,   test_not_closing_opened_fid)TestSavezLoad.test_not_closing_opened_fid  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-  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  rk   i  r  z#Failed to load data from a file: %s)r   rZ   r   r   filterResourceWarningr   r[   	Exceptionr   r   gccollect)r*   r   supr   emsgs         r,   test_closing_fidTestSavezLoad.test_closing_fid*  s     V$HHS}- #$

?+q$A)V,
 #7JJL # ( % %$ % 2CaG,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   rZ   r   r[   zipr  rY   r   r
  )r*   r   r   r  r  s        r,   test_closing_zipfile_after_load-TestSavezLoad.test_closing_zipfile_after_loadD  s^    
 :VF3sHHSn-773<DBJJLBII 433s   A'A==
Bzcount, expected_repr))rk   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)Nrk   rs   r@   rt   r   r   )fname)	rZ   rw   rx   r   r   r[   reprformatrY   )r*   countexpected_reprro   r   r   s         r,   test_repr_lists_keys"TestSavezLoad.test_repr_lists_keysQ  s     HHq!fq!f%u-V$HHS%A3u9%A7m222====GGI	 %$$s   A B
B"r6   N)r8   r9   r:   r;   rh   r   r   r   r   IS_64BITr   r   r   r   r   r   r    r  r  	slow_pypyr  r  parametrizer)  r=   r6   r.   r,   r   r      s    6 [[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)TestSaveTxtia  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 )Nrk   rs   r@   rt   z%.18erF   r    
r   r   r      1 2
   3 4
)
rZ   rw   rx   r   savetxtrU   r   	readlinesr"   ry   )r*   ro   rF   r   s       r,   r|   TestSaveTxt.test_arrayb  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   r1  r   )s   1
s   2
s   3
s   4
)rZ   rw   ry   r   r6  rU   r7  r   r*   ro   r   r4   s       r,   r   TestSaveTxt.test_1Dr  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 )Nrk   rs   )r   r   
ValueErrorrZ   r6  rw   r*   r   s     r,   
test_0D_3DTestSaveTxt.test_0D_3Dz  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   ru   r   r1  r   r4  r5  rZ   rw   r   r6  rU   r   r7  r*   ro   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   rt   r!  r"  ))foor   )barr   )bazr   ru   rH  rJ  r   r1  r   s   1 3
s   4 6
rB  rC  s      r,   test_structured_padded"TestSaveTxt.test_structured_padded  s\    HHi	* 3
  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)Nrk   )r   r   )zf4ru   r   rN  .npyr   )rZ   r   r   r   r   r[   r   )r*   ro   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
rB  rC  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.1fr1  r   s   01 2.0
s   03 4.0
z%02d : %3.1fs	   01 : 2.0
s	   03 : 4.0
rZ  )rF   r[  c   )	rZ   rw   r   r6  rU   r   r7  r   r=  r:  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   ru   zTest header / footerz%1d)rF   headerr   z# z	
1 2
3 4
)rF   footerz
1 2
3 4
# r3  z% )rF   rc  commentsz1 2
3 4
)rF   rd  re  )	r   rZ   rw   ry   r6  rU   r   readr"   )r*   r   ro   test_header_footer
commentstrs        r,   rg  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   rZ   rw   r6  loadtxtr   )r*   rj  rS   ro   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 )Nrs   ru                 ?z %+.3er1  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)

rZ   zeros
complex128pir  r   r6  rU   r7  r   r*   ncolsnrowsro   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 )Nrs   ru   rp  z%.3er1  r   s0    (3.142e+00-2.718e+00j)  (3.142e+00-2.718e+00j)
rq  ru  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>.CustomWriteri  c                 D    U R                  UR                  S5      5        g )N   
)extendsplit)r*   texts     r,   r0   :TestSaveTxt.test_custom_writer.<locals>.CustomWriter.write  s    DJJu-.r.   r6   N)r8   r9   r:   r;   r0   r=   r6   r.   r,   CustomWriterr    s    /r.   r  r   r   )listrZ   rw   r6  rl  r   )r*   r  wro   r   s        r,   test_custom_writerTestSaveTxt.test_custom_writer  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-8ru   test.csv%srF   encoding)	rC   rZ   rw   str_r   r6  ra   rR  r   )r*   utf8ro   tmpdirs       r,   test_unicodeTestSaveTxt.test_unicode(  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  ru   r7   .gz.bz2.xz.lzmar  r  z	UTF-16-LEr  r  rv   )rC   rZ   rw   r  HAS_BZ2r   HAS_LZMAr  r   r6  ra   rR  r   rl  r   )r*   r  ro   suffixesr  r   r   s          r,   test_unicode_roundtrip"TestSaveTxt.test_unicode_roundtrip0  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  ru   r  r  r   r3  )	rC   rZ   rw   r  r   r6  rU   r   rf  r*   r  ro   r+   s       r,   test_unicode_bytestream#TestSaveTxt.test_unicode_bytestreamA  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   rZ   rw   r  r   r6  rU   r   rf  r  s       r,   test_unicode_stringstream%TestSaveTxt.test_unicode_stringstreamI  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 )NrV  %fr1  r   z%f
s   %f
)rZ   rw   r6  rU   r   r   rf  )r*   r  ro   r+   s       r,   test_unicode_and_bytes_fmt&TestSaveTxt.test_unicode_and_bytes_fmtQ  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   rt   ru   ztest.npz)	test_dataT)valuerZ   asarrayr   r   randrandintr   r   r   ra   rR  r   MemoryError)memoryerror_raisedr   r  r  s       r,   check_large_zip3TestSaveTxt.test_large_zip.<locals>.check_large_zipa  s    ',$ JJ16v(@1>A )+		(*		(9(9"S(A!)E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_zip]  s    	" #6]
 &!KK5JKK			##LMM::LL^_zzQr.   r6   N)$r8   r9   r:   r;   r|   r   r?  rD  rK  rS  r\  r`  rg  r   r   r-  r   strrm  rz  r}  r  r  r  r  r  r   r   r  r   rV   rW   r   r!   r  r=   r6   r.   r,   r/  r/  a  s    : >I
::(:<4 UD [[_tSk:% ;%$BLD$
!))"<, [[X'':;	1 <	1 [[g-6NO[[$  %  P 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)Nr"  rs   r@   r3  z
0 1 23 4 5r   wtz	UTF-32-LE)moder  r  rt)rZ   arange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  )        rV  rW  )r   r	  r0   encoder  r   )r*   rR  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  rZ   r  r   )r*   nonasciirR  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  rv   r  )r  r   rZ   r  r   rw   rC   r  r*   utf16rQ  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.   )rv   r  
convertersr  )	r$   r0   rU   r  rZ   r  rw   rC   r   r*   r   r   ro   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.   rv   r  r  r   )	rC   r   r	  r0   r  rZ   r  rw   r   )r*   r  rR  r   r   ro   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 Nrk   )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   ru   r   r   r   r   zM 64 75.0
F 25 60.0genderageweightS1r   rO  namesformatsM      P@     R@F      9@      N@)r$   r0   rU   rZ   rl  int32rw   r   )r*   r   r   ro   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   ru   rk   rs   r@   rt   )	r$   r0   rU   rZ   rl  ry   rw   r   rx   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   ru   r   1,2,3,4
rZ  rv   r[  r$   r0   rU   rZ   rl  ry   rw   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   rZ  r@   c                 *    [        U =(       d    S5      $ Nry   r+   s    r,   r   *TestLoadTxt.test_missing.<locals>.<lambda>	      AJr.   rv   r[  r  rk   rs   r@   r:  r!  r4  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   rZ  r@   c                 *    [        U =(       d    S5      $ r9  r;  r<  s    r,   r   :TestLoadTxt.test_converters_with_usecols.<locals>.<lambda>  r>  r.   rk   r@   rv   r[  r  usecolsrs   r:     	   r4  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   rZ  #rv   r[  re  rk   rs   r@   r!  r4  r  s       r,   test_comments_unicode!TestLoadTxt.test_comments_unicode  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 )NrO  r   rZ     #rQ  rR  r4  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   rZ  )rP  @z//rQ  r   rG  r4  r  s       r,   test_comments_multiple"TestLoadTxt.test_comments_multiple)  sU    H	AB	q	JJqs 02HHi+S11 r.   )rJ  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   rZ  z/*rQ  rR  z*/ comment
1,2,3,5
)
r$   r0   rU   rZ   rl  ry   rw   r   r   r=  r  s       r,   test_comments_multi_chars%TestLoadTxt.test_comments_multi_chars2  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   rZ  rk   )rv   r[  skiprowsrR  rO  r4  r  s       r,   test_skiprowsTestLoadTxt.test_skiprowsD  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                  -  [         R                  X,S9  [+        [,        S[/        U5      R0                  -  [         R                  USUS/S9  g )Nrk   rs   r@   rt   r   rk   rv   rI  r   r@   rt   r!  r   c                       \ rS rSrS rSrg)*TestLoadTxt.test_usecols.<locals>.CrazyIntis  c                     gr  r6   r  s    r,   	__index__4TestLoadTxt.test_usecols.<locals>.CrazyInt.__index__t  s    r.   r6   N)r8   r9   r:   r;   rm  r=   r6   r.   r,   CrazyIntrk  s  s    r.   ro  z<JOE 70.1 25.3
                BOB 60.5 27.9
                stidtempS4f8r   rs   rI  rv      JOE   BOBL9@fffff;@      ?z^usecols must be.*%srI  )rZ   rw   rx   r   r6  rU   rl  r   ry   int8int16r*  int64r   uint16uint32uint64r$   r  r  r   r   	TypeErrorrA   r8   )r*   ro   r   r   int_typeto_readro  	crazy_intr  r   dtypesr\   	bogus_idxs                r,   test_usecolsTestLoadTxt.test_usecolsU  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		"T)_%=%==JJ	 	"T)_%=%==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            rZ  )rI  r[  l            zQIf a structured dtype .*. But 1 usecols were given and the number of fields is 3.r   z1,1
zi,2ir   )rv   rI  r[  )r   r   OverflowErrorrZ   rl  r=  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+   rZ  r3  rk   )rs   rX  rt   )r!        @)
r$   r0   rU   rZ   rv   ry   rx   rl  rw   r   r*   r   r   r   ro   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   rr  r   r   blockr  ru   aaaarV         @r   rG  r$   rZ   rv   rx   ry   rl  rw   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  )rs   rs   r@   ru   r  rV  r  r   rG  )rJ  r]  rK  )
         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str2ru   )r  rZ   bytes_rw   rl  r   )r*   r   r   ro   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   ru   )r   warnsr   r$   rZ   rl  r   rm   r~  r   rv   )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   rg  c                     [        U S5      $ N   r;  r<  s    r,   r   3TestLoadTxt.test_unused_converter.<locals>.<lambda>  
    3q":r.   rI  r     *   rk   c                     [        U S5      $ r  r;  r<  s    r,   r   r    r  r.   !   B   )r$   r3   rU   rZ   rl  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   stripr<  s    r,   r   4TestLoadTxt.test_dtype_with_object.<locals>.<lambda>      !'')Z8r.   rk   ;r[  rv   r    rs        ru   )ry   r   rZ   rl  r$   rw   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   ru   )r$   r0   rU   rZ   rl  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   ru   )r$   r0   rU   rZ   rl  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 HE  nUR                  S5        [         R                  " X4[
        R                  SS9n[        XQSU-  S	9  MG     g )
Nir  r!  r3  r   r?   r	  r  )err_msg)rZ   logspaceastypefloat32hstackrx   r   maphexr$   r0   rU   rl  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4"95	 &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   r=  rZ   rl  r>  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  r>  s     r,   &test_default_float_converter_exception2TestLoadTxt.test_default_float_converter_exception  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 )Nrk   r  r   ru   )r   r$   r0   rU   rZ   rl  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rs   rs   ru   rp  z%.16er1  r   s   e+00-s   e00+-)rZ   rr  rs  rt  r  r   r6  rU   rf  replacer   r0   rl  r   r   )r*   ro   rx  ry  r   txttxt_badr  s           r,   test_complex_misformatted%TestLoadTxt.test_complex_misformatted,  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rk   r  r@   r  )r   r	  r0   rZ   rl  r   )r*   rS   r   r  s       r,   test_universal_newline"TestLoadTxt.test_universal_newline@  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   rN  comment)<i4r  <f4|S8r  	r3  )s   start s     r.   r  )r$   r0   rU   rZ   rl  rw   r   r  s        r,   test_empty_field_after_tab&TestLoadTxt.test_empty_field_after_tabG  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ro   r   r   )|S1r  r  r  Trv   unpackr  r  r     M   Fr  r%         R@      M@)r$   rZ   rl  r   rv   r  r   rw   r*   r  r   ro   r   r   s         r,   test_unpack_structured"TestLoadTxt.test_unpack_structuredQ  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@   ndminrz  rZ  rk   )rv   r[  r  r   rG  z0,1,2rs   rG  )r@   z0
1
2)r@   rk   r  r   r   rk   r  )r$   r0   rU   r   r=  rZ   rl  ry   rw   r   r   rm   r   r  r   )r*   r   r   ro   r+  r  r   s          r,   test_ndmin_keywordTestLoadTxt.test_ndmin_keyword\  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,   r'  0TestLoadTxt.test_generator_source.<locals>.count  s     2YQh s   r  )rZ   rl  r   r  r*   r'  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   r=  rZ   rl  r>  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   )ro   S10r   rZ  )r[  rv   re  )r$   r0   rU   rZ   rv   ry   rl  )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,Õscarru   )rC   r  
splitlinesr   r	  r0   rZ   rl  r  r   rw   )r*   butf8sutf8rR  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   rZ  rk   rv   r[  max_rowsrR  r4  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   rZ  rk   rv   r[  rc  r5  rR  comment
1,2,3,5
4,5,7,8
2,1,4,5rs   rt   r!  rJ  r]  r4  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 )
Nr3  r   rZ  rs   r4  rR  r;  r3  rs   rk   rt   r!  r4  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HHY$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 )
Nr:  r   rZ  rk   r"  r9  rR  r;  r?  r4  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  rk   )zignored
1,2
r3  3,4
)ignored1,2r7   3,4zignored
1,2

3,4r   )z-1,0
rF  r3  rG  )z-1,0rI  r7   rJ  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   rZ  )rv   rc  r[  r5  r  r   rk   rs   rt   error)r   r  r   rZ   rl  ry   r   rX   r   rU   r   r   simplefilterr   )r*   rE  r  r  s       r,   test_max_rows_empty_lines%TestLoadTxt.test_max_rows_empty_lines  s     \\+3AdF8<>**Tts&'f.Csb!Wq!fq!f$=de$DE	> dH%%IIaL$$&!!';7{+

4sTS$%dF, , '&> > ,+ '&s/   8D6D$ D1D$
D
D!	D$$
D2)r  N)=r8   r9   r:   r;   staticmethodrZ   rl  r  r  r  r   r|   r   rA  rL  rS  rW  r[  r   r   r   r   rV   implementationversionr_  rd  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r!  r%  r)  localegetpreferredencodingr0  r6  r<  r@  rC  r-  r   rN  r=   r6   r.   r,   r  r    s<   BJJ'H+
9!$!!!!!!! [[KC$6$6$>$>)$K=  ?%?% !"CJ	L!!!%)+$6 [[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?rH  g%C?rI  g-@quxru   r$   r0   rU   rZ   float64	fromregexrw   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   rX  rY  z(\d+)\s+(...)))   rH  )  rI  )\  r_  ru   )r$   r0   rU   rZ   r*  rb  rw   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 )Nre  r   rX  z(\d+)\s+...))rf  )rg  )rh  ru   r`  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 quxrX  )rZ  U4z(?u)([0-9.]+)\s+(\w+)r  r  r\  rH  r]  r^  ru   z([0-9.]+)\s+(\w+))r   r	  r0   rZ   ra  rb  rw   rC   r   rx  compileUNICODE)
r*   rn  r  str_pathrR  r   r   r   ro   regexps
             r,   test_record_unicode!Testfromregex.test_record_unicode  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)   123rX  r   ru   )rx  rq  r   rZ   ra  rw   rb  r   )r*   rt  r   r   ro   r   s         r,   test_compiled_bytes!Testfromregex.test_compiled_bytes-  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)Nrx  ry  zstructured datatyper   ru   )	rx  rq  r   r   r   r  rZ   rb  ra  )r*   rt  r   s      r,   test_bad_dtype_not_structured+Testfromregex.test_bad_dtype_not_structured5  sG    H%FO]]9,ABLL"**5 CBBs   $A((
A6r6   N)r8   r9   r:   r;   r   ri  rl  r   r   r-  r  r   ru  rz  r}  r=   r6   r.   r,   rV  rV    sD    	!	!! [[[3+6% 7%"!6r.   rV  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)[TestFromTxti?  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   ru   r   r   r   r   zM 64.0 75.0
F 25.0 60.0r  r  r  r"  r&  )r$   rZ   
genfromtxtr*  rw   r   )r*   r  r  r  
descriptors        r,   r   TestFromTxt.test_recordB  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  rk   rs   r@   rt   ru   r   )	r$   rZ   rw   ry   r  r   rU   rx   rl  )r*   r  r  r  s       r,   r|   TestFromTxt.test_arrayQ  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   r1  ru   r2  rZ  r3  )rZ   rw   ry   r$   r  r   r*   r  r  r  s       r,   r   TestFromTxt.test_1D]  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 )NrR  rO  rZ  rP  rQ  z1,2,3,5# comment
)rZ   rw   ry   r$   r  r   r  s       r,   test_commentsTestFromTxt.test_commentsi  s`    ((<-,-}}TcJT#*+}}TcJT#r.   c                    [         R                  " / SQ[        5      n[        [        SS9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 )	NrR  rZ  r3  rb  skip_headerrk   rO  rc  )rZ   rw   ry   dictr$   r  r   rl  )r*   r  re   r  r  s        r,   rd  TestFromTxt.test_skiprowsu  st    ((<-C3/*+}}T;q;F;T#,-zz$55f5T#r.   c           	      $   [        SS5       Vs/ s H  nSU-  PM
     nnUR                  S5        UR                  [        S5       Vs/ s H
  nSXU4-  PM     sn5        SUS'   [        S	S
SSS9n[        R
                  " [        SR                  U5      5      40 UD6n[        R                  " [        S5       Vs/ s H  nSU-  SU-  SU-  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 )Nrk   r"  z# %izA, B, C3   z%i,%3.1f,%03sz99,99r  rZ  Tr!  r  )r[  r   r  skip_footerr3  )   r  ABCru   )r   r   r  r  rZ   r  r$   r   rw   rx   r   )r*   r   r  re   r  _ctrls          r,   test_skip_footerTestFromTxt.test_skip_footer  s    $)!QK0Kq
K0I%)D)Q_ay0)DER4QBO}}VDIIdO4??xxrKA$(D1HdQh7K3895a5z59;T  1D L9s   C>	D>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  
rk   )r  F)r  invalid_raiserV  rW  rX  rY  r@   z1 1
2  
3 3
4 4
5  
6 6
7 7
r  )
r   r  r   r   r=  rZ   r  r$   r   rw   )r*   r  basestrro   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   )rv   r   r  r   r  r  r$  r(  r%  r)  r  r  r  r  )r$   r   r   r   r   rZ   r  r   categoryrw   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-     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@      r%  r)  y      @      @y      @      @F)f0f1f2f3rO  zf%i)r$   r   r   r   r   rZ   r  r   r  rw   r   rv   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eai$/ , 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
ru   r   )r!  r"  rJ  r]  r$   rZ   r  rw   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+   rZ  r3  r  r  ru   )r$   rZ   rv   ry   rx   r  rw   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)gro   r  r  r  s   M 64.0 75.0
F 25.0 60.0r  rv   r   r   r"  r&  ru   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  rZ   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   rv   r  r   ))r#  r  gfffffR@)r'  r%   g
ףp=*M@)r#  r  g=
ףp5@)r  r  r  r  ru   sO   
# gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        r$   r   r   r   r   rZ   r  r   r  rw   ry   rx   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)rv   re  r   r   r   col1col2ru   r$   rZ   r  ry   rw   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   ra   rR  r   r	  r0   r  r   r   r   UnicodeDecodeErrorrZ   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   )rI  r   rv   r  r   )r  -   333333"@r  |S4r  r  ru   r  r  s        r,   test_autonames_and_usecols&TestFromTxt.test_autonames_and_usecols  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 )NrD  rZ  r@   c                 *    [        U =(       d    S5      $ r9  r;  r<  s    r,   r   :TestFromTxt.test_converters_with_usecols.<locals>.<lambda>&      Se_r.   rG  rH  rs   r:  rJ  rK  r  r  s       r,   rL  (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      -  $ )Nrs   r;  r<  s    r,   r   DTestFromTxt.test_converters_with_usecols_and_names.<locals>.<lambda>2  s    1s1v:r.   )rI  r   rv   r  r  r   )r  Z   r  r  r  ru   r  r  s        r,   &test_converters_with_usecols_and_names2TestFromTxt.test_converters_with_usecols_and_names+  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   r<  s    r,   r   9TestFromTxt.test_converters_cornercases.<locals>.<lambda>;  s    hq*>?r.   2009-02-03 12:00:00Z, 72214.0rZ  rp  r[  rv   r   r    rs   r@       `@ru   )r$   rZ   r  rw   r   object_rx   r   r*   	converterr  r  r  s        r,   test_converters_cornercases'TestFromTxt.test_converters_cornercases8  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  )rZ   
datetime64rE   r<  s    r,   r   :TestFromTxt.test_converters_cornercases2.<locals>.<lambda>F  s    bmmHQ8L,MNr.   r  rZ  rp  r  r  rs   r@   r  )r  zdatetime64[us]ru   )r$   rZ   r  rw   r   rx   r   r  s        r,   test_converters_cornercases2(TestFromTxt.test_converters_cornercases2C  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
rg  r   c                     [        U S5      $ r  r;  r<  s    r,   r   3TestFromTxt.test_unused_converter.<locals>.<lambda>R  
    SBZr.   r  r  r  rk   c                     [        U S5      $ r  r;  r<  s    r,   r   r  W  r  r.   r  r  )r$   rZ   r  r   rU   r*   r  r  s      r,   r  !TestFromTxt.test_unused_converterN  sl    &'}}T4()+?'@BTB8$		!}}T4()+?'@BTB8$r.   c                     S nS n[        S5      n[        X!S.SS SS9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  rx   lowerr  r  r  s    r,   r   4TestFromTxt.test_invalid_converter.<locals>.<lambda>[  sJ    udaggi&7&IAGGIbM &R&*!'')&;&I	&PS S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  ]  sJ    eTQWWY%6%G1779Q< %Q%)%:%Hqwwy%OCRr.   zgD01N01,10/1/2003 ,1 %,R 75,400,600
L24U05,12/5/2003, 2 %,1,300, 150.5
D02N03,10/10/2004,R 1,,7,145.55r  rZ  rB   )r  r[  rv   r  )r$   r  r   r   rZ   r  )r*   
strip_rand	strip_perr+   re   s        r,   test_invalid_converter"TestFromTxt.test_invalid_converterZ  sQ    S
R	 5 6 $4* 	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  )rx   r<  s    r,   r   ;TestFromTxt.test_tricky_converter_bug1666.<locals>.<lambda>j  s    aer.   rZ  r   )r[  r  rV  rW  rX  rY  r  )r*   r+   cnvr  r  s        r,   test_tricky_converter_bug1666)TestFromTxt.test_tricky_converter_bug1666g  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  ru   )g     d@r  r  )rZ   r  r$   rx   rB   rw   r   )r*   dstrr  r  s       r,   test_dtype_with_converters&TestFromTxt.test_dtype_with_converterso  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   rk   rs   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   rk   rs   r@   rZ  rB   )rv   r[  r   r  r  ))rk   r!  r  r   )rs   r]  r  rk   )r@   r@   r@   ru   )r  r   r$  )r   rk   r@   )rv   r[  rI  r   r  r  ))rk   r!  r   )rs   r]  rk   )r@   r@   r@   )ry   r   r$   rZ   recrw   r   )r*   r  dtypconvr  r  r'  s         @r,   &test_dtype_with_converters_and_usecols2TestFromTxt.test_dtype_with_converters_and_usecols{  s    5q3@33+EF&-ts $I&&,,C4,PT#8&-ts"+4D#*, &&,,:$,G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  r<  s    r,   r   4TestFromTxt.test_dtype_with_object.<locals>.<lambda>  r  r.   rk   r  r  r  rs   r  r  ru   nestzNested fields.* not supported.*)
ry   r   rZ   r  r$   rw   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1ru   r6      1strings   string)rZ   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,skiprZ  r  rs   )r[  r   rv   rI  r  )
2001-01-01rV  )r7   |S10r7   ru   )r$   rZ   r  rx   rB   rw   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,skiprZ  r  rs   r  )r[  r   rv   rI  r  r  r=  rV  )r7   z|U11r7   ru   )
r   r	  r0   rZ   r  rx   r  rw   rC   r   )r*   r  rR  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)rV  rW  rX  rY        @)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@   )r[  r   )rt   r!  C   )iz  r  rt   )rZ   r  r$   rw   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 )Nr7  rZ  r@   c                 *    [        U =(       d    S5      $ r9  r;  r<  s    r,   r   *TestFromTxt.test_missing.<locals>.<lambda>  r  r.   r?  r@  r  r  s       r,   rA  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)r[  usemaskr   rs   rk   r@   )r   r   r   rk   r   rk   r   rk   r   ru   )	rZ   r  r$   rw   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 )Nrk   rs   r@   rt   r   rg  rh  r   ri  r   )rZ   rw   rx   r$   r6  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   rI  rG  rt   r"  acru   )rZ   r  r$   rw   rx   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.9rp  rq  rr  rs  rt  ru  rv  rw  rx  ry  )r$   rZ   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{  rV  rY  )rZ   r  r$   r   rw   )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9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 )NrG  rc  ro   r   ru   ra  rb  )r   rI  r   r  )ro   r   )rZ   rw   rx   r  r  r$   r   )r*   r  r  re   r  s        r,   test_usecols_with_named_columns+TestFromTxt.test_usecols_with_named_columns  s    xx(#uU|0LMI&}}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:)messagerk   )r  )r   r  r$   rZ   r  r   rw   )r*   r  r  r  s       r,   r  TestFromTxt.test_empty_file  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+   rZ  T)rv   r[  rS  r  r  ru   )	r$   rZ   rv   ry   rx   r  marw   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$   rZ   rv   rx   ry   r  rw   r   r  s        r,   r  TestFromTxt.test_shaped_dtype.  sr    01XX~U|c5\f-/ 0MM!&HHvsC)Y)?@A1 r.   c                    [        S5      n[        SSSS9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/ArZ  N/ATr[  missing_valuesr   rv   rS  r  rs   r  FFFTr  BrY  rv   r   rS  )r$   r  rZ   r  ru  rw   ry   r   rY  rU   rx   r*   r  re   r  r  s        r,   test_withmissingTestFromTxt.test_withmissing7  s    '(EF}}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9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, 3jrZ  T)rv   r[  r   r  r  r  r~  r|  ))r   r  y                )rk   r:  rp  )r  g@            8)r@   y              @)rT  rV  )r   r   rk   rT  r  rv   r  r  r  r   rk   rs   )r~  rS  )rT  rV  rU  rV  )r   r  r  )
r  ry   rx   r   rZ   r  r$   ru  rw   r   )r*   r  
basekwargsmdtyper  r  s         r,   test_user_missing_values$TestFromTxt.test_user_missing_valuesI  s#   I4A
*sElS'N;}}VD\ *% *(*(( < L!') 	T#$7}}VD\ b/1ce+DdbV`b(( < L!') 	T#}}VD\ */1%+H$(* )* (( < L!') 	T#r.   c           
      0   [         R                  " SS/S[        4S[        4/S9nSn[        S[        SS	S
SS.SSSS.S9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@   )rt   r:  ro   r   ru   zN/A, 2, 3
4, ,???rZ  za,b,cr|  r2  z???)r   r   rs   r   r:  )r[  rv   r   r~  filling_values)r   rs   r@   )rt   r   r:  abcrI  rn  rd  z1,2,*,4
5,*,7,8
*)r[  rv   r~  r  )rk   rs   r   rt   )r!  r   rJ  r]  r  )rk   rs   r  rt   )r!  r  rJ  r]  )rZ   rw   ry   r  r  r$   r   )r*   r  r  re   r  r  data2s          r,   test_user_filling_values$TestFromTxt.test_user_filling_valuesi  se   xx+S#Jc
3KL##).SU%C)*t%<	>
 }}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   8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.00rZ  z-999.0T)rv   r[  r~  r   rS  )r   rz  )rs   g      r  r  r  r  r  )	r$   rZ   r  ru  rw   ry   rx   r   rY  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rv   r~  rS  r   rG  rV  )rY  )r$   rZ   r  ru  rw   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   r!  r"  rV  r  r  r  r  )r$   rZ   r  ru  rw   rX  ry   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9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  r!  2, 2, 2, 2 2r  r   a, b, c, d, er3  rZ  Tr[  rv   r   c                  6   > [         R                  " T4SS0T D6$ )Nr  FrZ   r  re   mdatas   r,   r   )TestFromTxt.test_invalid_raise.<locals>.f  s    ==FeFvFFr.   r  abcderu   r[  r   )r   insertr$   r   r  r   r   r   lenrZ   r   ry   rU   r   r=  r  )r*   r  r   r   mtestr  re   r  s         @@r,   test_invalid_raiseTestFromTxt.test_invalid_raise  s     2%qA)DaL A'tyy'4t<	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9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  r!  r  r  r   r  r3  rZ  TF)r[  rv   r   r  c                  6   > [         R                  " T4SS0T D6$ )NrI  )r   rt   r  r  s   r,   r   6TestFromTxt.test_invalid_raise_with_usecols.<locals>.f  s    ==AA&AAr.   r  aeru   rI  r  abr  )r   r  r$   r   r  r   r   r   r  rZ   r   ry   rU   r  )	r*   r  r   r   r  r  r  re   r  s	          @@r,   test_invalid_raise_with_usecols+TestFromTxt.test_invalid_raise_with_usecols  s.    2%qA)DaL A'tyy'4t$)+	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
5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	9n[	        [
        [        R                  U40 UD6  g s  snf )
Nz1, 1, 1, 1, -1.1r  r3  rt   c                 (    SU R                  5       -  $ )Nz(%s)r  r  s    r,   r   5TestFromTxt.test_inconsistent_dtype.<locals>.<lambda>  s    6AHHJ#6r.   rZ  r  rB   )r[  r  rv   r  )r$   r   r  ry   r   r=  rZ   r  )r*   r  r  r  r  re   s         r,   test_inconsistent_dtype#TestFromTxt.test_inconsistent_dtype  sk    "#b(tyy'67

/67w!Xw7'Kj"--A&A 8s   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.7rZ  f%02ir[  rv   
defaultfmtr   rk   ffffff@)rt   r!  @f00f01f02ru   )rZ   r  r$   rw   ry   rx   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  rZ  r  r  r  rV  r  rY  rE  r  ru   rZ   r  r$   rx   rw   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  rZ  rb  r  r  r  r  ru   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.7rZ  Tr  r  r  r  ru   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  rZ  zf_%02ir  )r   rV  r  )rt   rE  r  f_00f_01f_02ru   rZ   r  r$   ry   rx   rw   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9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,   abcderZ  rB   )r[  rv   r  Tr   r   r7   r   )z01/01/2003  ?z   abcde)r  z|S12r  )r  r  ru   	autostrip)z
01/01/2003r  r  )r  r>  )r  z|S5)r  r   r   r   r   rZ   r  r$   r   r  rw   rx   r   )r*   r  re   r  r  r  s         r,   test_autostripTestFromTxt.test_autostrip  s2   +4'B$$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"%
E3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.14rZ  Tr[  r   rv   AAB_BCC)rk   rs   gQ	@ru   r7   r[  r   rv   replace_spacedeletecharsA.AB (B)C:Cr[  r   rv   r  B_(B)r  r*   r  r  
ctrl_dtyper  s        r,   test_replace_spaceTestFromTxt.test_replace_space  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, 3rZ  Tr  r  r  r  r   ru   r7   r  r  r  r  r  r  )rZ   r  r$   ry   rw   r   r  s        r,   test_replace_space_known_dtype*TestFromTxt.test_replace_space_known_dtype,  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                 ~   Sn[        SSS9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,5rZ  Tr  r  ri  )r  r  r  ru   rv   )r  rZ   rw   ry   r  r$   r   rx   )r*   r  re   r  r  r  s         r,   test_incomplete_names!TestFromTxt.test_incomplete_namesD  s    #40xxI.1AB1AA3x1ABD}}VD\@@@T xxI.3CD3Ca5z3CDF}}VD\4V4 C
 Es   B5
>B:
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 6ro   r  r   rG  r  r  ru   r  )r*   r  r  r  s       r,   test_names_auto_completion&TestFromTxt.test_names_auto_completionR  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  ErZ  )r   rs   rt   T)rv   r[  rI  r   )rZ   r  r$   ry   r   rv   r   )r*   r  
ctrl_namesr  s       r,   test_names_with_usecols_bug1636+TestFromTxt.test_names_with_usecols_bug1636[  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9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9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.)r!  r!  rt   Tr  r  )r  rK  rG  r  r  r  ru   r!  )r  rZ   rw   ry   rx   r  r$   r   r*   r  re   r  r  s        r,   test_fixed_width_names"TestFromTxt.test_fixed_width_namesn  s    @	TBxxl3 #SzC:U|DF}}VD\4V4T T:xxl3 #SzC:U|DF}}VD\4V4T r.   c                     Sn[        SS SS9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, 
rZ  r:  )r[  rv   r  r   )rk   r:  r!  )r   r"  r:  ru   )r  rZ   rw   ry   r  r$   r   r  s        r,   test_filling_valuesTestFromTxt.test_filling_values}  sK    +4E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,testNonetherestofthedatarZ  rB   rv   re  r[  r  r   rk   s   testNonetherestofthedataztest1, testNonetherestofthedatas    testNonetherestofthedata)
r   r   r   r   rZ   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   rZ  rB   r  r   )rk   r      test1)rk   rk      testNonether      test3r?   test1testNonethetest3   0,testNonether  r  )r   r   r   r   rZ   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   rZ   rw   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   rZ  rB   r  r   )s   norm1s   norm2s   norm3r  r  r  )r   r   r   r   rZ   r  r$   r   r  rw   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  rs   rZ  r  r  r  r  r  ru   r  r  r   r  )
r   r	  r0   rZ   r  rw   rC   r  r   r   )r*   r  rR  r   r  r$  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   rZ  rB   r  r   )norm1norm2norm3r+  r-  r  r  r  ru   )rS  rT  r  UnicodeErrorImportErrorr   rE  r   r	  r0   r   r   r   r   rZ   r  r   r  rw   r  r   )	r*   r  r?   r  rR  r   r  r  r$  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9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,3rZ  r|  Tr}  r  r  r  r  ru   r{  r  r  r  r  r  r   rs   )r$   r  r   rZ   rw   ry   r   rX   recarrayr   ru  rY  r  r  s        r,   test_recfromtxtTestFromTxt.test_recfromtxt	  s     o&EF$)&)((FF+#&*sCj!9;
4-.T#'($CdDCFC((FG,!/ ?#&*sCj!9; 	T#TYY-TVVaV$r.   c                 j   [        S5      n[        SSSSS9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 )Nr4  r|  TrB   )r~  r   case_sensitiver  rv   r  r  r  r  ru   r{  r  r  r  r  r  r   rs   )r~  ro   r   )r~  rv   zcolor
"red"
"blue"c                 $    U R                  S5      $ )N")r  r  s    r,   r   -TestFromTxt.test_recfromcsv.<locals>.<lambda><	  s    r.   )r  )red)bluecolorrt   )r$   r  r   rZ   rw   ry   r   rX   r5  r   ru  rY  r  rx   r  rv   )r*   r  re   r  r  rv   s         r,   test_recfromcsvTestFromTxt.test_recfromcsv	  s    o&U$t&($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@   )r5  rk   rs   rt   r!  r"  rJ  r]  rK  r  r   z1 1
2 2
0 
3 3
4 4
5  
6  
7  
rV  rW  )r  r5  F)r5  r  rX  rY  z"a b
#c d
1 1
2 2
#0 
3 3
4 4
5  5
T)r  r5  r   ))rV  rV  )rW  rW  )rX  rX  )r   <f8)r+  rC  ru   )r5  rv   )rY  rY  )rE  rE  )r$   rZ   r  r   r   r=  rw   r   r  r   rv   )r*   r  r  a1a2r  r  r  s           r,   r6  TestFromTxt.test_max_rowsA	  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)Nr"  r  r  r  r  r  )rZ   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_filenamew	  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)
Nr"  r  r  r  r  r  fileobjr  z.gz2r   )rZ   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,   r'  3TestFromTxt.test_gft_using_generator.<locals>.count	  s"     2YdQh'' s   $&r  )rZ   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 1024ru   )r  r  r  r  r  r  g      Dl        i   )r$   rZ   r  r   rv   r   r   rx   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.0rZ  T)r[  r  )rV  rY  rF  r  )rW  rE  r  rV  )rX  r  rG  rW  )r$   rZ   rl  r   rw   )r*   r  ro   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   rO  r  r  r  r%   r  r  )r$   rZ   r  r   rv   r   rw   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.r#  r'  r  r%   r  r  Tzutf-8)rv   r  r  )r$   rZ   rw   r  r  r   r   rv   )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%   ru   Tr  )r$   rZ   rw   r*  r  r   r   rv   r*   r  r   r_  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 )
Nr6  r   rd  r  rg  ru   Tr  r6   )	r$   rZ   rw   r*  r  r   r   rm   rv   re  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  )rZ   rl  r   r  r   )r*   rk  r  ro   r   s        r,   r  TestFromTxt.test_ndmin_keyword	  s9     JJx}D1MM(3-t41 r.   r6   N)ar8   r9   r:   r;   rP  rZ   r  r  r   r|   r   r  rd  r  r  r  r  r  r  r  r  r  r  r  r  rL  r  r  r  r  r  r  r  r   r   r   r-  r  r:  r?  rB  rH  rL  rA  r\  r  re  rh  rk  ro  r  rv  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  r6  r@  r6  rH  rN  rS  rW  rZ  r  ra  rf  ri  r-  ry   r  r=   r6   r.   r,   r  r  ?  sA   BMM*H$
*
*
$$	!F080 $$
$!>$;
$$$	$	$
%B$
$ [[ JK$ L$ F6'$
$$$$(+*!1/
	!
-$!.$$@!8.$$1&%.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?rs   r@   rt   )r   r   rZ   rw   r6  rl  r   )r*   rR  ro   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)NrP  r   rk   rs   r@   rt   )r   r   rZ   rw   ry   r   r[   r   r*   rR  ro   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)	NrP  r   rk   rs   r@   rt   r   r   )
r   r   rZ   rw   ry   r   r[   r   r   r   rv  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   rj  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)NrP  r   rk   rs   r@   rt   zr+rz  r!  r   )	r   rZ   rw   ry   r   r[   r   r   r   )r*   rj  rR  ro   r   r  s         r,   test_save_load_memmap_readwrite-TestPathUsage.test_save_load_memmap_readwrite
  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   rZ   r   r[   r   r*   rj  rR  r  s       r,   test_savez_loadTestPathUsage.test_savez_load)
  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   rZ   savez_compressedr[   r   rY   r  s       r,   test_savez_compressed_load(TestPathUsage.test_savez_compressed_load1
  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)Nrr  r   r   r   )r   rZ   rw   r6  r  r   )r*   rj  rR  ro   r  s        r,   test_genfromtxtTestPathUsage.test_genfromtxt:
  sW    V$ &D&&)*AJJt==&Dq' %$$s   AA++
A9r2  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9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)Nrr  r   r  r4  rZ  r|  Tr}  r  r  r  r  ru   )r   r	  r0   r  r   rZ   rw   ry   r   rX   r5  r   r*   rj  rR  r   re   r  r  s          r,   r6  TestPathUsage.test_recfromtxtC
  s     V$ &DdCA( ! CTJFd-f-Dhh/'*Cj3*%=?GJtR[[12' %$  %$s"   B=B,A2B=,
B:	6B==
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9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)Nrr  r   r  r4  r|  T)r~  r   r9  rv   r  r  r  r  ru   )r   r	  r0   r  r   rZ   rw   ry   r   rX   r5  r   r  s          r,   r@  TestPathUsage.test_recfromcsvR
  s     V$ &DdCA( ! $DF d9$9&9Dhh/'*Cj3*%=?GJtR[[12' %$  %$s"   B?B.A4B?.
B<	8B??
Cr6   N)r8   r9   r:   r;   rs  rw  r{  r   r   r  r    r-  r   r  r~  r  r  r  r   r6  r@  r=   r6   r.   r,   rp  rp  	  sY   %( [[w'FG[[_tSk:( ; H( [[_tSk:@ ;@ [[_tSk: ; [[_tSk:( ;( [[_tSk:[[ JK( L ;( [[_tSk:[[ JK( L ;(r.   rp  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r!  r!  r  rK  r   r   )
rZ   r   r   r  rM  r   rY   rU   r   r[   ro   r+   r   s      r,   test_gzip_loadr  d
  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)
JustWriterit
  c                     Xl         g r'   baser*   r  s     r,   r(   JustWriter.__init__u
      	r.   c                 8    U R                   R                  U5      $ r'   )r  r0   r)   s     r,   r0   JustWriter.writex
  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  t
  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  rf  )r*   r   s     r,   rf  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(   rf  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   )
rZ   r   r   r  r   rT   rU   r  r   r[   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  rK     1 2 3
r   r  r   r  r   )r   r  rM  r0   rY   rU   r   r	  rf  rZ   rl  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  rK  r  r   r   r   )	r   r  rM  r0   rY   rU   r   rZ   rl  )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   rs   )r   rZ   rr  r   rU   r[   r   keysitemsr   rm   valuesr  rR   all)r+   r   r   rN  r   ro   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   )ro   u1rs   )r   r  rs   z0 1 2 3ru   )r  r  )
r   rZ   r   rU   r   r[   rl  r$   r   rw   )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)Nrk   rs   r   )r   rZ   r   rU   r[   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)
Nrk   helloru   r   r   z$Object arrays cannot be saved when.*r   F)rM   )	rZ   rw   r   r   r   r   r   r=  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'   )YrV   r  r  ra   r   rD   r   rx  r   pathlibr   tempfiler   ior   r   r   rS  multiprocessingr   r	   ctypesr
   numpyrZ   numpy.maru  numpy.exceptionsr   numpy.lib._iotoolsr   r   	numpy.libr   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!   numpy._utilsr"   r$   maxsizer+  r  r  r/  r  r  rE   rH   r   r   r/  r  r  rV  r  rp  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]M ]@_ _B	E% E%Pn,+ n,`?6 ?6Ju!+ u!p%j( j(Z& ! !+ +&'*1(> $-EF@ G@$
D{U  G
  Hs$   F F FFFF