
    (phs                       S SK r S SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKrS SK	r	S SK
Jr  S SKJr  S SKJrJr  S SKJr  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Jr  S S	K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*J+r+J,r,J-r-J.r.J/r/J0r0J1r1  S SK2J3r3   " S S\5      r4\ Rj                  S:  r6 S SK7r7Sr8 S SK:r:Sr;S2S jr< " S S5      r= " S S\=5      r> " S S\=5      r? " S S5      r@ " S S5      rA " S S\A5      rB " S S 5      rC " S! S"\A5      rD " S# S$5      rES% rF " S& S'5      rG " S( S)5      rHS* rIS+ rJS, rKS- rL\	R                  R                  \,(       + S.S/9S0 5       rOS1 rPg! \9 a    Sr8 Nf = f! \9 a    Sr; Nf = f)3    N)Path)NamedTemporaryFile)BytesIOStringIO)datetime)Valueget_context)c_bool)ConverterErrorConversionWarning)asbytes)assert_equal)assert_warnsassert_assert_raises_regexassert_raisesassert_allcloseassert_array_equaltemppathtempdirIS_PYPYHAS_REFCOUNTsuppress_warningsassert_no_gc_cyclesassert_no_warningsbreak_cyclesIS_WASM)requires_memoryc                   .    \ 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     J/var/www/html/venv/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(   r,   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(   r/   TextIO.writelines0   s(    4e!<e'!*e!<=!<s   2
 N) )	__name__
__module____qualname____firstlineno____doc__r$   r,   r/   __static_attributes__r2   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(   rA   rA   A   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)RoundtripTestL   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arrrM   localslibnpyioNpzFileosremove)r&   	save_funcargskwargsrG   rH   rJ   target_file	load_filerX   rM   s              r(   	roundtripRoundtripTest.roundtripM   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)rJ   r      )rd   rV   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 )
Nrg      r<      y      ?      @y       @      @y      @      @y      @       @dtype)rV   arrayfloatrl   intcsinglecdoublerj   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 )Nrg   ro   r<   rp   )rV   rs   objectrl   rj   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rg   ro   r<   rp   )rV   rs   ru   rd   rj   s     r(   test_1DRoundtripTest.test_1D   s    HH\3'qr*   rL   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 )	Nrg   g      @rp   g333333@T	mmap_moder)rJ   rH   )rV   rs   rd   rh   rj   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rg   ro   r<   rp   xi4yr   rq   )rV   rs   rl   rj   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  rq   Trecordalwaysr3   )	rangert   rV   oneswarningscatch_warningsfilterwarningsUserWarningrl   )r&   idtrk   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)rX   rM   N)r4   r5   r6   r7   rd   rl   rx   r|   r   pytestmarkskipifrR   rS   r   r   slowr   r9   r2   r*   r(   rD   rD   L   su    .4`H! ! [[/8HIK JK! [[% %r*   rD   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   )
rD   rd   rV   saver   rX   rM   rr   flagsfnc)r&   r`   ra   s      r(   rd   TestSaveLoad.roundtrip   s    bgg???TXXa[$"3"34TXXa[&&(9(9(?(?@TXXa[&&**D,=,=,C,C,G,GHr*   r2   N)r4   r5   r6   r7   rd   r9   r2   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)rD   rd   rV   savez	enumeraterX   rM   r   rr   r   r   fidrU   r]   r^   rO   )r&   r`   ra   nrX   reloadeds         r(   rd   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     rq   numpy_test_big_arrays_.npz)prefixsuffixrk   rk   )rV   emptyuint8r   r   rW   rU   )r&   Lrk   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 )	Nrg   ro   r<   rp         ?       @       @      @      @            @      (@)rV   rs   rt   complexrd   )r&   rk   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 Nrg   ro   r<   rp   r   r   r   r   )file_afile_br   r   r   )	rV   rs   rt   r   r   r   rQ   rW   r   r&   rk   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rg   ro   r<   r   r   z(1, 2)matchr   )	rV   rs   r   r   rQ   rW   r   raisesKeyError)r&   rk   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   )rV   rs   rt   r   r   r   rQ   rW   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   )rX   )r   rV   randomrandnr   OSErrorappend)
error_listr   rX   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<   targetr`   )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   openrV   r   rQ   r   closedrW   )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  rg   i  r  z#Failed to load data from a file: %s)r   rV   r   r   filterResourceWarningr   rW   	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   rV   r   rW   zipr  rU   r   r  )r&   r   r   r  r  s        r(   test_closing_zipfile_after_load-TestSavezLoad.test_closing_zipfile_after_loadB  s^    
 :VF3sHHSn-773<DBJJLBII 433s   A'A==
Bzcount, expected_repr))rg   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)Nrg   ro   r<   rp   r   r   )fname)	rV   rs   rt   r   r   rW   reprformatrU   )r&   countexpected_reprrk   r   r   s         r(   test_repr_lists_keys"TestSavezLoad.test_repr_lists_keysO  s     HHq!fq!f%u-V$HHS%A3u9%A7m222====GGI	 %$$s   A B
B"r2   N)r4   r5   r6   r7   rd   r   r   r   r   IS_64BITr   r   r   r   r   r   r   r   r  	slow_pypyr  r  parametrizer%  r9   r2   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S rS rS rS rS rS rS rS r\R,                  R/                  SSS/5      \R,                  R/                  S\\/5      S 5       5       r\R,                  R7                  \R:                  S:H  SS9\R,                  R<                  \" SS9S 5       5       5       r Sr!g) TestSaveTxti_  c                    [         R                  " SS/SS//[        5      nSn[        5       n[         R                  " X1US9  UR                  S5        [        UR                  5       [        US-   U-   S	-   S
-  5      [        US-   U-   S	-   S-  5      /5        [         R                  " SS/SS//[        5      n[        5       n[         R                  " X1SS9  UR                  S5        [        UR                  5       SS/5        g )Nrg   ro   r<   rp   z%.18erB   r    
r   r   r      1 2
   3 4
)
rV   rs   rt   r   savetxtrQ   r   	readlinesr   ru   )r&   rk   rB   r   s       r(   rx   TestSaveTxt.test_array`  s    HHq!fq!f%u-I


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


1T"	q	Q[[]Xx$89r*   c                     [         R                  " / SQ[        5      n[        5       n[         R                  " X!SS9  UR                  S5        UR                  5       n[        U/ SQ5        g )Nr   r   r-  r   )s   1
s   2
s   3
s   4
)rV   rs   ru   r   r2  rQ   r3  r   r&   rk   r   r0   s       r(   r   TestSaveTxt.test_1Dp  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 )Nrg   ro   )r   r   
ValueErrorrV   r2  rs   r&   r   s     r(   
test_0D_3DTestSaveTxt.test_0D_3Dx  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   rq   r   r-  r   r0  r1  rV   rs   r   r2  rQ   r   r3  r&   rk   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   rp   r  r  ))foor   )barr   )bazr   rq   rD  rF  r   r-  r   s   1 3
s   4 6
r>  r?  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)Nrg   )r   r   )zf4rq   r   rJ  .npyr   )rV   r   r   r   r   rW   r   )r&   rk   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   )	delimiterrB   r   s   1,2
s   3,4
r>  r?  s      r(   test_delimiterTestSaveTxt.test_delimiter  sT    HHr2hR)*I


