
    pg\j<                       S SK r S SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKrS SK	J
r
  S SKJr  S SKJrJr  S SKJrJr  S SKJr  S SKJr  S SKrS SKrS SKJr  S SKJr  S S	KJr  S S
KJ r   S SK!J"r"J#r#  S SK$J%r%  S SK&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;S6S 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                  \'(       + S0S19\R                  R                  S2S19\R                  R                  S3 5       5       5       rQS4 rRS5 rSg! \9 a    Sr8 Nf = f! \9 a    Sr; GN f = f)7    N)c_bool)datetime)BytesIOStringIO)Valueget_context)Path)NamedTemporaryFile)asbytes)VisibleDeprecationWarning)_npyio_impl)ConversionWarningConverterError)assert_equal)HAS_REFCOUNTIS_WASMassert_assert_allcloseassert_array_equalassert_no_gc_cyclesassert_no_warningsassert_raisesassert_raises_regextempdirtemppath)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     R/home/edenadmin/noVNC/venv/lib/python3.13/site-packages/numpy/lib/tests/test_io.pyr"   TextIO.__init__3   s    wqz*    c                 D    [         R                  " U [        U5      5        g r!   )r   writer   r#   s     r&   r*   TextIO.write6   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.writelines9   s(    4e!<e'!*e!<=!<s   2
 N) )	__name__
__module____qualname____firstlineno____doc__r"   r*   r-   __static_attributes__r0   r(   r&   r   r   *   s    +(>r(   r   l        TFc                     [        U [        5      (       a  U R                  S5      n [        [        R
                  " X5      SS 6 $ )zM
This function is available in the datetime module only from Python >=
2.5.

latin1N   )
isinstancebytesdecoder   timestrptime)r%   fmts     r&   r?   r?   J   s:     !UHHXT]]1*2A.//r(   c                       \ rS rSrS rS rS rS rS r\	R                  R                  \R                  S:H  SS	9S
 5       rS r\	R                  R                   S 5       rSrg)RoundtripTestU   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
[        U[        5      (       dq  UR                  5         S
[        5       ;   aS  [        U
[        R                  R                  R                  5      (       d   [         R"                  " UR                  5        X4$ ! [        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_reloaded)getr
   namer   flushseeksysplatformr;   closenploadlocalslibnpyioNpzFileosremove)r$   	save_funcargskwargsrE   rF   rH   target_file	load_filearrrK   s              r&   	roundtripRoundtripTest.roundtripV   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 k733!!#!VX-%lBFFLL4H4HII		+"2"23   k733!!#!VX-%lBFFLL4H4HII		+"2"23 J . 4s   #A?E+ +BG6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)rH   r      )ra   rS   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 )
Nrd      r:      y      ?      @y       @      @y      @      @y      @       @dtype)rS   arrayfloatri   intcsinglecdoublerg   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 )Nrd   rl   r:   rm   )rS   rp   objectri   rg   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rd   rl   r:   rm   )rS   rp   rr   ra   rg   s     r&   test_1DRoundtripTest.test_1D   s    HH\3'qr(   rJ   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 )	Nrd   g      @rm   g333333@T	mmap_moder)rH   rF   )rS   rp   ra   re   rg   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rd   rl   r:   rm   xi4yr   rn   )rS   rp   ri   rg   s     r&   test_recordRoundtripTest.test_record   s*    HHff%k;-GHa r(   c                 6   [        S5       Vs/ s H  o 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  d   i  rn   Trecordalwaysr1   )	rangerq   rS   oneswarningscatch_warningsfilterwarningsUserWarningri   )r$   idtrh   s       r&   test_format_2_0RoundtripTest.test_format_2_0   su    -23Z8Z|U#Z8GGD#$$D1##Hb+>!!!$ 21 911s   B.B


Br0   N)r2   r3   r4   r5   ra   ri   ru   ry   r}   pytestmarkskipifrP   rQ   r   r   slowr   r7   r0   r(   r&   rB   rB   U   su    .!`H! ! [[/8HIK JK! [[% %r(   rB   c                       \ rS rSrS rSrg)TestSaveLoad   c                 ,   [         R                  " U [        R                  /UQ70 UD6u  p4[	        US   U5        [	        US   R
                  UR
                  5        [	        US   R                  R                  UR                  R                  5        g )Nr   )rB   ra   rS   saver   ro   flagsfnc)r$   r\   r]   r`   rK   s        r&   ra   TestSaveLoad.roundtrip   so    )33D"''SDSFSSV\*SV\\<#5#56SV\\%%|'9'9'='=>r(   r0   N)r2   r3   r4   r5   ra   r7   r0   r(   r&   r   r      s    ?r(   r   c                      \ rS rSrS rS r\R                  R                  \	(       + SS9\R                  R                  \R                  R                  SS9S 5       5       5       rS rS	 rS
 rS r\R                  R                  \SS9S 5       rS rS rS r\R                  R-                  S/ SQ5      S 5       rSrg)TestSavezLoad   c                    [         R                  " U [        R                  /UQ70 UD6u  p4 [	        U5       Hl  u  pVUSU 3   n[        Xg5        [        UR                  UR                  5        [        UR                  R                  UR                  R                  5        Mn     UR                  (       aE  UR                  R                  5         [        R                  " UR                  R                  5        g g ! UR                  (       aE  UR                  R                  5         [        R                  " UR                  R                  5        f f = f)Narr_)rB   ra   rS   savez	enumerater   ro   r   r   fidrR   rY   rZ   rM   )r$   r\   r]   r`   rK   nrh   reloadeds           r&   ra   TestSavezLoad.roundtrip   s    )33D"((TTTVT
	1!#'$qc
3Q)QWWhnn5QWW[[(..*<*<=	 '   &&(		,**//0  |  &&(		,**//0  s   A;C? ?AEc           	      t   [        SSS9 n[        R                  " US5       nUR                  SS5       n[        R
                  " U[        R                  " S5      5        SSS5        UR                  SS5       n[        R
                  " U[        R                  " S5      5        SSS5        UR                  S	S5       nUR                  S
5        SSS5        SSS5        [        R                  " U5       n[        US   5      S:X  d   e[        US   5      S:X  d   e[        US   5      S:X  d   eUS	   S
:X  d   e SSS5        SSS5        g! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N[= f! , (       d  f       g= f)z5Test loading non-.npy files and name mapping in .npz.numpy_test_npz_load_non_npy_.npzprefixsuffixwz	test1.npy
   Ntest2metadatas
   Name: Testtest1)
r   zipfileZipFileopenrS   r   aranger*   rT   len)r$   tmpnpzout_files       r&   test_load_non_npyTestSavezLoad.test_load_non_npy   s@   ;FKsc*cXXk3/8GGHbiim4 0XXgs+xGGHbiim4 ,XXj#.(NN=1 / + 3w<(B...3{+,2223w<(B...:-777	  LK//++.. +*  LKs   F)F,E"F<,E%(FE6FF):AFF)
E"F%
E3/F6
F F
F	F)
F&	"F))
F7zNeeds 64bit platformr   crashes with low memoryc                    Sn[         R                  " U[         R                  S9n[        SSS9 n[         R                  " X2S9  A[         R
                  " U5      nUS   nUR                  5         S S S 5        g ! , (       d  f       g = f)Nl     rn   numpy_test_big_arrays_r   r   rh   rh   )rS   emptyuint8r   r   rT   rR   )r$   Lrh   r   npfiles        r&   test_big_arraysTestSavezLoad.test_big_arrays   se     HHQbhh'5fEHHSWWS\FsALLN FEEs   AA::
Bc                     [         R                  " SS/SS//[        5      n[         R                  " SS/SS//[        5      nU R	                  X5        g )	Nrd   rl   r:   rm         ?       @       @      @      @            @      (@)rS   rp   rq   complexra   )r$   rh   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 Nrd   rl   r:   rm   r   r   r   r   )file_afile_br   r   r   )	rS   rp   rq   r   r   r   rO   rT   r   r$   rh   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rd   rl   r:   r   r   z(1, 2)matchr   )	rS   rp   r   r   rO   rT   r   raisesKeyError)r$   rh   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   )rS   rp   rq   r   r   r   rO   rT   r   sorteddirr   r   r   r   s        r&   test_BagObjTestSavezLoad.test_BagObj  s    HHq!fq!f%u-HHvv&(9:GDI
Q'	q	GGAJVCH%(';<Q

#Q

#r(   zCannot start threadc                     S n/ n[        S5       Vs/ s H  n[        R                  " X4S9PM     nnU H  nUR                  5         M     U H  nUR	                  5         M     U(       a  [        U5      eg s  snf )Nc                    [        SS9 n[        R                  R                  SS5      n [        R                  " XS9  S S S 5        g ! [
         a  nU R                  U5         S nAN)S nAff = f! , (       d  f       g = f)Nr   r   r   )r`   )r   rS   randomrandnr   OSErrorappend)
error_listr   r`   errs       r&   writer9TestSavezLoad.test_savez_filename_clashes.<locals>.writer  se    (Ciiooc3/+HHS* )(  +%%c**+	 )(s.   !A1A		
A.A)$A1)A..A11
A?r:   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   r   rS   r   rO   r   closedrT   )r$   r   fps      r&   test_not_closing_opened_fid)TestSavezLoad.test_not_closing_opened_fid0  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  [        R                  " 5          [        R
                  " S[        5        [        SS5       H  n[        R                  " U5      S     M     S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)	Nr   r   r  r  ignorerd   i  r  )	r   rS   r   r   r   simplefilterResourceWarningr   rT   )r$   r   r   s      r&   test_closing_fidTestSavezLoad.test_closing_fid?  sy     V$HHS}- ((*%%h@q$AGGCL( ( + %$ +* %$s#   +BAB=B
B	B
B-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   rS   r   rT   zipr  rR   r   r  )r$   r   r   r  r  s        r&   test_closing_zipfile_after_load-TestSavezLoad.test_closing_zipfile_after_loadR  s^    
 :VF3sHHSn-773<DBJJLBII 433s   A'A==
Bzcount, expected_repr))rd   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)Nrd   rl   r:   rm   r   r   )fname)	rS   rp   rq   r   r   rT   reprformatrR   )r$   countexpected_reprrh   r   r   s         r&   test_repr_lists_keys"TestSavezLoad.test_repr_lists_keys_  s     HHq!fq!f%u-V$HHS'A3;'A7m222====GGI	 %$$s   A B
B"r0   N)r2   r3   r4   r5   ra   r   r   r   r   IS_64BITr   thread_unsafer   r   r   r   r   r   r  r  r  r$  parametrizer.  r7   r0   r(   r&   r   r      s    18  [[H-CD[[[[&?@ A  E
%	$ [[(=>) ?).')& [[3 6 r(   r   c                      \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 r\R                  R                  S\\/5      S 5       rS rS rS rS rS rS rS r\R                  R                  S\\/5      S 5       r\R                  R;                  \R>                  S:H  SS9\R                  R@                  \!" SS9\R                  RE                  SS9S 5       5       5       5       r#Sr$g)TestSaveTxtio  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 )Nrd   rl   r:   rm   z%.18er@   r    
r   r   %d   1 2
   3 4
)
rS   rp   rq   r   savetxtrO   r   	readlinesr   rr   )r$   rh   r@   r   s       r&   ru   TestSaveTxt.test_arrayp  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|   r9  r6  r   )s   1
s   2
s   3
s   4
)rS   rp   rr   r   r<  rO   r=  r   r$   rh   r   r.   s       r&   r}   TestSaveTxt.test_1D  sH    HH\3'I


1T"	q	U<=r(   c           	          [        5       n[        [        [        R                  U[        R
                  " S5      5        [        [        [        R                  U[        R
                  " S/S///5      5        g )Nrd   rl   )r   r   
ValueErrorrS   r<  rp   r$   r   s     r&   
test_0D_3DTestSaveTxt.test_0D_3D  sH    Ij"**a!=j"**aQC!:,1GHr(   c                     [         R                  " SS/SS/S9n[        5       n[         R                  " X!SS9  UR	                  S5        [        UR                  5       S	S
/5        g )Nr   r   r   r   rn   r9  r6  r   r:  r;  rS   rp   r   r<  rO   r   r=  r$   rh   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   rm   r&  r'  ))foor   )barr   )bazr   rn   rN  rP  r9  r6  r   s   1 3
s   4 6
rH  rI  s      r&   test_structured_padded"TestSaveTxt.test_structured_padded  s\    HHi+ 4
  I


1'T2	q	Q[[]Xx$89r(   c                 
   [         R                  " S/ SQS9nUSS/   n[        SS9 n[        U5      n[         R                  " X25        [         R
                  " U5      n[        XB5        S S S 5        g ! , (       d  f       g = f)Nrd   )r   r   )zf4rn   r   rT  .npyr   )rS   r   r   r	   r   rT   r   )r$   rh   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      ?       @      @      @,r9  )	delimiterr@   r   s   1,2
s   3,4
rH  rI  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.1fr6  r   s   01 2.0
s   03 4.0
z%02d : %3.1fs	   01 : 2.0
s	   03 : 4.0
r`  )r@   ra  c   )	rS   rp   r   r<  rO   r   r=  r   rC  r@  s       r&   test_formatTestSaveTxt.test_format  s    HHff%&I


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


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


1^s;	q	U]M:; Ij"**a;r(   c                     [        5       n[        R                  " SS/[        S9nSn[        R                  " XSUS9  UR                  S5        [        UR                  5       [        SU-   S	-   5      5        [        5       n[        R                  " XSUS
9  UR                  S5        [        UR                  5       [        SU-   S-   5      5        [        5       nSn[        R                  " XSX4S9  UR                  S5        [        UR                  5       [        XC-   S-   S-   5      5        [        5       nSn[        R                  " XSX4S9  UR                  S5        [        UR                  5       [        SU-   U-   S-   5      5        g )Nr   r   rn   zTest header / footerz%1d)r@   headerr   # z	
1 2
3 4
)r@   footerz
1 2
3 4
# r8  z% )r@   ri  commentsz1 2
3 4
)r@   rk  rl  )	r   rS   rp   rr   r<  rO   r   readr   )r$   r   rh   test_header_footer
commentstrs        r&   rn  TestSaveTxt.test_header_footer  sX    IHHff%S13


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


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


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


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

=./Aq$	 ZZs   AA11
A?c                    SnSn[         R                  " X4[         R                  S9n[         R                  n[         R                  nUSU-  -   US S & [        5       n[         R                  " XcSS9  UR                  S5        UR                  5       n[        USS/5        [        5       n[         R                  " XcSU-  S9  UR                  S5        UR                  5       n[        US	S	/5        [        5       n[         R                  " XcS
/U-  S9  UR                  S5        UR                  5       n[        USS/5        g )Nrl   rn                 ?z %+.3er6  r   s8    ( +3.142e+00+ +2.718e+00j)  ( +3.142e+00+ +2.718e+00j)
z  %+.3e  %+.3es1     +3.142e+00  +2.718e+00  +3.142e+00  +2.718e+00
z(%.3e%+.3ej)s.   (3.142e+00+2.718e+00j) (3.142e+00+2.718e+00j)

rS   zeros
complex128pier   r<  rO   r=  r   r$   ncolsnrowsrh   reimr   r.   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 )Nrl   rn   rw  z%.3er6  r   s0    (3.142e+00-2.718e+00j)  (3.142e+00-2.718e+00j)
rx  r}  s           r&   test_complex_negative_exponent*TestSaveTxt.test_complex_negative_exponent  s    HHe^2==9UUTTD2I~!I


1V$	q	AAC	Dr(   c                      " S S[         5      nU" 5       n[        R                  " SS/5      n[        R                  " X#5        [        R                  " U5      n[        X45        g )Nc                       \ rS rSrS rSrg)4TestSaveTxt.test_custom_writer.<locals>.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(   r0   N)r2   r3   r4   r5   r*   r7   r0   r(   r&   CustomWriterr  +  s    /r(   r  r   r   )listrS   rp   r<  rs  r   )r$   r  r   rh   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-8rn   test.csv%sr@   encoding)	r=   rS   rp   str_r   r<  rY   rX  r  )r$   utf8rh   tmpdirs       r&   test_unicodeTestSaveTxt.test_unicode5  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  rn   r1   .gz.bz2.xz.lzmar  r  z	UTF-16-LEr  r  ro   )r=   rS   rp   r  HAS_BZ2r   HAS_LZMAr  r   r<  rY   rX  r  rs  r   )r$   r  rh   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  rn   r  r  r   r8  )	r=   rS   rp   r  r   r<  rO   r   rm  r$   r  rh   r%   s       r&   test_unicode_bytestream#TestSaveTxt.test_unicode_bytestreamN  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=   rS   rp   r  r   r<  rO   r   rm  r  s       r&   test_unicode_stringstream%TestSaveTxt.test_unicode_stringstreamV  s`    !!'*HHdV277+J


1dVg6	q	QVVXtd{+r(   iotypec                    [         R                  " S/5      nU" 5       n[         R                  " X2SS9  UR                  S5        U[        L a  [        UR                  5       SS S35        g [        UR                  5       SS-  5        g )Nr\  z%fr6  r   r   r8  s   %f
)rS   rp   r<  rO   r   r   rm  )r$   r  rh   r%   s       r&   test_unicode_and_bytes_fmt&TestSaveTxt.test_unicode_and_bytes_fmt^  sg     HHbTNH


1T"	q	XbV2;/7R<0r(   rJ   zfiles>4GB may not workr   g   `A)
free_bytesr   c                 J   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  Sn[        R                  " U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   rm   rn   ztest.npz)	test_dataT)valuerS   asarrayr   r   randrandintrx   r   r   rY   rX  r  MemoryError)memoryerror_raisedr   r  r  s       r&   check_large_zip3TestSaveTxt.test_large_zip.<locals>.check_large_zipo  s    ',$ JJ16v(@1>A )+		(*		(9(9"c(BA)G1>(@GMO	 Y&HHRWW\\&*='02 Y(@ Y  +/"(s;   C AB?.C 4C6C ?C 
CC C C(forkr  z,Child process raised a MemoryError exceptionzCsubprocess got a SIGKILL, apparently free memory was not sufficientr   )r   r   r   Processr  r  r  r  exitcoder   xfail)r$   r  r  ctxpmsgs         r&   test_large_zipTestSaveTxt.test_large_zipj  s    
	" #6]
 &!KK5JKK			##LMM::WCLLzzQr(   r0   N)%r2   r3   r4   r5   ru   r}   rE  rJ  rQ  rY  rb  rf  rn  r   r   r2  r	   strrt  r  r  r  r  r  r  r  r   r   r  r   rP   rQ   r   r   r1  r  r7   r0   r(   r&   r4  r4  o  s   : >I
::(:<4 UD [[_tSk:% ;%$BLD"
!))"<, [[X'':;	1 <	1 [[/8PQ[[$[[&?@! A %  R!r(   r4  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'  rl   r:   r8  z
0 1 23 4 5r   wtz	UTF-32-LE)moder  r  rt)rS   r   reshaper   r*   loadfuncr   )r$   fopenr  wantedlinesepsepr  r   rM   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  )        r\  r]  )r   r   r*   encoder  r   )r$   rX  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  rS   r  r   )r$   nonasciirX  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  ro   r  )r  r   rS   r  r   rp   r=   r  r$   utf16rW  s      r&   test_binary_decodeLoadTxtBase.test_binary_decode  sH    4MM'%.(MK1bhhu||H'='C'C'EFGr(   c                    [        5       nUR                  S5        UR                  S5        U R                  U[        R
                  SSS 0S9n[        R                  " SR                  S5      /5      n[        X#5        g )Nr  r   r<   c                 $    U R                  S5      $ )Nr  r=   r   s    r&   <lambda>4LoadTxtBase.test_converters_decode.<locals>.<lambda>  s    188G3Dr(   )ro   r  
convertersr  )	r   r*   rO   r  rS   r  rp   r=   r   r$   r   r   rh   s       r&   test_converters_decode"LoadTxtBase.test_converters_decode  sk    H		q	MM!277W&')D%E  GHHk((1231 r(   c                 j   SR                  S5      n[        5        n[        USSS9 nUR                  U5        S S S 5        U R	                  U[
        R                  SS 0SS9n[
        R                  " US-   /5      n[        XE5        S S S 5        g ! , (       d  f       N_= f! , (       d  f       g = f)	Nr  r  r  r  r   c                     U S-   $ )Nr  r0   r  s    r&   r  6LoadTxtBase.test_converters_nodecode.<locals>.<lambda>  s    q3wr(   ro   r  r  r  )	r=   r   r   r*   r  rS   r  rp   r   )r$   r  rX  r   r   rh   s         r&   test_converters_nodecode$LoadTxtBase.test_converters_nodecode  s    !!'*Z4dD73q 4d"''*+->)?'.  0A $*&Aq$ Z33 Zs"   B$BAB$