13D1	q	Q[[]Xx$89r*   c                 Z   [         R                  " SS/5      n[        5       n[         R                  " X!SS/S9  UR	                  S5        [        UR                  5       SS/5        [        5       n[         R                  " X!S	S9  UR	                  S5        UR                  5       n[        US
S/5        [        5       n[         R                  " X!S	SS9  UR	                  S5        UR                  5       n[        US
S/5        [        5       n[        [        [         R                  X!SS9  g )Nr   r   z%02dz%3.1fr-  r   s   01 2.0
s   03 4.0
z%02d : %3.1fs	   01 : 2.0
s	   03 : 4.0
rV  )rB   rW  c   )	rV   rs   r   r2  rQ   r   r3  r   r9  r6  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   rq   zTest header / footerz%1d)rB   headerr   z# z	
1 2
3 4
)rB   footerz
1 2
3 4
# r/  z% )rB   r_  commentsz1 2
3 4
)rB   r`  ra  )	r   rV   rs   ru   r2  rQ   r   readr   )r&   r   rk   test_header_footer
commentstrs        r(   rc  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*   c                     [        5        n[        R                  " SS/5      n[        R                  " X5        [        R                  " U5      n[        X#5        S S S 5        g ! , (       d  f       g = f)Nr   r   )r   rV   rs   r2  loadtxtr   )r&   rO   rk   r   s       r(   test_file_roundtripTestSaveTxt.test_file_roundtrip  sH    Z4&&)*AJJt

4 Aq$	 ZZs   AA$$
A2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 )Nro   rq                 ?z %+.3er-  r   s8    ( +3.142e+00+ +2.718e+00j)  ( +3.142e+00+ +2.718e+00j)
z  %+.3e  %+.3es1     +3.142e+00  +2.718e+00  +3.142e+00  +2.718e+00
z(%.3e%+.3ej)s.   (3.142e+00+2.718e+00j) (3.142e+00+2.718e+00j)

rV   zeros
complex128pir  r   r2  rQ   r3  r   r&   ncolsnrowsrk   reimr   r0   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 )Nro   rq   rk  z%.3er-  r   s0    (3.142e+00-2.718e+00j)  (3.142e+00-2.718e+00j)
rl  rp  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(   r,   :TestSaveTxt.test_custom_writer.<locals>.CustomWriter.write  s    DJJu-.r*   r2   N)r4   r5   r6   r7   r,   r9   r2   r*   r(   CustomWriterr|    s    /r*   r  r   r   )listrV   rs   r2  rg  r   )r&   r  wrk   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-8rq   test.csv%srB   encoding)	r?   rV   rs   str_r   r2  r]   rN  r   )r&   utf8rk   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  rq   r3   .gz.bz2.xz.lzmar  r  z	UTF-16-LEr  r  rr   )r?   rV   rs   r  HAS_BZ2r   HAS_LZMAr  r   r2  r]   rN  r   rg  r   )r&   r  rk   suffixesr  r   r   s          r(   test_unicode_roundtrip"TestSaveTxt.test_unicode_roundtrip-  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  rq   r  r  r   r/  )	r?   rV   rs   r  r   r2  rQ   r   rb  r&   r  rk   r'   s       r(   test_unicode_bytestream#TestSaveTxt.test_unicode_bytestream>  si    !!'*HHdV277+I


1dVg6	q	QVVX__W-td{;r*   c                    SR                  S5      n[        R                  " U/[        R                  S9n[	        5       n[        R
                  " X2S/SS9  UR                  S5        [        UR                  5       US-   5        g r  )	r?   rV   rs   r  r   r2  rQ   r   rb  r  s       r(   test_unicode_stringstream%TestSaveTxt.test_unicode_stringstreamF  s`    !!'*HHdV277+J


1dVg6	q	QVVXtd{+r*   rB   %fs   %fiotypec                    [         R                  " S/5      nU" 5       n[         R                  " XCUS9  UR                  S5        U[        L a  [        UR                  5       SS-  5        g [        UR                  5       SS-  5        g )NrR  r-  r   z%f
s   %f
)rV   rs   r2  rQ   r   r   rb  )r&   rB   r  rk   r'   s        r(   test_unicode_and_bytes_fmt&TestSaveTxt.test_unicode_and_bytes_fmtN  sc     HHbTNH


1S!	q	X6B;/7R<0r*   rL   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   rp   rq   ztest.npz)	test_dataT)valuerV   asarrayr   r   randrandintr{   r   r   r]   rN  r   MemoryError)memoryerror_raisedr   r  r  s       r(   check_large_zip3TestSaveTxt.test_large_zip.<locals>.check_large_zip_  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*   r2   N)"r4   r5   r6   r7   rx   r   r;  r@  rG  rO  rX  r\  rc  rh  ru  rx  r  r  r  r  r  r   r   r)  r   r   r  r   rR   rS   r   r   r  r9   r2   r*   r(   r+  r+  _  s    : >I
::(:<4 UD%$BLD$
!))"<, [[UT5M2[[X'':;	1 < 3	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  ro   r<   r/  z
0 1 23 4 5r   wtz	UTF-32-LE)moder  r  rt)rV   arangereshaper   r,   loadfuncr   )r&   fopenr  wantedlinesepsepr  r   rO   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  )        rR  rS  )r   r  r,   encoder  r   )r&   rN  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  )	r?   r   r  r,   r  r  rV   r  r   )r&   nonasciirN  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  )rr   r  )r  r   rV   r  r   rs   r?   r  r&   utf16rM  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 0S9n[        R                  " SR                  S5      /5      n[        X#5        g )Nr  r   c                 $    U R                  S5      $ )Nr  r?   r   s    r(   <lambda>4LoadTxtBase.test_converters_decode.<locals>.<lambda>  s    188G3Dr*   )rr   
convertersr  )	r    r,   rQ   r  rV   r  rs   r?   r   r&   r   r   rk   s       r(   test_converters_decode"LoadTxtBase.test_converters_decode  si    H		q	MM!277&')D%E  GHHk((1231 r*   c                    SR                  S5      n[        5        n[        R                  " 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   r2   r  s    r(   r  6LoadTxtBase.test_converters_nodecode.<locals>.<lambda>  s    q3wr*   rr   r  r  r   )
r?   r   ior  r,   r  rV   r  rs   r   )r&   r  rN  r   r   rk   s         r(   test_converters_nodecode$LoadTxtBase.test_converters_nodecode  s    !!'*Z4tg6! 7d"''*+->)?'.  0A $*&Aq$ Z66 Zs#   B/BAB/
B,	(B//
B=r2   N)r4   r5   r6   r7   r  r  r   r   r   r  r  r  r  r  r  r  r  r  r9   r2   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                     [         R                  R                  R                  U l        S[         R                  R                  l        g Nrg   )rV   rZ   r[   _loadtxt_chunksize
orig_chunkr  s    r(   setup_methodTestLoadTxt.setup_method  s'    &&,,99*+'r*   c                 V    U R                   [        R                  R                  l        g r#   )r  rV   rZ   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   rq   r   r   r   r   zM 64 75.0
F 25 60.0genderageweightS1r   rK  namesformatsM      P@     R@F      9@      N@)r    r,   rQ   rV   rg  int32rs   r   )r&   r   r   rk   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   rq   rg   ro   r<   rp   )	r    r,   rQ   rV   rg  ru   rs   r   rt   r  s       r(   rx   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   rq   r   1,2,3,4
rV  rr   rW  r    r,   rQ   rV   rg  ru   rs   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   rV  r<   c                 *    [        U =(       d    S5      $ Nru   r'   s    r(   r  *TestLoadTxt.test_missing.<locals>.<lambda>      AJr*   rr   rW  r  rg   ro   r<   r4  r  r.  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   rV  r<   c                 *    [        U =(       d    S5      $ r3  r5  r6  s    r(   r  :TestLoadTxt.test_converters_with_usecols.<locals>.<lambda>  r8  r*   rg   r<   rr   rW  r  usecolsro   r4     	   r.  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   rV  #rr   rW  ra  rg   ro   r<   r  r.  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 )NrI  r   rV     #rK  rL  r.  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   rV  )rJ  @z//rK  r   rC  r.  r  s       r(   test_comments_multiple"TestLoadTxt.test_comments_multiple'  sU    H	AB	q	JJqs 02HHi+S11 r*   )rD  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   rV  z/*rK  rL  z*/ comment
1,2,3,5
)
r    r,   rQ   rV   rg  ru   rs   r   r   r9  r  s       r(   test_comments_multi_chars%TestLoadTxt.test_comments_multi_chars0  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   rV  rg   )rr   rW  skiprowsrL  rI  r.  r  s       r(   test_skiprowsTestLoadTxt.test_skiprowsB  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 )Nrg   ro   r<   rp   r   rg   rr   rC  r   r<   rp   r  r   c                       \ rS rSrS rSrg)*TestLoadTxt.test_usecols.<locals>.CrazyIntiq  c                     gr	  r2   r  s    r(   	__index__4TestLoadTxt.test_usecols.<locals>.CrazyInt.__index__r  s    r*   r2   N)r4   r5   r6   r7   rg  r9   r2   r*   r(   CrazyIntre  q  s    r*   ri  z<JOE 70.1 25.3
                BOB 60.5 27.9
                stidtempS4f8r   ro   rC  rr      JOE   BOBL9@fffff;@      ?z^usecols must be.*%srC  )rV   rs   rt   r   r2  rQ   rg  r   ru   int8int16r$  int64r   uint16uint32uint64r    r  r  r   r   	TypeErrorr=   r4   )r&   rk   r   r   int_typeto_readri  	crazy_intr  r  dtypesrX   	bogus_idxs                r(   test_usecolsTestLoadTxt.test_usecolsS  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            rV  )rC  rW  l            zQIf a structured dtype .*. But 1 usecols were given and the number of fields is 3.r   z1,1
zi,(2)ir   )rr   rC  rW  )r   r   OverflowErrorrV   rg  r9  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1#M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'   rV  r-  rg   )ro   rT  rp   )r        @)
r    r,   rQ   rV   rr   ru   rt   rg  rs   r   r&   r   r   r   rk   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rO   rl  r   r   blockr  rq   aaaarR         @r   rC  r    rV   rr   rt   ru   rg  rs   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  )ro   ro   r<   rq   r  rR  r  r   rC  )rD  rW  rE  )
         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str2rq   )strrV   bytes_rs   rg  r   )r&   r   r   rk   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   rq   )r   warnsr   r    rV   rg  r   ri   rx  r   rr   )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   ra  c                     [        U S5      $ N   r5  r6  s    r(   r  3TestLoadTxt.test_unused_converter.<locals>.<lambda>  
    3q":r*   rC  r     *   rg   c                     [        U S5      $ r  r5  r6  s    r(   r  r    r  r*   r!   B   )r    r/   rQ   rV   rg  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rA   stripr6  s    r(   r  4TestLoadTxt.test_dtype_with_object.<locals>.<lambda>      !'')Z8r*   rg   ;rW  rr   r    ro        rq   )ru   r{   rV   rg  r    rs   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   rq   )r    r,   rQ   rV   rg  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   rq   )r    r,   rQ   rV   rg  rx  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  r/  r   r;   r  r  )err_msg)rV   logspaceastypefloat32hstackrt   r   maphexr    r,   rQ   rg  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   r9  rV   rg  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 )Nrg   r  r   rq   )r   r    r,   rQ   rV   rg  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ro   ro   rq   rk  z%.16er-  r   s   e+00-s   e00+-)rV   rm  rn  ro  r  r   r2  rQ   rb  replacer   r,   rg  r   r   )r&   rk   rs  rt  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rg   r  r<   r  )r   r  r,   rV   rg  r   )r&   rO   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   rJ  comment)<i4r  <f4|S8r  	r-  )s   start s     r*   r  )r    r,   rQ   rV   rg  rs   r   r  s        r(   test_empty_field_after_tab&TestLoadTxt.test_empty_field_after_tabE  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rk   r   r   )|S1r  r  r  Trr   unpackr  r  r     M   Fr  #         R@      M@)r    rV   rg  r   rr   r  r   rs   r&   r  r   rk   r   r   s         r(   test_unpack_structured"TestLoadTxt.test_unpack_structuredO  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<   ndminrt  rV  rg   )rr   rW  r  r   rC  z0,1,2ro   rA  )r<   z0