B!	B$$
B2r0   N)r2   r3   r4   r5   r  r  r   r   r   r  r  r  r  r  r  r   r
  r  r7   r0   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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*\+RX                  R[                  \.R^                  " 5       S%:H  S&S'9S( 5       r0S) r1S* r2S+ r3S, r4\+RX                  Rk                  S-S./S// S0Q4S// S1Q4S/S2 4S3/ S4Q4S3/ S5Q4S3S6 4/5      S7 5       r6S8r7g9):TestLoadTxti  c                 D    [         R                  U l        S[         l        g Nrd   )r   _loadtxt_chunksize
orig_chunkr  s    r&   setup_methodTestLoadTxt.setup_method  s    %88)*&r(   c                 .    U R                   [        l        g r!   )r  r   r  r  s    r&   teardown_methodTestLoadTxt.teardown_method  s    )-&r(   c                    [        5       nUR                  S5        UR                  S5        [        R                  " US[        R
                  4S[        R
                  4/S9n[        R                  " SS/SS	/S9n[        X#5        [        5       nUR                  S
5        UR                  S5        SSS.n[        R                  " SS/US9n[        R                  " XES9n[        Xv5        g )N1 2
3 4r   r   r   rn   r   r   r   r   zM 64 75.0
F 25 60.0genderageweightS1r   rU  namesformatsM      P@     R@F      9@      N@)r   r*   rO   rS   rs  int32rp   r   )r$   r   r   rh   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   rn   rd   rl   r:   rm   )	r   r*   rO   rS   rs  rr   rp   r   rq   r	  s       r&   ru   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   rn   r|   1,2,3,4
r`  ro   ra  r   r*   rO   rS   rs  rr   rp   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   r`  r:   c                 *    [        U =(       d    S5      $ Nrr   r%   s    r&   r  *TestLoadTxt.test_missing.<locals>.<lambda>      AJr(   ro   ra  r  rd   rl   r:   r@  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   r`  r:   c                 *    [        U =(       d    S5      $ r?  rA  rB  s    r&   r  :TestLoadTxt.test_converters_with_usecols.<locals>.<lambda>!  rD  r(   rd   r:   ro   ra  r  usecolsrl   r@     	   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   r`  #ro   ra  rl  rd   rl   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 )NrU  r   r`     #rW  rX  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   r`  )rV  @z//rW  r   rM  r:  r	  s       r&   test_comments_multiple"TestLoadTxt.test_comments_multiple8  sU    H	AB	q	JJqs 02HHi+S1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        [        5       nUR                  S5        UR                  S5        [        [        [        R                  U[
        SSS9  g )Nz/* comment
1,2,3,5
r   r`  z/*rW  rX  z*/ comment
1,2,3,5
)
r   r*   rO   rS   rs  rr   rp   r   r   rC  r	  s       r&   test_comments_multi_chars%TestLoadTxt.test_comments_multi_charsA  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   r`  rd   )ro   ra  skiprowsrX  rU  r:  r	  s       r&   test_skiprowsTestLoadTxt.test_skiprowsQ  s    H	$%	q	JJqs !#HH\3'1 H	&'	q	JJqs !#HH\3'1 r(   c           
         [         R                  " SS/SS//[        5      n[        5       n[         R                  " X!5        UR                  S5        [         R                  " U[        SS9n[        X1S S 2S4   5        [         R                  " / SQ/ S	Q/[        5      n[        5       n[         R                  " X!5        UR                  S5        [         R                  " U[        S
S9n[        X1S S 2SS 24   5        UR                  S5        [         R                  " U[        [         R                  " SS/5      S9n[        X1S S 2SS 24   5        [        [         R                  [         R                  [         R                  [         R                  [         R                  [         R                  [         R                  [         R                   4	 HH  nU" S5      nUR                  S5        [         R                  " U[        US9n[        X1S S 2S4   5        MJ      " S S5      nU" 5       nUR                  S5        [         R                  " U[        US9n[        X1S S 2S4   5        UR                  S5        [         R                  " U[        U4S9n[        X1S S 2S4   5        Sn[#        U5      nSS/n	SS/n
[         R                  " US[%        ['        X5      5      S9n[)        US   SS/5        [)        US   SS/5        UR                  S5        Sn[+        [,        S[/        U5      R0                   3[         R                  X,S9  [+        [,        S[/        U5      R0                   3[         R                  USUS/S9  g )Nrd   rl   r:   rm   r   rd   ro   rO  r   r:   rm   r&  r   c                       \ rS rSrS rSrg)*TestLoadTxt.test_usecols.<locals>.CrazyInti  c                     gr  r0   r  s    r&   	__index__4TestLoadTxt.test_usecols.<locals>.CrazyInt.__index__  s    r(   r0   N)r2   r3   r4   r5   rr  r7   r0   r(   r&   CrazyIntrp    s    r(   rt  z<JOE 70.1 25.3
                BOB 60.5 27.9
                stidtempS4f8r   rl   rO  ro      JOE   BOBL9@fffff;@      ?z^usecols must be.*rO  )rS   rp   rq   r   r<  rO   rs  r   rr   int8int16r0  int64r   uint16uint32uint64r   r  r#  r   r   	TypeErrortyper2   )r$   rh   r   r   int_typeto_readrt  	crazy_intr  r&  dtypesr`   	bogus_idxs                r&   test_usecolsTestLoadTxt.test_usecolsb  s   HHq!fq!f%u-I


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


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

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

C
C)c                 *   [        5       nUR                  S5        UR                  S5        [        R                  " S[
        4SS[
        4S[        4/4/5      n[        R                  " XSS9n[        R                  " S	S
/U5      n[        X45        g )N1,2,3.0
4,5,6.0
r   r   r   r  r%   r`  r9  rd   )rl   r^  rm   )r&        @)
r   r*   rO   rS   ro   rr   rq   rs  rp   r   r$   r   r   r   rh   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rM   rw  r   r   blockr  rn   aaaar\         @r   rM  r   rS   ro   rq   rr   rs  rp   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  )rl   rl   r:   rn   r  r\  r  r   rM  )rP     rQ  )r         r  r  s        r&   test_3d_shaped_dtype TestLoadTxt.test_3d_shaped_dtype  s    ?@XX~U|c5\i02 3JJq#HHvsC"I.L0IJL M 	1 r(   c                     SS/n[         [        R                  4 H9  n[        R                  " SS/US9n[        R                  " XS9n[        XC5        M;     g )Nstr1str2rn   )r  rS   bytes_rp   rs  r   )r$   r   r   rh   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   rn   )r   warnsr   r   rS   rs  r   rf   r  r   ro   )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   rl  c                     [        U S5      $ N   rA  rB  s    r&   r  3TestLoadTxt.test_unused_converter.<locals>.<lambda>  
    3q":r(   rO  r     r   rd   c                     [        U S5      $ r  rA  rB  s    r&   r  r    r  r(   !   B   )r   r-   rO   rS   rs  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r?   striprB  s    r&   r  4TestLoadTxt.test_dtype_with_object.<locals>.<lambda>      !'')Z8r(   rd   ;ra  ro   r    rl        rn   )rr   rx   rS   rs  r   rp   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                  US    SUS    35        UR                  S5        [        R                  " U[        R
                  S9n[        X15        g )N)l   +&|    l   -(|    r   r7  rd   rn   )r   r*   rO   rS   rs  r  r   r$   tgtr   r  s       r&   test_uint64_typeTestLoadTxt.test_uint64_type  sT    8H	3q6(!CF8$%	q	jj")),Sr(   c                     Sn[        5       nUR                  US    SUS    35        UR                  S5        [        R                  " U[        R
                  S9n[        X15        g )N)l l    r   r7  rd   rn   )r   r*   rO   rS   rs  r  r   r  s       r&   test_int64_typeTestLoadTxt.test_int64_type  sT    9H	3q6(!CF8$%	q	jj"((+Sr(   c                    [         R                  " SSS5      R                  [         R                  5      n[         R                  " X* 45      R                  [
        5      nSR                  [        [
        R                  U5      5      n[        5       nUR                  U5        [
        [         R                  4 HC  nUR                  S5        [         R                  " X4[
        R                  SS9n[        XQU S9  ME     g )	Nir   r&  r8  r   r9   r  )err_msg)rS   logspaceastypefloat32hstackrq   r  maphexr   r*   rO   rs  fromhexr   )r$   r  inpr   r   r  s         r&   test_from_float_hexTestLoadTxt.test_from_float_hex  s     kk#r1%,,RZZ8iid$++E2iiEIIs+,H	"**%BFF1I**JCbT3	 &r(   c                     [        S5      n[        R                  " [        SS9   [        R
                  " U5        SSS5        g! , (       d  f       g= f)z
Ensure that fromhex is only used for values with the correct prefix and
is not called by default. Regression test related to gh-19598.
za b cz2.*convert string 'a' to float64 at row 0, column 1r   Nr   r   r   rC  rS   rs  rD  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  rD  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                  US    SUS    35        UR                  S5        [        R
                  " U[         S9n[        X15        g )Nrd   r   r7  rn   )r   r   r*   rO   rS   rs  r   r  s       r&   test_from_complexTestLoadTxt.test_from_complex-  sa    q!}gan-H	3q6(!CF8$%	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rl   rl   rn   rw  z%.16er6  r   s   e+00-s   e00+-)rS   ry  rz  r{  r|  r   r<  rO   rm  replacer   r*   rs  r   r   )r$   rh   r  r  r   txttxt_badr  s           r&   test_complex_misformatted%TestLoadTxt.test_complex_misformatted5  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rd   r  r:   r   )r   r   r*   rS   rs  r   )r$   rM   r   r  s       r&   test_universal_newline"TestLoadTxt.test_universal_newlineI  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   rT  comment)<i4r  <f4|S8r%  	r9  )s   start s     r(   r  )r   r*   rO   rS   rs  rp   r   r  s        r&   test_empty_field_after_tab&TestLoadTxt.test_empty_field_after_tabP  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rh   r   r   )|S1r  r  r%  Tro   unpackr  r  r     M   Fr  #         R@      M@)r   rS   rs  r   ro   r  r   rp   r$   r  r   rh   r   r   s         r&   test_unpack_structured"TestLoadTxt.test_unpack_structuredZ  s    '(&3HI**S48au$%u$%u$%1bhhd|451bhhBx011bhhc{34r(   c                 ^   [        5       nUR                  S5        UR                  S5        [        [        [
        R                  USS9  UR                  S5        [        [        [
        R                  USS9  UR                  S5        [
        R                  " U[        SSS9n[
        R                  " / S	Q/ S
Q/5      n[        X#5        [        5       nUR                  S5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        [        5       nUR                  S5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        UR                  S5        [
        R                  " U[        SSS9n[        UR                  S:H  5        [        R                  " [        SS9   [        5       n[        [
        R                  " USS9R                  S:H  5        [        [
        R                  " USS9R                  S:H  5        S S S 5        g ! , (       d  f       g = f)Nz1,2,3
4,5,6r   r:   ndminr  r`  rd   )ro   ra  r  r   rM  z0,1,2rl   rM  )r:   z0
1
2)r:   rd   r  r   r   rd   r  )r   r*   rO   r   rC  rS   rs  rr   rp   r   r   rf   r   r  r   )r$   r   r   rh   r1  r|  r   s          r&   test_ndmin_keywordTestLoadTxt.test_ndmin_keyworde  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 U  v   M
     g 7fNr   )r   r   s    r&   r,  0TestLoadTxt.test_generator_source.<locals>.count  s     2Y s   r   )rS   rs  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*   rO   r   rC  rS   rs  rD  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   )rh   S10r   r`  )ra  ro   rl  )r   r*   rO   rS   ro   rr   rs  )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 encodingr   c           	         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  r1   r  r  r  S)s   5,6,7,Õscarscars   15,2,3,hellos   20,2,3,Õscarrn   )r=   r  
splitlinesr   r   r*   rS   rs  r  r   rp   )r$   butf8sutf8rX  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   r`  rd   ro   ra  max_rowsrX  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   r`  rd   ro   ra  rh  r:  rX  comment
1,2,3,5
4,5,7,8
2,1,4,5rl   rm   r&  rP  r  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 )
Nr8  r   r`  rl   r9  rX  r@  r9  rl   rd   rm   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HH\3'1 r(   c                     [        5       nUR                  S5        UR                  S5        [        R                  " U[
        SSSS9n[        R                  " / SQ/ SQ/ S	Q/[
        5      n[        X#5        g )
Nr?  r   r`  rd   r'  r>  rX  r@  rD  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  rd   )zignored
1,2
r8  3,4
)ignored1,2r1   3,4c                      [        S5      $ )Nzignored
1,2

3,4r   r0   r(   r&   r  TestLoadTxt.<lambda>  s
    !67r(   r   )z-1,0
rK  r8  rL  )z-1,0rN  r1   rO  c                      [        S5      $ )Nz-1,0
1,2

3,4rQ  r0   r(   r&   r  rR    s
    !34r(   c                 Z   [        U5      (       a  U" 5       n[        R                  " U[        USSU-
  S9n[	        USS/SS/SS//US  5        [        U[        5      (       a  UR                  S5        [        R                  " U[        USSU-
  S9n[	        USS/SS/SS//US  5        g )	Nr`  r:   )ro   rh  ra  r:  r  r   rd   rl   rm   )callablerS   rs  rr   r   r;   r   rO   )r$   rJ  r  r  r   s        r&   test_max_rows_empty_lines%TestLoadTxt.test_max_rows_empty_lines  s     D>>6DjjS43"#d(,3"a1a&1a& 9$% @AdH%%IIaLJJt3 !D*1AwAA7>?r(   )r  N)8r2   r3   r4   r5   staticmethodrS   rs  r  r  r  r   ru   r}   rG  rR  rY  r]  ra  rd  ri  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   localegetpreferredencodingr5  r;  rA  rE  rH  r2  rV  r7   r0   r(   r&   r  r    sz   BJJ'H+
9!$!!!!!!!% !"CJ	L!!!%)+$4(5,	5(:T/<> [[3359II9  ;:;: !!"!! [[ff-56-.7823*+4507 8@8@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?rN  g%C?rO  g-@quxrn   r   r*   rO   rS   float64	fromregexrp   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   r^  r_  z(\d+)\s+(...)))   rN  )  rO  )\  re  rn   )r   r*   rO   rS   r0  rh  rp   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 )Nrk  r   r^  z(\d+)\s+...))rl  )rm  )rn  rn   rf  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 quxr^  )r`  U4z(?u)([0-9.]+)\s+(\w+)r  r  rb  rN  rc  rd  rn   z([0-9.]+)\s+(\w+))r   r   r*   rS   rg  rh  rp   r=   r   r  compileUNICODE)
r$   rt  r  str_pathrX  r   r   r   rh   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)   123r^  r   rn   )r  rw  r   rS   rg  rp   rh  r   )r$   rz  r   r   rh   r   s         r&   test_compiled_bytes!Testfromregex.test_compiled_bytes6  sR    H%FObjj!"HHYb)LLB'1 r(   c                     [         R                  " S5      n[        S5      n[        R                  " [
        SS9   [        R                  " X![        R                  S9  S S S 5        g ! , (       d  f       g = f)Nr~  r  zstructured datatyper   rn   )	r  rw  r   r   r   r  rS   rh  rg  )r$   rz  r   s      r&   test_bad_dtype_not_structured+Testfromregex.test_bad_dtype_not_structured>  sG    H%FO]]9,ABLL"**5 CBBs   $A((
A6r0   N)r2   r3   r4   r5   r   ro  rr  r   r   r2  r  r	   r{  r  r  r7   r0   r(   r&   r\  r\    sD    	!	!! [[[3+6% 7%"!6r(   r\  c                   h   \ 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 rW\XR                  R                  SR/ SSQ5      SR\[4ST j5       r\SUr]gV)WTestFromTxtiH  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   rn   r   r   r   r   zM 64.0 75.0
F 25.0 60.0r  r#  r%  r(  r,  )r   rS   
genfromtxtr0  rp   r   )r$   r  r  r  
descriptors        r&   r   TestFromTxt.test_recordK  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  rd   rl   r:   rm   rn   r   )	r   rS   rp   rr   r  r   rO   rq   rs  )r$   r  r  r  s       r&   ru   TestFromTxt.test_arrayZ  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|   r7  rn   r8  r`  r9  )rS   rp   rr   r   r  r   r$   r  r  r  s       r&   r}   TestFromTxt.test_1Df  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 )NrX  rU  r`  rV  rW  z1,2,3,5# comment
)rS   rp   rr   r   r  r   r  s       r&   test_commentsTestFromTxt.test_commentsr  s`    ((<-,-}}TcJT#*+}}TcJT#r(   c                    [         R                  " / SQ[        5      n[        SS.n[        S5      n[         R                  " U4SS0UD6n[        XA5        [        S5      n[         R                  " U4SS0UD6n[        XA5        g )	NrX  r`  r9  rg  skip_headerrd   rU  rh  )rS   rp   rr   r   r  r   rs  )r$   r  r]   r  r  s        r&   ri  TestFromTxt.test_skiprows~  sr    ((<-S1*+}}T;q;F;T#,-zz$55f5T#r(   c                    [        SS5       Vs/ s H  nSU 3PM
     nnUR                  S5        UR                  [        S5       Vs/ s H  o SUS SUS 3PM     sn5        S	US
'   SSSSS.n[        R                  " [        SR                  U5      5      40 UD6n[        R                  " [        S5       Vs/ s H  oS US US 4PM     snS Vs/ s H
  oU[        4PM     snS9n[        XF5        g s  snf s  snf s  snf s  snf )Nrd   r'  rj  zA, B, C3   r`  z3.1f03dz99,99r  Tr&  r   )ra  r&  r  skip_footerr8  )   r   ABCrn   )
r   r   r  rS   r  r   r  rp   rq   r   )r$   r   r  r]   r  _ctrls          r&   test_skip_footerTestFromTxt.test_skip_footer  s    "'1+.+Q"QC+.IeBi@is!Ad81QsG,i@AR"T!TVW}}VDIIdO4??xxrKAqEqe17K3895a5z59;T  /@ L9s   C9	C>=DD
c                 >   [         R                  " 5          [         R                  " S[        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)Nr  z1 1
2 2
3 3
4 4
5  
6  
7  
rd   )r  F)r  invalid_raiser\  r]  r^  r_  r:   z1 1
2  
3 3
4 4
5  
6 6
7 7
r  )r   r   r  r   r   rC  rS   r  r   r   rp   )r$   basestrrh   s      r&   test_skip_footer_with_invalid)TestFromTxt.test_skip_footer_with_invalid  s\   $$&!!(,=>;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/F
Fc                    [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " US SSS9n[        US   R                  [        L 5        S S S 5        [
        R                  " S	S
/5      [
        R                  " SS/5      [
        R                  " SS/5      S.n[        WS   US   5        [        US   US   5        [        US   US   5        g ! , (       d  f       N= f)Nz)gender age weight
M 64.0 75.0
F 25.0 60.0Tr   r   r1   r<   )ro   r&  r  r   r  r  r*  r.  r+  r/  r  r   r!  r"  )r   r   r   r   r   rS   r  r   categoryrp   r   r$   r  r   r  r  s        r&   test_headerTestFromTxt.test_header  s    CD$$D1Q##Hb2KL==T*13DAaDMM%>>?	 2
  XXtTl3((D$<0XXtTl35 	T(^WX%67T%['%.1T(^WX%67 21s   AC99
Dc                    [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " US SS9n[        US   R                  [        L 5        S S S 5        [
        R                  " S	S
/5      [
        R                  " SS/5      [
        R                  " SS/5      [
        R                  " SS/5      [
        R                  " SS/5      /n[        WR                  R                  / SQ5        [        U5       H  u  pV[        USU 3   U5        M     g ! , (       d  f       N= f)Nz*A 64 75.0 3+4j True
BCD 25 60.0 5+6j FalseTr   r   r1   r<   r  r      As   BCD@      r+  r/  y      @      @y      @      @F)f0f1f2f3rU  r   )r   r   r   r   r   rS   r  r   r  rp   r   ro   r&  r   )r$   r  r   r  r  r   r  s          r&   test_auto_dtypeTestFromTxt.test_auto_dtype  s    CD$$D1Q##Hb2KL==TGDDAaDMM%>>? 2 88T6N+88RH%88T4L)88VV,-88T5M*	.
 	TZZ%%'EF"7+IQ!g- , 21s   AD77
Ec                     [        S5      n[        R                  " US S9n[        R                  " / SQ/ SQ/5      n[	        X#5        g )Nz1 2 3 4
5 6 7 8
rn   r|   )r&  r'  rP  r  r   rS   r  rp   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%   r`  r9  r  r  rn   )r   rS   ro   rr   rq   r  rp   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)grh   r   r#  r%  s   M 64.0 75.0
F 25.0 60.0r  ro   r&  r&  r(  r,  rn   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  rS   r  r  s    r&   test_bad_fnameTestFromTxt.test_bad_fname  s*    ]]9,EFMM# GFFs	   :
Ac                    [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " USS SS9n[        US   R                  [        L 5        S S S 5        [
        R                  " / S	QS
S[        4S[        4/S9n[        WU5        [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " USS SS9n[        US   R                  [        L 5        S S S 5        [        X45        g ! , (       d  f       N= f! , (       d  f       N+= f)NzN
#gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        Tr   r   r1   r<   )r&  ro   r  r   ))r)  r  gfffffR@)r-  r  g
ףp=*M@)r)  r  g=
ףp5@)r   r  r!  r"  rn   sO   
# gender age weight
M   21  72.100000
F   35  58.330000
M   33  21.99
        r   r   r   r   r   rS   r  r   r  rp   rr   rq   r   )r$   r  r   r  r  s        r&   test_commented_header!TestFromTxt.test_commented_header  s      $$D1Q##Hb2KL==T*13DAaDMM%>>?	 2
 xxM05#,5@QRTT4    $$D1Q##Hb2KL==T*13DAaDMM%>>?	 2
 	T ) 21 21s   AD1AE1
D?
Ec                     [        S5      n[        R                  " U[        [        4S SS9n[        R                  " SS/S[        4S[        4/S9n[        X#5        g )	Nzcol1 col2
 1 2
 3 4T)ro   rl  r&  r   r   col1col2rn   r   rS   r  rr   rp   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   rY   rX  r  r   r*   r  r   r   r   UnicodeDecodeErrorrS   r  )r$   r  fpathr   s       r&   test_file_is_closed_on_error(TestFromTxt.test_file_is_closed_on_error  s    Y&GGLL4EeT"a-4467 #
 $%]]#56MM%': 7 & Y"" 76 &% YsR   -C' B4C'*CCC#C'4
C	>C'
CC
C$	 C''
C5c           	      z   [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " USSS SS9n[        US	   R                  [        L 5        S S S 5        [
        R                  " S
SS[        4S[        4/S9n[        WU5        g ! , (       d  f       N?= f)NA B C D
 aaaa 121 45 9.1Tr   r   r1   ACDr<   )rO  r&  ro   r  r   )r  -   333333"@r  |S4r  r  rn   r  r  s        r&   test_autonames_and_usecols&TestFromTxt.test_autonames_and_usecols  s    12$$D1Q##Hb2KL==&*$JDAaDMM%>>?	 2
 ((,".c
S%L!IKT7# 21s   AB,,
B:c                     [        S5      n[        R                  " U[        SSS 0SS9n[        R                  " SS/S	S
//[        5      n[        X#5        g )NrJ  r`  r:   c                 *    [        U =(       d    S5      $ r?  rA  rB  s    r&   r  :TestFromTxt.test_converters_with_usecols.<locals>.<lambda>/      Se_r(   rM  rN  rl   r@  rP  rQ  r  r  s       r&   rR  (TestFromTxt.test_converters_with_usecols+  sT    ./}}T()+D'E$+- ((QI1v.4T#r(   c           
         [        S5      n[        R                  " SS9 n[        R                  " SS[        5        [
        R                  " USSS SSS	 0S
9n[        US   R                  [        L 5        S S S 5        [
        R                  " SSS[        4S[        4/S9n[        WU5        g ! , (       d  f       N?= f)Nr  Tr   r   r1   r  r<   r  c                     S[        U 5      -  $ )Nrl   rA  rB  s    r&   r  DTestFromTxt.test_converters_with_usecols_and_names.<locals>.<lambda>;  s    1s1v:r(   )rO  r&  ro   r  r  r   )r  Z   r  r  r  rn   r  r  s        r&   &test_converters_with_usecols_and_names2TestFromTxt.test_converters_with_usecols_and_names4  s    12$$D1Q##Hb2KL==d&*W,/1E+FHD AaDMM%>>? 2 ((,".c
S%L!IKT7# 21s   AB00
B>c                     SS 0n[        S5      n[        R                  " USS SS/US9n[        R                  " [	        SSS	5      S
4S[        R
                  4S[        4/S9n[        X45        g )Ndatec                     [        U S5      $ Nz%Y-%m-%d %H:%M:%SZ)r?   rB  s    r&   r  9TestFromTxt.test_converters_cornercases.<locals>.<lambda>D  s    hq*>?r(   2009-02-03 12:00:00Z, 72214.0r`  ru  ra  ro   r&  r    rl   r:       `@rn   )r   rS   r  rp   r   object_rq   r   r$   	converterr  r  r  s        r&   test_converters_cornercases'TestFromTxt.test_converters_cornercasesA  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  )rS   
datetime64r?   rB  s    r&   r  :TestFromTxt.test_converters_cornercases2.<locals>.<lambda>O  s    bmmHQ8L,MNr(   r  r`  ru  r  r  rl   r:   r  )r  zdatetime64[us]rn   )r   rS   r  rp   r   rq   r   r  s        r&   test_converters_cornercases2(TestFromTxt.test_converters_cornercases2L  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
rl  r   c                     [        U S5      $ r  rA  rB  s    r&   r  3TestFromTxt.test_unused_converter.<locals>.<lambda>[  
    SBZr(   r  r  r   rd   c                     [        U S5      $ r  rA  rB  s    r&   r  r  `  r  r(   r  r  )r   rS   r  r   rO   r$   r  r  s      r&   r  !TestFromTxt.test_unused_converterW  sl    &'}}T4()+?'@BTB8$		!}}T4()+?'@BTB8$r(   c                 x    S nS n[        S5      nX!S.SS SS.n[        [        [        R                  U40 UD6  g )Nc                     [        SU R                  5       ;   =(       a    U R                  5       S   =(       d3    SU R                  5       ;  =(       a    U R                  5       =(       d    S5      $ )N   rr  r  rq   lowerr  r  r  s    r&   r  4TestFromTxt.test_invalid_converter.<locals>.<lambda>d  sJ    udaggi&7&IAGGIbM &T'+1779'<'J&Rs Ur(   c                     [        SU R                  5       ;   =(       a    U R                  5       S   =(       d3    SU R                  5       ;  =(       a    U R                  5       =(       d    S5      $ )N   %r   r  r  r  s    r&   r  r  f  sJ    eTQWWY%6%G1779Q< %S&*!'')&;&I	%QcTr(   zgD01N01,10/1/2003 ,1 %,R 75,400,600
L24U05,12/5/2003, 2 %,1,300, 150.5
D02N03,10/10/2004,R 1,,7,145.55r  r`  r<   )r  ra  ro   r  )r   r   r   rS   r  )r$   
strip_rand	strip_perr%   r]   s        r&   test_invalid_converter"TestFromTxt.test_invalid_converterc  sN    U
T	 5 6 (7cw0 	nbmmQA&Ar(   c                     [        S5      nS n[        R                  " USSU0S9n[        R                  " SS/SS	//5      n[	        X45        g )
Nz	q1,2
q3,4c                     [        U SS  5      $ r  )rq   rB  s    r&   r  ;TestFromTxt.test_tricky_converter_bug1666.<locals>.<lambda>s  s    aer(   r`  r   )ra  r  r\  r]  r^  r_  r  )r$   r%   cnvr  r  s        r&   test_tricky_converter_bug1666)TestFromTxt.test_tricky_converter_bug1666p  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  rn   )g     d@r  r  )rS   r  r   rq   r<   rp   r   )r$   dstrr  r  s       r&   test_dtype_with_converters&TestFromTxt.test_dtype_with_convertersx  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S9n[        R                  R                  / SQUS9n[        XE5        / SQn[        R                  " [        U5      US
SS USS9n[        R                  R                  / SQUS9n[        XE5        g )Nz!1,5,-1,1:1
2,8,-1,1:n
3,3,-2,m:n
r   rd   rl   r:   )z1:1z1:nzm:1zm:n)e1r   e2r   )e3i2r   i1c                 *   > TU R                  5          $ r!   r  )r   dmaps    r&   r  DTestFromTxt.test_dtype_with_converters_and_usecols.<locals>.<lambda>  s    T!((*5Er(   )r   rd   rl   r:   r`  r<   )ro   ra  r&  r  r  ))rd   r&  r  r   )rl   r  r  rd   )r:   r:   r:   rn   )r#  r%  r)  )r   rd   r:   )ro   ra  rO  r&  r  r  ))rd   r&  r   )rl   r  rd   )r:   r:   r:   )rr   rS   r  r   recrp   r   )r$   r  dtypconvr  r  r,  s         @r&   &test_dtype_with_converters_and_usecols2TestFromTxt.test_dtype_with_converters_and_usecols  s    51Q7F33+EF}}VD]$##'D7L&&,,L%)  +T#8}}VD]$#%.dt&-/ &&,,@,MT#r(   c           	      ^   SnS[         4S[        4/nS nSU0n[        R                  " [	        U5      SUUS9n[        R
                  " S[        SSS5      4S	[        S
SS5      4/US9n[        XV5        SS[         4S[        4/4/n[        [        S5         [        R                  " [	        U5      SX$S9nS S S 5        S[         4S[        4S/ 4/n[        [        S5         [        R                  " [	        U5      SX$S9nS S S 5        g ! , (       d  f       NZ= f! , (       d  f       g = f)Nr  r  r  c                 6    [        U R                  5       S5      $ r  r  rB  s    r&   r  4TestFromTxt.test_dtype_with_object.<locals>.<lambda>  r  r(   rd   r  r  r  rl   r  r  rn   nestzNested fields.* not supported.*)
rr   rx   rS   r  r   rp   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1rn   r0      1strings   string)rS   r  r   rx   )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,skipr`  r  rl   )ra  r&  ro   rO  r  )
2001-01-01r\  )r1   |S10r1   rn   )r   rS   r  rq   r<   rp   r   r  s       r&   'test_userconverters_with_explicit_dtype3TestFromTxt.test_userconverters_with_explicit_dtype  sU    56}}TSE%+E
D((./".U!<>T#r(   c                    Sn[        5        n[        US5       nUR                  SU-   S-   5        S S S 5        [        R                  " USS [
        SS[        0SS	9nS S S 5        [        R                  " S
UR                  S5      -   S4/SS[
        4/S9n[        WU5        g ! , (       d  f       Ny= f! , (       d  f       N^= f)Nr  r  s   skip,skip,2001-01-01s	   ,1.0,skipr`  r  rl   r  )ra  r&  ro   rO  r  r  rB  r\  )r1   z|U11r1   rn   )
r   r   r*   rS   r  rq   r  rp   r=   r   )r$   r  rX  r   r  r  s         r&   ,test_utf8_userconverters_with_explicit_dtype8TestFromTxt.test_utf8_userconverters_with_explicit_dtype  s    Z4dD!Q/$6EF "==D)/QH*13D  ((\DKK,@@"EF".U!<>T7# "! Zs!   B6B%,B6%
B3	/B66
Cc                     [        S5      n[        R                  " U5      n[        R                  " / SQ/ SQ/5      n[	        X#5        g )Nz1  2  3  4   5
6  7  8  9  10)r\  r]  r^  r_        @)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:   )ra  r   )rm   r&  C   )iz  r  rm   )rS   r  r   rp   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 )Nr=  r`  r:   c                 *    [        U =(       d    S5      $ r?  rA  rB  s    r&   r  *TestFromTxt.test_missing.<locals>.<lambda>  r  r(   rE  rF  r  r  s       r&   rG  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)ra  usemaskr   rl   rd   r:   )r   r   r   rd   r   rd   r   rd   r   rn   )	rS   r  r   rp   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 )Nrd   rl   r:   rm   r   rl  rm  r   rn  r   )rS   rp   rq   r   r<  rO   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&  rO  rM  rm   r'  acrn   )rS   r  r   rp   rq   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.9ru  rv  rw  rx  ry  rz  r{  r|  r}  r~  )r   rS   r  r  r#  r   )r$   r  r&  r  r  s        r&   "test_usecols_with_structured_dtype.TestFromTxt.test_usecols_with_structured_dtype	  se    45 }}&S-?(@BT&\FF#34T&\D$<0r(   c                     [         R                  " [        S5      SS9n[        U[         R                  " SS/5      5        g )Ns   1 2 3
4 5 6r   r  r\  r_  )rS   r  r   r   rp   )r$   r  s     r&   test_usecols_with_integer%TestFromTxt.test_usecols_with_integer  s.    }}VO4a@T288RH-.r(   c                    [         R                  " SS/S[        4S[        4/S9nSnSS0n[         R                  " [	        U5      4S	S
0UD6n[        XA5        [         R                  " [	        U5      4S	S0UD6n[        XA5        g )NrM  rh  rh   r   rn   rf  r&  rg  rO  r   r  )rh   r   )rS   rp   rq   r  r   r   )r$   r  r  r]   r  s        r&   test_usecols_with_named_columns+TestFromTxt.test_usecols_with_named_columns  s    xx(#uU|0LM9%}}VD\E7EfET }}VD\ ;%/;39;T r(   c                 v   [         R                  " 5          [         R                  " S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)Nr  zgenfromtxt: Empty input file:)messagerd   )r  )r   r   r   r   rS   r  r   rp   r  s      r&   r  TestFromTxt.test_empty_file#  sv    $$&##H6UV8D==&Drxx|, ==15Drxx|, '&&s   BB**
B8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%   r`  T)ro   ra  rX  r  r  rn   )	r   rS   ro   rr   rq   r  marp   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   rS   ro   rq   rr   r  rp   r   r  s        r&   r  TestFromTxt.test_shaped_dtype7  sr    01XX~U|c5\f-/ 0MM!&HHvsC)Y)?@A1 r(   c                    [        S5      nSSSS.n[        R                  " U4S SS.UD6n[        R                  " SS/S	S
/S[
        4S[
        4/S9n[        X45        [        UR                  UR                  5        UR                  S5        [        R                  " U4SS0UD6n[        R                  " SS/S	S
/S[        4S[        4/S9n[        X45        [        UR                  UR                  5        g )NzA,B
0,1
2,N/Ar`  N/AT)ra  missing_valuesr&  )ro   rX  r  )rl   r  FFFTr  Br^  ro   r   rX  )
r   rS   r  rz  rp   rr   r   r^  rO   rq   )r$   r  r]   r  r  s        r&   test_withmissingTestFromTxt.test_withmissing@  s    '("edK}}TFtFvF((FG,!/ ?#&*sCj!9; 	T#TYY-		!}}T:4:6:((FG,!/ ?#&,e!=? 	T#TYY-r(   c                    SnS SSS.nS[         4S[        4S[        4/n[        R                  " [        U5      4SS	0UD6n[        R                  " / S
Q/ SQUS9n[        XE5        X2S'   [        R                  " [        U5      4SSSS.SS.UD6n[        R                  " / S
Q/ SQUS9n[        XE5        [        R                  " [        U5      4SSSS.SS.UD6n[        R                  " / S
Q/ SQUS9n[        XE5        g )Nz4A, B, C
0, 0., 0j
1, N/A, 1j
-9, 2.2, N/A
3, -99, 3jr`  T)ro   ra  r&  r  r  r  r  r  ))r   r  y                )rd   r@  rw  )r  g@            8)r:   y              @)rY  r[  )r   r   rd   rY  r  ro   r  r  r  r   rd   rl   )r  rX  )rY  r[  rZ  r[  )r   r  r  )	rr   rq   r   rS   r  r   rz  rp   r   )r$   r  
basekwargsmdtyper  r  s         r&   test_user_missing_values$TestFromTxt.test_user_missing_valuesR  s!   I##E
*sElS'N;}}VD\ *% *(*(( < L!') 	T#$7}}VD\ 902su,E%)9-79 (( < L!') 	T#}}VD\ */1%+H$(* )* (( < L!') 	T#r(   c                 &   [         R                  " SS/S[        4S[        4/S9nSnS[        SS	S
SS.SSSS.S.n[         R                  " [	        U5      40 UD6n[         R                  " SS/S Vs/ s H
  oU[        4PM     snS9n[        XA5        [         R                  " [	        U5      4SS0UD6n[         R                  " SS/S Vs/ s H
  oU[        4PM     snS9n[        XA5        Sn[         R                  " [	        U5      S[        SSS9n[         R                  " / SQ/ SQ/5      n[        XA5        [         R                  " [	        U5      S[        SSS9n[         R                  " / SQ/ SQ/5      n[        XA5        g s  snf s  snf )N)r   r:   )rm   r@  rh   r   rn   zN/A, 2, 3
4, ,???r`  za,b,cr  r7  z???)r   r   rl   r   r@  )ra  ro   r&  r  filling_values)r   rl   r:   )rm   r   r@  abcrO  rs  ri  z1,2,*,4
5,*,7,8
*)ra  ro   r  r  )rd   rl   r   rm   )r&  r   rP  r  r  )rd   rl   r  rm   )r&  r  rP  r  rS   rp   rr   r  r   r   )r$   r  r  r]   r  r  data2s          r&   test_user_filling_values$TestFromTxt.test_user_filling_valuess  sd   xx+S#Jc
3KL#""&,1(F,-A$(?	A
 }}VD\4V4xxL1167A3x79T }}VD\E7EfExx+d3KdHd3KLT $}}VE]c,/Cxx|45T }}VE]c,/Dxx67T  8 4Ls   3F	
F
c           	          [        S5      n[        R                  " US SSSSS9n[        R                  " SS/SS	/S
[
        4S[        4/S9n[        X#5        [        UR                  UR                  5        g )NzA,B
0,1.5
2,-999.00r`  z-999.0T)ro   ra  r  r&  rX  )r   r  )rl   g      r  r  r  r  r  )	r   rS   r  rz  rp   rr   rq   r   r^  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ro   r  rX  r   rM  r[  )r^  )r   rS   r  rz  rp   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'  r[  r  r  r  r  )r   rS   r  rz  rp   r]  rr   r   r  s       r&   test_with_masked_column_various+TestFromTxt.test_with_masked_column_various  sc    -.}}T,14A((Iy1!*I 6#',ttSk!JL 	T#r(   c                   ^^ S/S-  n[        S5       H  nSUSU-  '   M     UR                  SS5        [        SR                  U5      5      mS	S S
S.mUU4S jn[        R
                  " [        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, er8  r`  Tra  ro   r&  c                  6   > [         R                  " T4SS0T D6$ )Nr  FrS   r  r]   mdatas   r&   r   )TestFromTxt.test_invalid_raise.<locals>.f  s    ==FeFvFFr(   r  abcdern   ra  r&  )r   insertr   r  r   r  r   r   r   rS   r   rr   rO   r   rC  r  )r$   r  r   r   mtestr  r]   r  s         @@r&   test_invalid_raiseTestFromTxt.test_invalid_raise  s     2%qA)DaL A'tyy'"TDA	G.2SZ$UBGGB.IA3x.IJK

1j"-- #4	1 /Js   'C2c                   ^^ S/S-  n[        S5       H  nSUSU-  '   M     UR                  SS5        [        SR                  U5      5      mS	S S
SS.mUU4S jn[        R
                  " [        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  r8  r`  TF)ra  ro   r&  r  c                  6   > [         R                  " T4SS0T D6$ )NrO  )r   rm   r  r  s   r&   r   6TestFromTxt.test_invalid_raise_with_usecols.<locals>.f  s    ==AA&AAr(   r  aern   rO  r  abr  )r   r  r   r  r   r  r   r   r   rS   r   rr   rO   r  )	r$   r  r   r   r  r  r  r]   r  s	          @@r&   test_invalid_raise_with_usecols+TestFromTxt.test_invalid_raise_with_usecols  s0    2%qA)DaL A'tyy'"TD',.	B.2SZ$UBGGB.FA3x.FGH

1e>V>v>SZ$''"t$<t!Xt$<=.4q*Aa*+U$ /G
 %=*s   (EE
;E$c                     S/S-  n[        SR                  U5      5      nSS 0nSUS Vs/ s H
  oD[        4PM     snSS	.n[        [        [
        R                  U40 UD6  g s  snf )
Nz1, 1, 1, 1, -1.1r  r8  rm   c                 *    SU R                  5        S3$ )N()r  r  s    r&   r  5TestFromTxt.test_inconsistent_dtype.<locals>.<lambda>  s    Qqxxzl!#4r(   r`  r  r<   )ra  r  ro   r  )r   r  rr   r   rC  rS   r  )r$   r  r  r  r  r]   s         r&   test_inconsistent_dtype#TestFromTxt.test_inconsistent_dtype  si    "#b(tyy'45
"*29:'QC':Qj"--A&A  ;s   A$c                     Sn[         R                  " [        U5      SS SS9n[         R                  " SS/S[        4S[        4S	[
        4/S
9n[        X#5        g )N0, 1, 2.3
4, 5, 6.7r`  f%02ira  ro   
defaultfmtr   rd   ffffff@)rm   r&  @f00f01f02rn   )rS   r  r   rp   rr   rq   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  r`  r  r  r  r\  r  r_  rJ  r  rn   rS   r  r   rq   rp   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  r`  rg  r  r  r  r  rn   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.7r`  Tr  r  r  r  rn   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  r`  zf_%02ir  )r   r\  r  )rm   rJ  r  f_00f_01f_02rn   rS   r  r   rr   rq   rp   r   r  s       r&   test_easy_structured_dtype&TestFromTxt.test_easy_structured_dtype  s^    %fTlc$'#68Mxx|4 &}vuoOQU!r(   c                    SnSS SS.n[         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        U5      40 UD6n[        US	   R                  [        L 5        S S S 5        [        R                  " S
/SS[        4S/S9n[        WU5        [         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        U5      4SS0UD6n[        US	   R                  [        L 5        S S S 5        [        R                  " S/SS[        4S/S9n[        XE5        g ! , (       d  f       N= f! , (       d  f       NJ= f)Nz01/01/2003  , 1.3,   abcder`  r<   )ra  ro   r  Tr   r   r1   r   )z01/01/2003  ?z   abcde)r  z|S12r  )r  r  rn   	autostrip)z
01/01/2003r  r  )r  rC  )r  z|S5)r   r   r   r   rS   r  r   r   r  rp   rq   r   )r$   r  r]   r   r  r  s         r&   test_autostripTestFromTxt.test_autostrip  s0   +"TwG$$D1Q##Hb2KLMM&,9&9EAaDMM%>>? 2 xx:;-e}mLNUD!$$D1Q##Hb2KLMM&,I$I&IEAaDMM%>>? 2 xx56-e}mLNU! 21 21s   AE?AE 
E 
E.c           	         Sn[         R                  " [        U5      SSS S9nS[        4S[        4S[        4/n[         R
                  " SUS	9n[        X$5        [         R                  " [        U5      SSS S
S
S9nS[        4S[        4S[        4/n[         R
                  " SUS	9n[        X$5        [         R                  " [        U5      SSS S
S9nS[        4S[        4S[        4/n[         R
                  " SUS	9n[        X$5        g )NzA.A, B (B), C:C
1, 2, 3.14r`  Tra  r&  ro   AAB_BCC)rd   rl   gQ	@rn   r1   ra  r&  ro   replace_spacedeletecharsA.AB (B)C:Cra  r&  ro   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, 3r`  Tr  r  r  r  r   rn   r1   r  r  r  r  r  r  )rS   r  r   rr   rp   r   r  s        r&   test_replace_space_known_dtype*TestFromTxt.test_replace_space_known_dtype8  s    (}}VC['*$cCSkE3<$=
xx	4T }}VC['*$c+-2? clWcNUCLA
xx	4T }}VC['*$c)+- clWcNUCLA
xx	4T r(   c                 t   SnSSS.n[         R                  " SS/S Vs/ s H
  o3[        4PM     snS9n[         R                  " [	        U5      4S	S 0UD6n[        XT5        [         R                  " SS/S Vs/ s H
  o3[        4PM     snS9n[         R                  " [	        U5      40 UD6ng s  snf s  snf )
NzA,,C
0,1,2
3,4,5r`  Tr  r  rn  )r  r  r  rn   ro   )rS   rp   rr   r  r   r   rq   )r$   r  r]   r  r  r  s         r&   test_incomplete_names!TestFromTxt.test_incomplete_namesP  s    #"T2xxI.1AB1AA3x1ABD}}VD\@@@T xxI.3CD3Ca5z3CDF}}VD\4V4 C
 Es   B0
9B5
c                     Sn[         R                  " [        U5      [        [        [        4SS9n[         R
                  " SS/S[        4S[        4S[        4/S9n[        X#5        g )	Nz1 2 3
 4 5 6rh   r  r   rM  r  r  rn   r  )r$   r  r  r  s       r&   test_names_auto_completion&TestFromTxt.test_names_auto_completion^  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  Er`  )r   rl   rm   T)ro   ra  rO  r&  )rS   r  r   rr   r   ro   r&  )r$   r  
ctrl_namesr  s       r&   test_names_with_usecols_bug1636+TestFromTxt.test_names_with_usecols_bug1636g  s    ;$
}}VD\$'c?c%.d< 	TZZ%%z2}}VD\$'c?c%4DB 	TZZ%%z2}}VD\#&#%4DB 	TZZ%%z2r(   c                 |   SnSSS S.n[         R                  " SS/S[        4S[        4S	[        4/S
9n[         R                  " [        U5      40 UD6n[        XC5        SSS S.n[         R                  " SS/S[        4S[        4S	[        4/S
9n[         R                  " [        U5      40 UD6n[        XC5        g )Nz-    A    B   C
    0    1 2.3
   45   67   9.)r&  r&  rm   Tr  r  )r  rP  rL  r  r  r  rn   r&  )rS   rp   rr   rq   r  r   r   r$   r  r]   r  r  s        r&   test_fixed_width_names"TestFromTxt.test_fixed_width_namesz  s    @(4$Gxxl3 #SzC:U|DF}}VD\4V4T  4$?xxl3 #SzC:U|DF}}VD\4V4T r(   c                     SnSS SS.n[         R                  " / SQ/ SQ/ SQ/[        S9n[         R                  " [	        U5      40 UD6n[        XC5        g )	Ns   1, 2, 3
1, , 5
0, 6, 
r`  r@  )ra  ro   r  r   )rd   r@  r&  )r   r'  r@  rn   r  r	  s        r&   test_filling_valuesTestFromTxt.test_filling_values  sI    +"TTJxxL,?sK}}VD\4V4T r(   c           	      d   [         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        S5      S S SSS9n[        US	   R                  [        L 5        S S S 5        [        WS
   S5        [         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        S5      S S SSS9n[        US	   R                  [        L 5        S S S 5        [        US
   S5        g ! , (       d  f       N= f! , (       d  f       N/= f)NTr   r   r1   ztest1,testNonetherestofthedatar`  r<   ro   rl  ra  r  r   rd   s   testNonetherestofthedataztest1, testNonetherestofthedatas    testNonetherestofthedata)
r   r   r   r   rS   r  r   r   r  r   )r$   r   r  s      r&   test_comments_is_none!TestFromTxt.test_comments_is_none  s    $$D1Q##Hb2KL==(H!I'+dc*13D AaDMM%>>? 2 	T!W9:$$D1Q##Hb2KL==(I!J'+dc*13D AaDMM%>>? 2 	T!W:; 21 21s   ADAD!
D!
D/c           	         SnSnSU-   S-   nX#-   U-   n[         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        U5      S S S	S
S9n[        US   R                  [        L 5        S S S 5        [        WS   S5        [        US   SU-   5        [        US   S5        [        R
                  " [        U5      S S S	SS9n[        US   S5        [        US   SUR                  S5      -   5        [        US   S5        [         R                  " SS9 n[         R                  " SS[        5        [        R
                  " [        SU-   5      S S S	S
S9n[        US   R                  [        L 5        S S S 5        [        US   S5        [        US   SU-   5        g ! , (       d  f       GN<= f! , (       d  f       NB= f)Ns      norm1,norm2,norm3
   test1,testNonethe   ,test3
Tr   r   r1   r`  r<   r  r   )rd   r      test1)rd   rd      testNonether      test3r9   r   testNonethetest3   0,testNonether  r  )r   r   r   r   rS   r  r   r   r  r   r=   )r$   r9   normencr%   r   r  s          r&   test_latin1TestFromTxt.test_latin1  s    %"V+k9J$$D1Q##Hb2KL=='+dc*13D AaDMM%>>? 2 	T$Z*T$Z&!89T$Z*}}VAY#'$#&.0 	T$Z)T$Zx1H!HIT$Z)$$D1Q##Hb2KL==(86(A!B'+dc*13D AaDMM%>>? 2 	T$Z#T$Z&!89/ 21  21s   AF90AG9
G
Gc                     SnU R                  [        U5      S SS9n[        U[        R                  " UR                  S5      R                  5       5      5        g r  )r  r   r   rS   rp   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[        5        [        R
                  " [        U5      S S S	S
S9n[        US   R                  [        L 5        S S S 5        [        R                  " / SQSSU-   S// SQ/5      n[        WU5        g ! , (       d  f       N>= f)Nr  r  r  r  Tr   r   r1   r`  r<   r  r   )s   norm1s   norm2s   norm3r  r  r  )r   r   r   r   rS   r  r   r   r  rp   r   )r$   r  r  r  r%   r   r  ctls           r&   test_utf8_byte_encoding#TestFromTxt.test_utf8_byte_encoding  s    %"T)K7J$$D1Q##Hb2KL=='+dc*13D AaDMM%>>? 2 hh/NT18</1 2 	4% 21s   AB<<
C
c           	         Sn[        5        n[        US5       nUR                  SU-   S-   S-  5        S S S 5        [        R                  " US S SSS9n[        R
                  " S	S
UR                  S5      -   S/S	S
UR                  S5      -   S//[        R                  S9n[        XE5        [        US5       nUR                  SU-   5        S S S 5        [        R                  " US S SSS9n[        US   S5        [        US   S
UR                  S5      -   5        S S S 5        g ! , (       d  f       N= f! , (       d  f       Np= f! , (       d  f       g = f)Nr  r  r  r  rl   r`  r  r  r   r  r  rn   r  r  r   r  )
r   r   r*   rS   r  rp   r=   r  r   r   )r$   r  rX  r   r  r%  s         r&   test_utf8_fileTestFromTxt.test_utf8_file  s4   Z4dD!Q-4{BaGH "==TD+.BD((}t{{7/CCWM}t{{7/CCWMO 77$C t) dD!Q(4/0 "==TD+.BDdQ'd]T[[5I%IJ# Z!! "! Zs;   ED)BE;D:AE)
D7	3E:
E	E
Ec           
      @   SnSn [         R                  " 5       nUR                  U5        [        5        n[        US5       nUR                  S5        UR                  SU-   S-   5        UR                  SU-   S	-   5        S S S 5        [        R                  " S
S9 n[        R                  " SS[        5        [        R                  " US S SSS9n[!        US   R"                  [        L 5        S S S 5        [        R$                  " / SQSUS/SSU-   S//[        R&                  S9n[)        WU5        S S S 5        g ! [        [        4 a    [
        R                  " S5         GN=f = f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nr  u   öüözTSkipping test_utf8_file_nodtype_unicode, unable to encode utf8 in preferred encodingr  znorm1,norm2,norm3
znorm1,z,norm3
ztest1,testNonethez,test3
Tr   r   r1   r`  r<   r  r   )norm1norm2norm3r,  r.  r   r  r  rn   )rY  rZ  r  UnicodeErrorImportErrorr   rJ  r   r   r*   r   r   r   r   rS   r  r   r  rp   r  r   )	r$   r  r9   r  rX  r   r   r  r%  s	            r&   test_utf8_file_nodtype_unicode*TestFromTxt.test_utf8_file_nodtype_unicode  sq   	G224HKK!
 Z4dD!Q-.6)J67+d2Z?@ " ((5''"(AC}}T/2WF !)BBC 6 ((0vw/}t3W=? 77	$C
 tS)# Z	 k* 	GKK F G	G
 "! 65 ZsO   &E  FA E-FAE>2AF &E*)E*-
E;	7F>
F	F
F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  [        R                  " 5          [        R                  " S[        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:   )r:  rd   rl   rm   r&  r'  rP  r  rQ  r   r   z1 1
2 2
0 
3 3
4 4
5  
6  
7  
r\  r]  )r  r:  r  F)r:  r  r^  r_  z"a b
#c d
1 1
2 2
#0 
3 3
4 4
5  5
T)r  r:  r&  ))r\  r\  )r]  r]  )r^  r^  )r   <f8)r1  r4  rn   )r:  ro   )r_  r_  )rJ  rJ  )r   rS   r  r   r   rC  rp   r   r   r  r   ro   )r$   r  r  a1a2r  r  s          r&   r;  TestFromTxt.test_max_rows	  s(   +Tl]]3+]]3R1a&1a&1a&12R1a&1b'*+ 	j"--J 9}}VD\A6((RHr2h/0T# 	j"--1 	" 	j"--J $$&!!(,=>==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   2B4I;;
J	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   )rS   r   r  r   r   r*   r  r   )r$   r  r  r  r  rM   r   r  s           r&   test_gft_using_filename#TestFromTxt.test_gft_using_filenameD	  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   )rS   r   r  r   r  GzipFiler*   r   r   r   r   r  )	r$   r  r  r  r  r%   r  rM   r   s	            r&   test_gft_from_gzipTestFromTxt.test_gft_from_gzipR	  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   L   #    [        S5       H  n [        U  5      v   M     g 7fr"  )r   r   r#  s    r&   r,  3TestFromTxt.test_gft_using_generator.<locals>.countd	  s     2Yo% s   "$r   )rS   r  r   r   r%  s      r&   test_gft_using_generator$TestFromTxt.test_gft_using_generatorb	  s+    	& mmEG$3		".r(   c                    [        S5      n[        R                  " US S9n[        UR                  R
                  / SQ5        [        UR                  S   R                  [        R                  L 5        [        UR                  S   R                  [        R                  L 5        [        UR                  S   R                  [        R                  L 5        [        US   S5        [        US   S5        [        US   S	5        g )
Nz%73786976294838206464 17179869184 1024rn   )r  r  r  r  r  r  g      Dl        i   )r   rS   r  r   ro   r&  r   r  rg  r  int_r   r  s      r&   test_auto_dtype_largeint$TestFromTxt.test_auto_dtype_largeintk	  s     =>}}T.TZZ%%'9:

4 %%34

4 %%12

4 %%01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.0r`  T)ra  r  )r\  r_  rK  r  )r]  rJ  r  r\  )r^  r  rL  r]  )r   rS   rs  r   rp   )r$   r  rh   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   rU  r  r  r  r  r  r  )r   rS   r  r   ro   r   rp   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)ro   r  r  )r   rS   rp   r  r#  r   r   ro   )r$   r  expectedr  r`   results         r&   test_unpack_auto_dtype"TestFromTxt.test_unpack_auto_dtype	  s     )*HHc3Z("((B8*<bhhSz>RS}}STGLx.KCs+FLL1 /r(   c                     [        S5      nSSS.n[        R                  " SS/[        R                  S9n[        R                  " XSS	9n[        X45        [        UR                  UR                  5        g )
Nz21
35r   r   r%  r  r  rn   Tr  )r   rS   rp   r0  r  r   r   ro   r$   r  r   rP  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 )
Nr;  r   rU  r%  rl  rn   Tr  r0   )	r   rS   rp   r0  r  r   r   rf   ro   rV  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  )rS   rs  r   r  r   )r$   r\  r  rh   r   s        r&   r  TestFromTxt.test_ndmin_keyword	  s9     JJx}D1MM(3-t41 r(   r0   N)^r2   r3   r4   r5   rX  rS   r  r  r   ru   r}   r  ri  r  r  r  r  r  r  r  r  r  r  r  r  rR  r  r  r   r  r  r  r   r2  r  r?  rD  rG  rM  rQ  rG  ra  r  rj  rm  rp  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&  r)  r1  r;  r9  r?  rD  rH  rK  r  rR  rW  rZ  r   r   r2  rr   r  r7   r0   r(   r&   r  r  H  s   BMM*H$
*
*
$$	!F08. $$
$!>$;
$$$	$	$
%B$
$$"F6'$
$$$$(+*!1/
	!
-$!.$$B!8.$$1(%0B""""""&!0!05!3&!!<":<H
&"K*!*F4$l)@ /'2>521
1 [[VY/!s ! 0!r(   r  c                      \ rS rSrS rS rS r\R                  R                  \
SS9\R                  R                  S\\/5      S 5       5       r\R                  R                  S\\/5      S	 5       r\R                  R                  S\\/5      S
 5       r\R                  R                  S\\/5      S 5       r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?rl   r:   rm   )r   r	   rS   rp   r<  rs  r   )r$   rX  rh   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)NrV  r   rd   rl   r:   rm   r   r	   rS   rp   rr   r   rT   r   r$   rX  rh   r  s       r&   test_save_loadTestPathUsage.test_save_load	  s_    V$:D1a&1a&)3/AGGD774=Dt' %$$   A$A77
Bc                    [        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S S S 5        g ! , (       d  f       g = f)	NrV  r   rd   rl   r:   rm   r   r   rg  rh  s       r&   test_save_load_memmap#TestPathUsage.test_save_load_memmap	  se    V$:D1a&1a&)3/AGGD7743/Dt' %$$rk  zmemmap doesn't work correctlyr   rq  c                 V   [        SS9 nU" U5      n[        R                  " SS/SS//[        5      n[        R                  " X#5        [        R
                  " USS9nS	US
   S
'   S	US
   S
'   A[        R
                  " U5      n[        XS5        S S S 5        g ! , (       d  f       g = f)NrV  r   rd   rl   r:   rm   zr+rm  r&  r   )r   rS   rp   rr   r   rT   r   )r$   rq  rX  rh   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774=Dt' %$$s   BB
B(c                    [        SS9 nU" U5      n[        R                  " USS9  [        R                  " U5       n[	        US   S5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = fNr   r   r   r!  r"  )r   rS   r   rT   r   r$   rq  rX  r  s       r&   test_savez_loadTestPathUsage.test_savez_load	  s]    V$ &DHHT~.$"4;?  %$  %$s"   4A0AA0
A-	)A00
A>c                     [        SS9 nU" U5      n[        R                  " USS9  [        R                  " U5      n[	        US   S5        UR                  5         S S S 5        g ! , (       d  f       g = frt  )r   rS   savez_compressedrT   r   rR   ru  s       r&   test_savez_compressed_load(TestPathUsage.test_savez_compressed_load	  sV    V$ &D.9774=DtE{N;JJL %$$s   AA&&
A4c                     [        SS9 nU" U5      n[        R                  " SS/5      n[        R                  " X#5        [        R                  " U5      n[        X45        S S S 5        g ! , (       d  f       g = f)Nrc  r   r   r   )r   rS   rp   r<  r  r   )r$   rq  rX  rh   r  s        r&   test_genfromtxtTestPathUsage.test_genfromtxt
  sW    V$ &D&&)*AJJt==&Dq' %$$s   AA++
A9r0   N)r2   r3   r4   r5   rd  ri  rn  r   r   r  r   r2  r	   r  rq  rv  rz  r}  r7   r0   r(   r&   ra  ra  	  s    %(	 [[w'FG[[_tSk:
( ; H
( [[_tSk:@ ;@ [[_tSk: ; [[_tSk:( ;(r(   ra  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   r<  r   r   )
rS   r   r   r  r>  r   rR   rO   r   rT   rh   r%   r   s      r&   test_gzip_loadr  
  sn    
		 A	Aac*AGGAMGGIFF1Iac*Arwwqz1%r(   c                   &    \ rS rSrS rS rS rSrg)
JustWriteri
  c                     Xl         g r!   baser$   r  s     r&   r"   JustWriter.__init__
      	r(   c                 8    U R                   R                  U5      $ r!   )r  r*   r#   s     r&   r*   JustWriter.write
  s    yyq!!r(   c                 6    U R                   R                  5       $ r!   )r  rN   r  s    r&   rN   JustWriter.flush"
  s    yy  r(   r  N)r2   r3   r4   r5   r"   r*   rN   r7   r0   r(   r&   r  r  
  s    "!r(   r  c                   *    \ rS rSrS rS rSS jrSrg)
JustReaderi%
  c                     Xl         g r!   r  r  s     r&   r"   JustReader.__init__&
  r  r(   c                 8    U R                   R                  U5      $ r!   )r  rm  )r$   r   s     r&   rm  JustReader.read)
  s    yy~~a  r(   c                 8    U R                   R                  X5      $ r!   )r  rO   )r$   offwhences      r&   rO   JustReader.seek,
  s    yy~~c**r(   r  Nr  )r2   r3   r4   r5   r"   rm  rO   r7   r0   r(   r&   r  r  %
  s    !+r(   r  c                  0   [         R                  R                  S5      n [        5       n[        U5      n[         R                  " X 5        UR                  5         UR                  S5        [        U5      n[        [         R                  " U5      U 5        g )Nr  r   )
rS   r   r   r  r   rN   rO   r  r   rT   r  s      r&   test_ducktypingr  0
  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   r<     1 2 3
r   r  r   r  r   )r   r  r>  r*   rR   rO   r   r   rm  rS   rs  r   )r%   r  rM   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   r<  r  r   r   r   )	r   r  r>  r*   rR   rO   r   rS   rs  )r%   r   s     r&   test_gzip_loadtxt_from_stringr  S
  s[    	Aac*AGGJGGIFF1Iac*Arzz!}i0r(   c                  l   [        5       n [        R                  " S5      n[        R                  " S5      n[        R                  " XUS9  U R	                  S5        [        R
                  " U 5      n[        SU;   5        [        SU;   5        [        SUR                  5       ;   5        [        SUR                  5       ;   5        UR                  5        H)  u  pE[        US;   5        [        UR                  S5        M+     UR                  5        H  n[        UR                  S5        M     [        [        UR                  5       5      S:H  5        U H  n[        US;   5        M     [        SUR                  5       ;   5        UR                  S5      US   :H  R                  5       (       d   eg )N)r:   r:   )r   r   r   r   r   rl   )r   rS   ry  r   rO   rT   r   keysitemsr   rf   valuesr   rL   all)r%   r   r   rT  r   rh   s         r&   test_npzfile_dictr  ^
  s<   	A
A
AHHQqFF1I

AC1HC1HC1668OC1668O	Z QWWf%  XXZQWWf%  C	Na Z   C1668OEE#J!C& %%''''r(   zPython lacks refcountsr   z!garbage collector is global statec            	         [        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   )rh   u1rl   )r   r  rl   z0 1 2 3rn   )r  r  )
r   rS   r   rO   r   rT   rs  r   r   rp   )r   r   r   s      r&   test_load_refcountr  }
  s     		AHHQ	FF1I		

 
 FF1I
.	)B		JJvi(3Q"2!32>? 
	 
	
 
	s   C=?C
C
C$c                     [        5       n [        R                  " U S5        [        R                  " U S5        U R                  S5        [        R                  " U 5      nUS:X  d   e[        R                  " U 5      nUS:X  d   e[
        R                  " [        5         [        R                  " U 5        S S S 5        g ! , (       d  f       g = f)Nrd   rl   r   )r   rS   r   rO   rT   r   r   EOFError)r   out1out2s      r&   #test_load_multiple_arrays_until_eofr  
  s    	AGGAqMGGAqMFF1I771:D199771:D199	x	 

 
!	 	 s    C  
Cc                     [         R                  " SS/[        S9n [        SS9 n[         R                  " X5        S S S 5        [        SS9 n[
        R                  " [        SS9   [         R                  " XSS	9  S S S 5        S S S 5        [        SS9 n[         R                  " X5        S S S 5        [        SS9 n[
        R                  " [        SS9   [         R                  " XSS	9  S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N[= f! , (       d  f       g = f)
Nrd   hellorn   r   r   z$Object arrays cannot be saved when.*r   F)rG   )	rS   rp   rx   r   r   r   r   rC  ry  )	obj_arrayr   s     r&   test_savez_nopickler  
  s    !WV4I		 C
  
! 
	 C]]:-STHHS%8 U 
! 
	 C
C+ 
! 
	 C]]:-STUC U 
!	  
!	  UT 
!	  
!	  UT 
!	 s_   C?D!'D=D!D2>EE.E?
D
D	D!!
D/2
E 
E	E
E"r!   )Tr  rY  rY   r  rP   r  r>   r   r   ctypesr   r   ior   r   multiprocessingr   r   pathlibr	   tempfiler
   r   numpyrS   numpy.marz  numpy._utilsr   numpy.exceptionsr   	numpy.libr   numpy.lib._iotoolsr   r   numpy.ma.testutilsr   numpy.testingr   r   r   r   r   r   r   r   r   r   r   numpy.testing._private.utilsr   r   maxsizer0  r  r  r0  r  r  r?   rB   r   r   r4  r  r  r\  r  ra  r  r  r  r  r  r  r  r   r   r1  r   r  r  r  r0   r(   r&   <module>r     s     	 	 
         .  '      6 ! @ +    9>W >& ;;GH
0h% h%V?= ?dM dN` `D	E% E%Ph@+ h@T?6 ?6Jy!+ y!x#D( D(N& ! !+ +&'*1(> $-EF"EF@  G G@$
D}R  G
  Hs$   6F* =F8 *F54F58GG