1
2)r<   rg   r  r   r   rg   r  )r    r,   rQ   r   r9  rV   rg  ru   rs   r   r   ri   r   r  r   )r&   r   r   rk   r%  r  r   s          r(   test_ndmin_keywordTestLoadTxt.test_ndmin_keywordZ  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  )rV   rg  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    r,   rQ   r   r9  rV   rg  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   )rk   S10r   rV  )rW  rr   ra  )r    r,   rQ   rV   rr   ru   rg  )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  r3   r   r  r  S)s   5,6,7,Õscarscars   15,2,3,hellos   20,2,3,Õscarrq   )r?   r  
splitlinesr   r  r,   rV   rg  r  r   rs   )r&   butf8sutf8rN  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   rV  rg   rr   rW  max_rowsrL  r.  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   rV  rg   rr   rW  r]  r0  rL  comment
1,2,3,5
4,5,7,8
2,1,4,5ro   rp   r  rD  rW  r.  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 )
Nr.  r   rV  ro   r/  rL  r6  r-  ro   rg   rp   r  r.  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 )
Nr5  r   rV  rg   r  r4  rL  r6  r:  r.  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  rg   )zignored
1,2
r/  3,4
)ignored1,2r3   3,4zignored
1,2

3,4r   )z-1,0
rA  r/  rB  )z-1,0rD  r3   rE  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   rV  )rr   r]  rW  r0  r  r   rg   ro   rp   error)r   r  r   rV   rg  ru   r   rT   r   rQ   r   r   simplefilterr   )r&   r@  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)=r4   r5   r6   r7   staticmethodrV   rg  r  r  r  r   rx   r   r;  rF  rM  rQ  rU  r   r   r   r   rR   implementationversionrY  r^  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r  r  r  r   r$  localegetpreferredencodingr+  r1  r7  r;  r>  r)  r   rI  r9   r2   r*   r(   r  r    s<   BJJ'H,
:!$!!!!!!! [[KC$6$6$>$>)$K=  ?%?% !"CJ	N!!!%)+$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?rD  g%C?rE  g-@quxrq   r    r,   rQ   rV   float64	fromregexrs   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   rS  rT  z(\d+)\s+(...)))   rD  )  rE  )\  rZ  rq   )r    r,   rQ   rV   r$  r]  rs   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 )Nr`  r   rS  z(\d+)\s+...))ra  )rb  )rc  rq   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 quxrS  )rU  U4z(?u)([0-9.]+)\s+(\w+)r  r  rW  rD  rX  rY  rq   z([0-9.]+)\s+(\w+))r   r  r,   rV   r\  r]  rs   r?   r   rs  compileUNICODE)
r&   ri  r  str_pathrN  r   r   r   rk   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)   123rS  r   rq   )rs  rl  r   rV   r\  rs   r]  r   )r&   ro  r   r   rk   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)Nrs  rt  zstructured datatyper   rq   )	rs  rl  r   r   r   r|  rV   r]  r\  )r&   ro  r   s      r(   test_bad_dtype_not_structured+Testfromregex.test_bad_dtype_not_structured3  sG    H%FO]]9,ABLL"**5 CBBs   $A((
A6r2   N)r4   r5   r6   r7   r   rd  rg  r   r   r)  r  r   rp  ru  rx  r9   r2   r*   r(   rQ  rQ    sD    	!	!! [[[3+6% 7%"!6r*   rQ  c                   t   \ 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 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* r0S+ r1S, r2S- r3S. r4S/ r5S0 r6S1 r7S2 r8S3 r9S4 r:S5 r;S6 r<S7 r=S8 r>S9 r?S: r@S; rAS< rBS= rCS> rDS? rES@ rFSA rGSB rHSC rISD rJSE rKSF rLSG rMSH rNSI rOSJ rPSK rQSL rRSM rSSN rTSO rUSP rVSQ rWSR rXSS rY\ZR                  R                  ST/ SUQ5      ST\]4SV j5       r^SWr_gX)Y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   rq   r   r   r   r   zM 64.0 75.0
F 25.0 60.0r  r  r  r  r   )r    rV   
genfromtxtr$  rs   r   )r&   r  r  r  
descriptors        r(   r   TestFromTxt.test_record@  s    j!}}T3/C?)KL((FF+K3MNT#01:!35
((-/@A!+-}}T4T#r*   c                 H   [        S5      n[        R                  " SS/SS//[        S9n[        R                  " U[        S9n[        X25        UR                  S5        [        R                  " SS/SS//[        S9n[        R                  " U[        S9n[        X25        g )Nr  rg   ro   r<   rp   rq   r   )	r    rV   rs   ru   r}  r   rQ   rt   rg  )r&   r  r  r  s       r(   rx   TestFromTxt.test_arrayO  s    j!((QFQF+37}}T-4)		!((QFQF+59zz$e,4)r*   c                     [         R                  " / SQ[        5      n[        S5      n[         R                  " U[        S9n[        X15        [        S5      n[         R                  " U[        SS9n[        X15        g )Nr   r+  rq   r,  rV  r-  )rV   rs   ru   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 )NrL  rI  rV  rJ  rK  z1,2,3,5# comment
)rV   rs   ru   r    r}  r   r  s       r(   test_commentsTestFromTxt.test_commentsg  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 )	NrL  rV  r-  r\  skip_headerrg   rI  r]  )rV   rs   ru   dictr    r}  r   rg  )r&   r  ra   r  r  s        r(   r^  TestFromTxt.test_skiprowss  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 )Nrg   r  z# %izA, B, C3   z%i,%3.1f,%03sz99,99r  rV  Tr  r  )rW  r  r  skip_footerr/  )   r  ABCrq   )r   r   r  r  rV   r}  r    r   rs   rt   r   )r&   r   r  ra   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  
rg   )r  F)r  invalid_raiserR  rS  rT  rU  r<   z1 1
2  
3 3
4 4
5  
6 6
7 7
r  )
r   r  r   r   r9  rV   r}  r    r   rs   )r&   r  basestrrk   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[        R
                  5        [        R                  " US SS9n[        US   R                  [        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   r3   rr   r  r   r  r	  r  r"  r  r#  r  r  r  r  )r    r   r   r   rV   VisibleDeprecationWarningr}  r   categoryrs   r   r&   r  r  r  r  s        r(   test_headerTestFromTxt.test_header  s    CD$$D1Q##Hb"2N2NO==T>DAaDMMR%A%AAB 2  XXtTl3((D$<0XXtTl35 	T(^WX%67T%['%.1T(^WX%67 21s   A%D
Dc                    [        S5      n[        R                  " SS9 n[        R                  " SS[        R
                  5        [        R                  " US S9n[        US   R                  [        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   r3   rq   r      As   BCD@      r  r#  y      @      @y      @      @F)f0f1f2f3rK  zf%i)r    r   r   r   rV   r  r}  r   r  rs   r   rr   r  r   )r&   r  r  r  r  r   r  s          r(   test_auto_dtypeTestFromTxt.test_auto_dtype  s   CD$$D1Q##Hb"2N2NO==T2DAaDMMR%A%AAB 2 88T6N+88RH%88T4L)88VV,-88T5M*	.
 	TZZ%%'EF"7+IQeai$/ , 21s   A$E


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
rq   r   )r  r  rD  rW  r    rV   r}  rs   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'   rV  r-  r  r  rq   )r    rV   rr   ru   rt   r}  rs   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)grk   r  r  r  s   M 64.0 75.0
F 25.0 60.0r  r  r  r  r   rq   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|  rV   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[        R
                  5        [        R                  " USS S9n[        US   R                  [        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[        R
                  5        [        R                  " USS S9n[        US   R                  [        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   r3   )r  rr   r   ))r  r  gfffffR@)r!  r
  g
ףp=*M@)r  r!   g=
ףp5@)r  r  r  r  rq   sO   
# gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        r    r   r   r   rV   r  r}  r   r  rs   ru   rt   r   )r&   r  r  r  r  s        r(   test_commented_header!TestFromTxt.test_commented_header  s%      $$D1Q##Hb"2N2NO==T>DAaDMMR%A%AAB 2 xxM05#,5@QRTT4    $$D1Q##Hb"2N2NO==T>DAaDMMR%A%AAB 2 	T % 21 21s   A%EA%E(
E%(
E6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)rr   ra  r  r   r   col1col2rq   r    rV   r}  ru   rs   r   r  s       r(   test_names_and_comments_none(TestFromTxt.test_names_and_comments_none  sO    -.}}T#sd$O((FF+VSMFC=3QRT#r*   c                    [        5        n[        R                  R                  US5      n[	        US5       nUR                  SR                  5       5        S S S 5        [        5          [        R                  " [        5         [        R                  " USS9  S S S 5        S S S 5        S S S 5        g ! , (       d  f       Nb= f! , (       d  f       N0= f! , (       d  f       N9= f! , (       d  f       g = f)Nr  r      ϖasciir  )r   r]   rN  r   r  r,   r  r   r   r   UnicodeDecodeErrorrV   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                    [        S5      n[        R                  " SS9 n[        R                  " SS[        R
                  5        [        R                  " USSS S9n[        US   R                  [        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   r3   ACD)rC  r  rr   r   )r  -   333333"@r  |S4r  r  rq   r  r  s        r(   test_autonames_and_usecols&TestFromTxt.test_autonames_and_usecols  s    12$$D1Q##Hb"2N2NO==&*$8DAaDMMR%A%AAB	 2
 ((,".c
S%L!IKT7# 21s   A&B??
Cc                     [        S5      n[        R                  " U[        SSS 0SS9n[        R                  " SS/S	S
//[        5      n[        X#5        g )Nr>  rV  r<   c                 *    [        U =(       d    S5      $ r3  r5  r6  s    r(   r  :TestFromTxt.test_converters_with_usecols.<locals>.<lambda>!      Se_r*   rA  rB  ro   r4  rD  rE  r  r  s       r(   rF  (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[        R
                  5        [        R                  " USSS SS 0S	9n[        US
   R                  [        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   r3   r  r  c                     S[        U 5      -  $ )Nro   r5  r6  s    r(   r  DTestFromTxt.test_converters_with_usecols_and_names.<locals>.<lambda>-  s    1s1v:r*   )rC  r  rr   r  r   )r  Z   r  r  r  rq   r  r  s        r(   &test_converters_with_usecols_and_names2TestFromTxt.test_converters_with_usecols_and_names&  s    12$$D1Q##Hb"2N2NO==d&*,/1E+FHD AaDMMR%A%AAB 2 ((,".c
S%L!IKT7# 21s   A*C
C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)rA   r6  s    r(   r  9TestFromTxt.test_converters_cornercases.<locals>.<lambda>6  s    hq*>?r*   2009-02-03 12:00:00Z, 72214.0rV  rj  rW  rr   r  r    ro   r<       `@rq   )r    rV   r}  rs   r   object_rt   r   r&   	converterr  r  r  s        r(   test_converters_cornercases'TestFromTxt.test_converters_cornercases3  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  )rV   
datetime64rA   r6  s    r(   r  :TestFromTxt.test_converters_cornercases2.<locals>.<lambda>A  s    bmmHQ8L,MNr*   r  rV  rj  r  r  ro   r<   r  )r  zdatetime64[us]rq   )r    rV   r}  rs   r   rt   r   r  s        r(   test_converters_cornercases2(TestFromTxt.test_converters_cornercases2>  so     NP	56}}TS#)6"2yJ((HT1a0&9"<vuo!NPT#r*   c                     [        S5      n[        R                  " USSS 0S9n[        USS/5        UR	                  S5        [        R                  " USSS	 0S9n[        US
S/5        g )Nz1 21
  3 42
ra  r   c                     [        U S5      $ r  r5  r6  s    r(   r  3TestFromTxt.test_unused_converter.<locals>.<lambda>M  
    SBZr*   r  r  r  rg   c                     [        U S5      $ r  r5  r6  s    r(   r  r  R  r  r*   r!   r  )r    rV   r}  r   rQ   r&   r  r  s      r(   r  !TestFromTxt.test_unused_converterI  sl    &'}}T4()+?'@BTB8$		!}}T4()+?'@BTB8$r*   c                     S nS n[        S5      n[        X!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  rt   lowerr  r  r  s    r(   r  4TestFromTxt.test_invalid_converter.<locals>.<lambda>V  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  X  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  rV  )r  rW  rr   )r    r  r   r   rV   r}  )r&   
strip_rand	strip_perr'   ra   s        r(   test_invalid_converter"TestFromTxt.test_invalid_converterU  sO    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	  )rt   r6  s    r(   r  ;TestFromTxt.test_tricky_converter_bug1666.<locals>.<lambda>e  s    aer*   rV  r   )rW  r  rR  rS  rT  rU  r  )r&   r'   cnvr  r  s        r(   test_tricky_converter_bug1666)TestFromTxt.test_tricky_converter_bug1666b  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  rq   )g     d@r  r  )rV   r}  r    rt   r>   rs   r   )r&   dstrr  r  s       r(   test_dtype_with_converters&TestFromTxt.test_dtype_with_convertersj  s    }}VD]&)Au:O((-."/$u!NPT#}}VD]&)Au:O((+-T#r*   c           	        ^ SnSSSSS.m/ SQn[         [         [         U4S jS	.n[        R                  " [        U5      US
S US9n[        R                  R                  / SQUS9n[        XE5        / SQn[        R                  " [        U5      US
SS U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   rg   ro   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>z  s    T!((*5Er*   )r   rg   ro   r<   rV  )rr   rW  r  r  ))rg   r  r  r   )ro   rW  r  rg   )r<   r<   r<   rq   )r  r  r  )r   rg   r<   )rr   rW  rC  r  r  ))rg   r  r   )ro   rW  rg   )r<   r<   r<   )ru   rV   
recfromcsvr    recrs   r   )r&   r  dtypconvr  r  r"  s         @r(   &test_dtype_with_converters_and_usecols2TestFromTxt.test_dtype_with_converters_and_usecolsv  s    5q3@33+EF}}VD]$##'D:&&,,C4,PT#4}}VD]$#%,DTK&&,,:$,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  r6  s    r(   r  4TestFromTxt.test_dtype_with_object.<locals>.<lambda>  r  r*   rg   r  r  r  ro   r  r  rq   nestzNested fields.* not supported.*)
ru   r{   rV   r}  r    rs   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1rq   r2      1strings   string)rV   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,skiprV  r  ro   )rW  r  rr   rC  r  )
2001-01-01rR  )r3   |S10r3   rq   )r    rV   r}  rt   r>   rs   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[        R                  R                  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       N= f! , (       d  f       N^= f)Nr  r   s   skip,skip,2001-01-01s	   ,1.0,skiprV  r  ro   r  )rW  r  rr   rC  r  r  r9  rR  )r3   z|U11r3   rq   )r   r  r,   rV   r}  rt   compatunicoders   r?   r   )r&   r  rN  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		@Q@Q<R*13D  ((\DKK,@@"EF".U!<>T7# "! Zs"   C
B9A C
9
C	C


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)rR  rS  rT  rU        @)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<   )rW  r   )rp   r  C   )iz  r  rp   )rV   r}  r    rs   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 )Nr1  rV  r<   c                 *    [        U =(       d    S5      $ r3  r5  r6  s    r(   r  *TestFromTxt.test_missing.<locals>.<lambda>  r  r*   r9  r:  r  r  s       r(   r;  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)rW  usemaskr   ro   rg   r<   )r   r   r   rg   r   rg   r   rg   r   rq   )	rV   r}  r    rs   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 )Nrg   ro   r<   rp   r   ra  rb  r   rc  r   )rV   rs   rt   r    r2  rQ   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  rC  rA  rp   r  acrq   )rV   r}  r    rs   rt   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.9rj  rk  rl  rm  rn  ro  rp  rq  rr  rs  )r    rV   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   ru  rR  rU  )rV   r}  r    r   rs   )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 )NrA  ra  rk   r   rq   r_  r`  )r  rC  r   r  )rk   r   )rV   rs   rt   r  r}  r    r   )r&   r  r  ra   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:)messagerg   )r  )r   r  r    rV   r}  r   rs   )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'   rV  T)rr   rW  rQ  r  r  rq   )	r    rV   rr   ru   rt   r}  mars   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    rV   rr   rt   ru   r}  rs   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/ArV  N/ATrW  missing_valuesr  rr   rQ  r  ro   r  FFFTr  BrW  rr   r   rQ  )r    r  rV   r}  rs  rs   ru   r   rW  rQ   rt   r&   r  ra   r  r  s        r(   test_withmissingTestFromTxt.test_withmissing0  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, 3jrV  T)rr   rW  r  r  r  r  r|  rz  ))r   r  y                )rg   r4  rk  )r  g@            8)r<   y              @)rR  rT  )r   r   rg   rR  r  rr   r  r  r  r   rg   ro   )r|  rQ  )rR  rT  rS  rT  )r   r  r  )
r  ru   rt   r   rV   r}  r    rs  rs   r   )r&   r  
basekwargsmdtyper  r  s         r(   test_user_missing_values$TestFromTxt.test_user_missing_valuesB  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<   )rp   r4  rk   r   rq   zN/A, 2, 3
4, ,???rV  za,b,crz  r.  z???)r   r   ro   r   r4  )rW  rr   r  r|  filling_values)r   ro   r<   )rp   r   r4  abcrC  rl  rb  z1,2,*,4
5,*,7,8
*)rW  rr   r|  r  )rg   ro   r   rp   )r  r   rD  rW  r  )rg   ro   r  rp   )r  r  rD  rW  )rV   rs   ru   r  r}  r    r   )r&   r  r  ra   r  r  data2s          r(   test_user_filling_values$TestFromTxt.test_user_filling_valuesb  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.00rV  z-999.0T)rr   rW  r|  r  rQ  )r   rt  )ro   g      r  r  r  r  r  )	r    rV   r}  rs  rs   ru   rt   r   rW  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rr   r|  rQ  r   rC  rT  )rW  )r    rV   r}  rs  rs   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  rT  r  r  r  r  )r    rV   r}  rs  rs   rV  ru   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, er/  rV  TrW  rr   r  c                  6   > [         R                  " T4SS0T D6$ )Nr  FrV   r}  ra   mdatas   r(   r   )TestFromTxt.test_invalid_raise.<locals>.f  s    ==FeFvFFr*   r  abcderq   rW  r  )r   insertr    r   r  r   r   r   lenrV   r   ru   rQ   r   r9  r}  )r&   r  r   r   mtestr  ra   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  r/  rV  TF)rW  rr   r  r  c                  6   > [         R                  " T4SS0T D6$ )NrC  )r   rp   r  r  s   r(   r   6TestFromTxt.test_invalid_raise_with_usecols.<locals>.f  s    ==AA&AAr*   r  aerq   rC  r  abr  )r   r  r    r   r  r   r   r   r  rV   r   ru   rQ   r}  )	r&   r  r   r   r  r  r  ra   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9n[	        [
        [        R                  U40 UD6  g s  snf )	Nz1, 1, 1, 1, -1.1r  r/  rp   c                 (    SU R                  5       -  $ )Nz(%s)r  r  s    r(   r  5TestFromTxt.test_inconsistent_dtype.<locals>.<lambda>  s    6AHHJ#6r*   rV  r  )rW  r  rr   )r    r   r  ru   r   r9  rV   r}  )r&   r  r  r  r  ra   s         r(   test_inconsistent_dtype#TestFromTxt.test_inconsistent_dtype  sh    "#b(tyy'67

/67w!Xw7: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.7rV  f%02irW  rr   
defaultfmtr   rg   ffffff@)rp   r  @f00f01f02rq   )rV   r}  r    rs   ru   rt   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  rV  r  r  r  rR  r  rU  rC  r  rq   rV   r}  r    rt   rs   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  rV  r`  r  r  r  r  rq   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.7rV  Tr  r  r  r  rq   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  rV  zf_%02ir  )r   rR  r  )rp   rC  r  f_00f_01f_02rq   rV   r}  r    ru   rt   rs   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9n[        R                  " SS9 n[        R                  " SS[        R
                  5        [        R                  " [        U5      40 UD6n[        US   R                  [        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[        R
                  5        [        R                  " [        U5      4SS0UD6n[        US   R                  [        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,   abcderV  )rW  rr   Tr   r   r3   r   )z01/01/2003  ?z   abcde)r  z|S12r  )r  r  rq   	autostrip)z
01/01/2003r  r  )r  r:  )r  z|S5)r  r   r   r   rV   r  r}  r    r   r  rs   rt   r   )r&   r  ra   r  r  r  s         r(   test_autostripTestFromTxt.test_autostrip  sD   +40$$D1Q##Hb"2N2NOMM&,9&9EAaDMMR%A%AAB 2 xx:;-e}mLNUD!$$D1Q##Hb"2N2NOMM&,I$I&IEAaDMMR%A%AAB 2 xx56-e}mLNU! 21 21s   A/E;A1F;
F	
F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.14rV  TrW  r  rr   AAB_BCC)rg   ro   gQ	@rq   r3   rW  r  rr   replace_spacedeletecharsA.AB (B)C:CrW  r  rr   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, 3rV  Tr  r  r  r  r   rq   r3   r  r  r  r  r  r  )rV   r}  r    ru   rs   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,5rV  Tr  r  rc  )r  r  r  rq   rr   )r  rV   rs   ru   r}  r    r   rt   )r&   r  ra   r  r  r  s         r(   test_incomplete_names!TestFromTxt.test_incomplete_names=  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 6rk   r  r   rC  r  r  rq   r  )r&   r  r  r  s       r(   test_names_auto_completion&TestFromTxt.test_names_auto_completionK  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  ErV  )r   ro   rp   T)rr   rW  rC  r  )rV   r}  r    ru   r   rr   r  )r&   r  
ctrl_namesr  s       r(   test_names_with_usecols_bug1636+TestFromTxt.test_names_with_usecols_bug1636T  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  rp   Tr  r  )r  rI  rE  r  r  r  rq   r  )r  rV   rs   ru   rt   r}  r    r   r&   r  ra   r  r  s        r(   test_fixed_width_names"TestFromTxt.test_fixed_width_namesg  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, 
rV  r4  )rW  rr   r  r   )rg   r4  r  )r   r  r4  rq   )r  rV   rs   ru   r}  r    r   r  s        r(   test_filling_valuesTestFromTxt.test_filling_valuesv  sK    +4ExxL,?sK}}VD\4V4T r*   c                    [         R                  " SS9 n[         R                  " SS[        R                  5        [        R
                  " [        S5      S S SS9n[        US   R                  [        R                  L 5        S S S 5        [        WS	   S
5        [         R                  " SS9 n[         R                  " SS[        R                  5        [        R
                  " [        S5      S S SS9n[        US   R                  [        R                  L 5        S S S 5        [        US	   S5        g ! , (       d  f       N= f! , (       d  f       N/= f)NTr   r   r3   ztest1,testNonetherestofthedatarV  rr   ra  rW  r   rg   s   testNonetherestofthedataztest1, testNonetherestofthedatas    testNonetherestofthedata)
r   r   r   rV   r  r}  r    r   r  r   )r&   r  r  s      r(   test_comments_is_none!TestFromTxt.test_comments_is_none~  s   $$D1Q##Hb"2N2NO==(H!I'+dcKDAaDMMR%A%AAB	 2
 	T!W9:$$D1Q##Hb"2N2NO==(I!J'+dcKDAaDMMR%A%AAB	 2
 	T!W:; 21 21s   A/D6/A/E6
E
Ec                    SnSnSU-   S-   nX#-   U-   n[         R                  " SS9 n[         R                  " SS[        R                  5        [        R
                  " [        U5      S S S	S
9n[        US   R                  [        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[        R                  5        [        R
                  " [        SU-   5      S S S	S
9n[        US   R                  [        R                  L 5        S S S 5        [        US   S5        [        US   SU-   5        g ! , (       d  f       GNO= f! , (       d  f       NB= f)Ns      norm1,norm2,norm3
   test1,testNonethe   ,test3
Tr   r   r3   rV  r  r   )rg   r      test1)rg   rg      testNonether      test3r;   rr   ra  rW  r  test1testNonethetest3   0,testNonether  r  )r   r   r   rV   r  r}  r    r   r  r   r?   )r&   r;   normencr'   r  r  s          r(   test_latin1TestFromTxt.test_latin1  s    %"V+k9J$$D1Q##Hb"2N2NO=='+dcKDAaDMMR%A%AAB	 2
 	T$Z*T$Z&!89T$Z*}}VAY#'$#&.0 	T$Z)T$Zx1H!HIT$Z)$$D1Q##Hb"2N2NO==(86(A!B'+dcKDAaDMMR%A%AAB	 2
 	T$Z#T$Z&!89+ 21 21s   A/GA2G1
G.1
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   rV   rs   r?   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[        R                  5        [        R
                  " [        U5      S S S	S
9n[        US   R                  [        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   r3   rV  r  r   )s   norm1s   norm2s   norm3r  r  r  )r   r   r   rV   r  r}  r    r   r  rs   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##Hb"2N2NO=='+dcKDAaDMMR%A%AAB	 2
 hh/NT18</1 2 	4% 21s   A/C
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  ro   rV  r  r  r  r  r  rq   r  r  r   r  )
r   r  r,   rV   r}  rs   r?   r  r   r   )r&   r  rN  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[        R                  " 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[        R                  5        [        R                   " US S SS9n[#        US   R$                  [        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       G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   r3   rV  r  r   )norm1norm2norm3r*  r,  r  r  r  rq   )rN  rO  r  UnicodeErrorImportErrorr   r@  r   r  r  r,   r   r   r   rV   r  r}  r   r  rs   r  r   )	r&   r  r;   r  rN  r   r  r  r#  s	            r(   test_utf8_file_nodtype_unicode*TestFromTxt.test_utf8_file_nodtype_unicode  s}   	G224HKK!
 Z4t$-.6)J67+d2Z?@ % ((5''"(*(D(DF}}T/24 !)E)EEF 6 ((0vw/}t3W=? 77	$C
 tS)# Z	 k* 	GKK F G	G
 %$ 65 ZsO   &E F.A FF.*A&FAF.&FF
F	F.
F+	'F..
F<c                 $   [        S5      n[        SSSS9n[        R                  " 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[        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S/5        g )NA,B
0,1
2,3rV  rz  Tr{  r  r  r  r  rq   ry  r}  r~  r  r  r  r   ro   )r    r  rV   
recfromtxtrs   ru   r   rT   recarrayr   rs  rW  r  r  s        r(   test_recfromtxtTestFromTxt.test_recfromtxt  s    o&EF}}T,V,((FF+#&*sCj!9;
4-.T#'(}}TFtFvF((FG,!/ ?#&*sCj!9; 	T#TYY-TVVaV$r*   c                    [        S5      n[        SSSS9n[        R                  " 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[        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S/5        [        S5      n[        R                  " 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[        R                  " USUS9n[        R                  " SS/US
9n[        [        U[        R                  5      5        [        X45        [        S5      n[        R                  " USS 0S9n[        R                  " SS/S[        S44/S
9n[        UR                  UR                  5        [        X45        g )Nr2  rz  Tr|  r  case_sensitiverr   r  r  r  r  rq   ry  r}  r~  r  r  r  r   ro   )r|  rk   r   )r|  rr   zcolor
"red"
"blue"c                 $    U R                  S5      $ )N   ")r  r  s    r(   r  -TestFromTxt.test_recfromcsv.<locals>.<lambda>-	  s    AGGENr*   )r  )red)bluecolorrp   )r    r  rV   r%  rs   ru   r   rT   r4  r   rs  rW  r  rt   r>   rr   )r&   r  ra   r  r  rr   s         r(   test_recfromcsvTestFromTxt.test_recfromcsv		  s   o&U$tL}}T888((FF+#&*sCj!9;
4-.T#'(}}TFtFvF((FG,!/ ?#&*sCj!9; 	T#TYY-TVVaV$o&}}T%9((FF+#&*sCj!9;
4-.T#o&sc5\*}}T%uE((FF+!&(
4-.T# ,-}}Tq2J.KL((Hi0'E1:9N8OP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<   )r0  rg   ro   rp   r  r  rD  rW  rE  r  r   z1 1
2 2
0 
3 3
4 4
5  
6  
7  
rR  rS  )r  r0  F)r0  r  rT  rU  z"a b
#c d
1 1
2 2
#0 
3 3
4 4
5  5
T)r  r0  r  ))rR  rR  )rS  rS  )rT  rT  )r   <f8)r%  rC  rq   )r0  rr   )rU  rU  )rC  rC  )r    rV   r}  r   r   r9  rs   r   r  r   rr   )r&   r  r  a1a2r  r  r  s           r(   r1  TestFromTxt.test_max_rows2	  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  )rV   r  r  r   r  r,   r}  r   )r&   r  r  r  r  rO   r   r  s           r(   test_gft_using_filename#TestFromTxt.test_gft_using_filenameh	  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   )rV   r  r  r   r  GzipFiler,   r   r   r  r   r}  )	r&   r  r  r  r  r'   r  rO   r   s	            r(   test_gft_from_gzipTestFromTxt.test_gft_from_gzipv	  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  )rV   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 1024rq   )r  r  r  r  r  r  g      Dl        i   )r    rV   r}  r   rr   r  r   rt   rx  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.0rV  T)rW  r  )rR  rU  rD  r  )rS  rC  r  rR  )rT  r  rE  rS  )r    rV   rg  r   rs   )r&   r  rk   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   rK  r  r	  r  r
  r  r  )r    rV   r}  r   rr   r   rs   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)rr   r  r  )r    rV   rs   r}  r  r   r   rr   )r&   r  expectedr  rX   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
  rq   Tr  )r    rV   rs   r$  r}  r   r   rr   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 )
Nr2  r   rd  r  ra  rq   Tr  r2   )	r    rV   rs   r$  r}  r   r   ri   rr   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  )rV   rg  r   r}  r   )r&   rk  r  rk   r   s        r(   r  TestFromTxt.test_ndmin_keyword	  s9     JJx}D1MM(3-t41 r*   r2   N)`r4   r5   r6   r7   rK  rV   r}  r  r   rx   r   r  r^  r  r  r  r  r  r  r  r  r  r  r  r  rF  r  r  r  r  r	  r  r  r)  r  r6  r;  r@  rF  rJ  r;  rZ  r  rc  rf  ri  rm  r  rt  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r	  r  r  r   r$  r'  r/  r5  r@  r1  rH  rN  rS  rW  rZ  r  ra  rf  ri  r   r   r)  ru   r  r9   r2   r*   r(   r{  r{  =  s   BMM*H$
*
*
$$	!F080 $$
$!:$;
$$$	$	$
%B$
$$F6'$
$$$$(+*!1/
	!
-$!.$$@!8.$$1&%.B""""""&!0!05!3&!!<:8H
& K*!*F%&'$R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S 5       rS rS	 rS
 rS rS 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?ro   r<   rp   )r   r   rV   rs   r2  rg  r   )r&   rN  rk   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)NrL  r   rg   ro   r<   rp   )r   r   rV   rs   ru   r   rW   r   r&   rN  rk   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)	NrL  r   rg   ro   r<   rp   r   r   )
r   r   rV   rs   ru   r   rW   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   c                    [        SS9 n[        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[        XB5        S S S 5        g ! , (       d  f       g = f)NrL  r   rg   ro   r<   rp   zr+rz  r  r   )
r   r   rV   rs   ru   r   rW   r   r   r   )r&   rN  rk   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)B<<
C
c                    [        SS9 n[        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   r   rV   r   rW   r   r&   rN  r  s      r(   test_savez_loadTestPathUsage.test_savez_load
  s\    V$:DHHT~.$"4;?  %$  %$s#   7A3A"A3"
A0	,A33
Bc                     [        SS9 n[        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   r   rV   savez_compressedrW   r   rU   r  s      r(   test_savez_compressed_load(TestPathUsage.test_savez_compressed_load"
  sU    V$:D.9774=DtE{N;JJL %$$s   AA))
A7c                     [        SS9 n[        U5      n[        R                  " SS/5      n[        R                  " X5        [        R
                  " U5      n[        X#5        S S S 5        g ! , (       d  f       g = f)Nrr  r   r   r   )r   r   rV   rs   r2  r}  r   rv  s       r(   test_genfromtxtTestPathUsage.test_genfromtxt+
  sV    V$:D&&)*AJJt==&Dq' %$$s   AA..
A<c                    [        SS9 n[        U5      nUR                  S5       nUR                  S5        S S S 5        [	        SSSS9n[
        R                  " U40 UD6n[
        R                  " S	S
/S[        4S[        4/S9n[        [        U[
        R                  5      5        [        XE5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)Nrr  r   r  r2  rV  rz  Tr{  r  r  r  r  rq   )r   r   r  r,   r  rV   r3  rs   ru   r   rT   r4  r   r&   rN  r   ra   r  r  s         r(   r5  TestPathUsage.test_recfromtxt3
  s    V$:D31(   CTJF==00Dhh/'*Cj3*%=?GJtR[[12' %$ %$s"   CB?A=C?
C		C
Cc                    [        SS9 n[        U5      nUR                  S5       nUR                  S5        S S S 5        [	        SSSS9n[
        R                  " U4SS 0UD6n[
        R                  " S	S
/S[        4S[        4/S9n[        [        U[
        R                  5      5        [        XE5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)Nrr  r   r  r2  rz  Tr8  rr   r  r  r  r  rq   )r   r   r  r,   r  rV   r%  rs   ru   r   rT   r4  r   r  s         r(   r@  TestPathUsage.test_recfromcsv@
  s    V$:D31(   d4PF==<T<V<Dhh/'*Cj3*%=?GJtR[[12' %$ %$s"   CCA?C
C	C
C r2   N)r4   r5   r6   r7   rs  rw  r{  r   r   r  r   r~  r  r  r  r5  r@  r9   r2   r*   r(   rp  rp  	  sU    %( [[w'FG( H( @(((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   )
rV   r   r   r  rM  r   rU   rQ   r   rW   rk   r'   r   s      r(   test_gzip_loadr  N
  sn    
		 A	Aac*AGGAMGGIFF1Iac*Arwwqz1%r*   c                   &    \ rS rSrS rS rS rSrg)
JustWriteri^
  c                     Xl         g r#   baser&   r  s     r(   r$   JustWriter.__init___
      	r*   c                 8    U R                   R                  U5      $ r#   )r  r,   r%   s     r(   r,   JustWriter.writeb
  s    yyq!!r*   c                 6    U R                   R                  5       $ r#   )r  rP   r  s    r(   rP   JustWriter.flushe
  s    yy  r*   r  N)r4   r5   r6   r7   r$   r,   rP   r9   r2   r*   r(   r  r  ^
  s    "!r*   r  c                   *    \ rS rSrS rS rSS jrSrg)
JustReaderih
  c                     Xl         g r#   r  r  s     r(   r$   JustReader.__init__i
  r  r*   c                 8    U R                   R                  U5      $ r#   )r  rb  )r&   r   s     r(   rb  JustReader.readl
  s    yy~~a  r*   c                 8    U R                   R                  X5      $ r#   )r  rQ   )r&   offwhences      r(   rQ   JustReader.seeko
  s    yy~~c**r*   r  Nr  )r4   r5   r6   r7   r$   rb  rQ   r9   r2   r*   r(   r  r  h
  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   )
rV   r   r   r  r   rP   rQ   r  r   rW   r  s      r(   test_ducktypingr  s
  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  r,   rU   rQ   r   r  rb  rV   rg  r   )r'   r  rO   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  r,   rU   rQ   r   rV   rg  )r'   r   s     r(   test_gzip_loadtxt_from_stringr  
  s[    	Aac*AGGJGGIFF1Iac*Arzz!}i0r*   c                     [        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       5      S:H  5        U H  n[        US;   5        M     [        SUR                  5       ;   5        g )N)r<   r<   )r   r   r   r   r   ro   )r   rV   rm  r   rQ   rW   r   keysitemsr   ri   r  )r'   r   r   rJ  r   rk   s         r(   test_npzfile_dictr  
  s    	A
A
AHHQqFF1I

AC1HC1HC1668OC1668O	Z QWWf%  C	Na Z   C1668O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   )rk   u1ro   )r   r  ro   z0 1 2 3rq   )r  r  )
r   rV   r   rQ   r   rW   rg  r    r   rs   )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      S:X  d   e[        R                  " U 5      S:X  d   e[
        R                  " [        5         [        R                  " U 5        S S S 5        g ! , (       d  f       g = f)Nrg   ro   r   )r   rV   r   rQ   rW   r   r   EOFError)r   s    r(   #test_load_multiple_arrays_until_eofr  
  sy    	AGGAqMGGAqMFF1I771:??771:??	x	 

 
!	 	 s   B<<
C
r#   )QrR   r  r  r]   r   r@   r   r  rs  r   pathlibr   tempfiler   r   r   r   rN  multiprocessingr   r	   ctypesr
   numpyrV   numpy.mars  numpy.lib._iotoolsr   r   numpy.compatr   numpy.ma.testutilsr   numpy.testingr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   numpy.testing._private.utilsr   r    maxsizer'  r  r  r.  r  r  rA   rD   r   r   r+  r  r  rQ  r{  rp  r  r  r  r  r  r  r  r   r   r  r  r2   r*   r(   <module>r     s   
 	  	    	 	   '     .    @   +     9>W >& ;;GH
0h% h%VI= I]M ]@_ _B	E% E%Pn,+ n,`?6 ?6Jh!+ h!V%c( c(L& ! !+ +&'*16 $-EF@ G@"oT  G
  Hs$   6E2 =F  2E=<E= F
F