ó 2ÄÈ[c@`sddlmZmZmZddlZddlZddlmZddlZ ddl m Z m Z m Z mZddlmZmZmZmZmZmZddlmZdefd„ƒYZd efd „ƒYZd „Zd efd „ƒYZdefd„ƒYZdS(i(tdivisiontabsolute_importtprint_functionN(tdate(tassert_t assert_equaltassert_allcloset assert_raises(t LineSplittert NameValidatortStringConverterthas_nested_fieldst easy_dtypet flatten_dtype(tunicodetTestLineSplittercB`sDeZdZd„Zd„Zd„Zd„Zd„Zd„ZRS(sTests the LineSplitter class.cC`scd}tƒ|ƒ}t|dddddgƒtdƒ|ƒ}t|dddddgƒdS( sTest LineSplitter w/o delimiters 1 2 3 4 5 # testt1t2t3t4t5tN(RR(tselftstrgttest((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_no_delimiters cC`s`d}tdƒ|ƒ}t|ddddddgƒtd ƒ|ƒ}t|d dgƒd S( sTest space delimiters 1 2 3 4 5 # testt RRRRRRs s1 2 3 4N(RR(RRR((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_space_delimiters cC`sfd}tdƒ|ƒ}t|dddddgƒd}tdƒ|ƒ}t|d d dgƒd S( sTest tab delimiters 1 2 3 4 5 6s RRRRs5 6s 1 2 3 4 5 6s1 2s3 4N(RR(RRR((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_tab_delimiter%s cC`s²d}tdƒ|ƒ}t|ddddddgƒd }tdƒ|ƒ}t|ddddddgƒd }td dd d ƒ|ƒ}t|ddddddgƒdS(sTest LineSplitter on delimiters 1,2,3,4,,5t,RRRRRRs 1,2,3,4,,5 # tests 1,2,3,4,,5 % testt delimitertcommentst%N(RR(RRR((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_other_delimiter.sc C`sŽd}tdƒ|ƒ}t|dddddddgƒd }td ƒ|ƒ}t|d gƒd }td ƒ|ƒ}t|d gƒd S(s'Test LineSplitter w/ fixed-width fieldss 1 2 3 4 5 # testiRRRRRRs 1 3 4 5 6# testis1 3 4 5 6iN(RR(RRR((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_constant_fixed_width=s"cC`scd}td ƒ|ƒ}t|ddddgƒd}td ƒ|ƒ}t|dd d gƒdS( Ns 1 3 4 5 6# testiiRRs4 5t6i s3 4s5 6(iiii(iii (RR(RRR((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_variable_fixed_widthKs ( t__name__t __module__t__doc__RRRR!R"R$(((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyRs    tTestNameValidatorcB`s5eZd„Zd„Zd„Zd„Zd„ZRS(cC`sçddddg}tƒj|ƒ}t|ddddgƒtdtƒj|ƒ}t|ddddgƒtdd ƒj|ƒ}t|ddddgƒtdd ƒj|ƒ}t|dd ddgƒtttdd ƒd S(sTest case sensitivitytAtatbtctcase_sensitivetA_1tBtCtuppertlowerta_1tfoobarN(R tvalidateRtFalseRt ValueError(RtnamesR((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_case_sensitivityYscC`sVddddg}tddddgƒ}|j|ƒ}t|dddd gƒd S( sTest excludelisttdatestdatas Other Datatmaskt excludelisttdates_tdata_t Other_Datatmask_N(R R5R(RR8t validatorR((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_excludelisthscC`s•d }tƒ}t||ƒdddgƒd }t||ƒdddgƒd }t||ƒdddgƒd }t||ƒdddgƒdS( sTest validate missing namesR*R+R,Rtf0tf1tf2N(R*R+R,(RR+R,(R*R+R(RRDR(R R(RtnamelistRB((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_missing_namesos cC`sZd }tƒ}t||ddƒd ƒt||ddddƒdddd d gƒd S(sTest validate nb namesR*R+R,tnbfieldsiit defaultfmtsg%itg0tg1N(R*R+R,(R*(R R(RRGRB((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_validate_nb_names{s  cC`sKd}tƒ}t||ƒdkƒt||ddƒdddgƒdS(sTest validate no namesRIiRDRERFN(tNoneR RR(RRGRB((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_validate_wo_namesƒs (R%R&R9RCRHRMRO(((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyR(Ws    cC`sttj|dƒd ŒS(Ns%Y-%m-%di(Rttimetstrptime(ts((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyt_bytes_to_datestTestStringConvertercB`sheZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z RS( sTest StringConvertercC`s3ttdƒ}t|jdƒt|jdƒdS(s"Test creation of a StringConverteriayþÿiN(R tintRt_statustdefault(Rt converter((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyt test_creation”scC`sitƒ}t|jdƒt|jdƒdƒt|jdƒddljj}t|j|j ƒj |j|j ƒj kƒ}t|jdƒdƒt|jd|ƒt |jdƒdƒt|jd |ƒt|jd ƒt d ƒƒt|jd |ƒx]d d d gD]L}|j|ƒ}tt|ƒtkƒt|d ƒt|jd|ƒqWdS(sTests the upgrade method.it0iNt 17179869184Is0.git0jiR*uai(R RRVtupgradetnumpy.core.numerictcoretnumericRUtdtypetint_titemsizetint64RtcomplexRttypeR(RRXtnxt status_offsetRRtres((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyt test_upgradešs" 0 cC`s—tdd ƒ}|jdƒt|dƒdƒt|dƒ|jƒt|dƒ|jƒt|dƒ|jƒy|dƒWntk r’nXdS( s Tests the use of missing values.tmissing_valuestmissingtmissedRZiRtmissN(RlRm(R R]RRWR7(RRX((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyt test_missing¿s   cC`s°t}tj|tdddƒƒt|tdddƒƒ}|dƒ}t|tdddƒƒ|dƒ}t|tdddƒƒ|dƒ}t|tdddƒƒdS( sTests updatemapperiÐis 2001-01-01iÑs 2009-01-01iÙRN(RSR tupgrade_mapperRR(Rt dateparsertconvertR((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_upgrademapperÍs   cC`s=tj}ttƒ}t|j|ƒtt|dƒƒdS(sAMake sure that string-to-object functions are properly recognizedRWN(R t_mapperRSRRthasattr(Rt old_mappertconv((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_string_to_objectÙs  cC`s tdddddƒ}|jdƒt|jdƒt|jtjtƒƒtdddddƒ}|jdƒt|jdƒt|jtjtƒƒdS(s+Make sure we don't lose an explicit defaultRkRRWiüÿÿs 3.14159265iN( R RNR]RRWRftnpRatfloat(RRX((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_keep_defaultàs   cC`s,ttddddƒ}t|jdƒdS(s'Check that we don't lose a default of 0RWiRksN/AN(R RURRW(RRX((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_keep_default_zeroîs cC`s8ttddddƒ}t|jtddgƒƒdS(s*Check that we're not losing missing valuesRWiRksN/ARN(R RURRktset(RRX((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_keep_missing_valuesôs cC`sQttjddƒ}d}t||ƒdkƒd}t||ƒdkƒdS(s/Check that int64 integer types can be specifiedRWis-9223372036854775807I€t9223372036854775807IÿÿÿÿÿÿÿN(R RyRdR(RRXtval((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_int64_dtypeûs cC`s5ttjddƒ}d}t||ƒdkƒdS(s0Check that uint64 integer types can be specifiedRWit9223372043271415339l+&ì|N(R Rytuint64R(RRXR€((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_uint64_dtypes( R%R&R'RYRjRoRsRxR{R|R~RR„(((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyRT‘s  %      tTestMiscFunctionscB`s#eZd„Zd„Zd„ZRS(cC`s”tjtƒ}tt|ƒtƒtjddtfgƒ}tt|ƒtƒtjdtfddtfd gfgƒ}tt|ƒtƒdS( sTest has_nested_dtypeR)s|S3R/tBAtBBs|S1N(R)s|S3(R‡s|S1(RyRaRzRR R6RUtTrue(Rtndtype((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_has_nested_dtype s -cC`sEt}tt|ƒtjtƒƒd}tt|ƒtjddgƒƒtt|ddƒtjddgƒƒd}tt|d d ƒtjd d!gƒƒd}tt|d dƒtjd"d#gƒƒd}tt|d dƒtjd$d%gƒƒtt|d d ddƒtjd&d'gƒƒdtfdtfg}tt|ƒtjdtfdtfgƒƒtt|d dƒtjd tfd tfgƒƒtt|d d ƒtjd tfdtfgƒƒtt|d dƒtjd tfd tfgƒƒtttf}tt|ƒtjdtfdtfdtfgƒƒtttf}tt|d dƒtjd tfd tfdtfgƒƒtjtƒ}tt|d dƒtjgd(D]}|tf^q̃ƒtjtƒ}tt|d dddgddƒtjgd)D]}|tf^q%ƒƒdS(*sTest ndtype on dtypessi4, f8RDti4REtf8RJs field_%03it field_000t field_001R8sa, bR*R+sa, b, cs, bsf%02itf00R)R/sa,bsa,b,cRFR,Rtf01tf02N(RDR‹(RERŒ(RR‹(RŽRŒ(R*R‹(R+RŒ(R*R‹(R+RŒ(RDR‹(R+RŒ(R*R‹(RRŒ(R*R+R,(RRR‘(RzRR RyRaRU(RR‰t_((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_easy_dtypesN .""" ++)cC`sAtjd dgƒ}t|ƒ}t|ttgƒtjdddgfdtfgƒ}t|ƒ}t|tjdƒtjdƒtgƒtjdtdffdtd ffgƒ}t|ƒ}t|ttgƒt|tƒ}t|tgdtgd ƒtjddgƒ}t|ƒ}t|ttgƒd S(sTesting flatten_dtypeR*RŒR+taas|S1tabs|S2iiR)R/N(R*RŒ(R+RŒ(R”s|S1(R•s|S2(R*R)((R*R)RŒ(R+R/((R+R/RŒ(RyRaR RRzRURˆ(Rtdttdt_flat((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyttest_flatten_dtypeNs ' (-  (R%R&RŠR“R˜(((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyR… s 9(t __future__RRRtsysRPtdatetimeRtnumpyRyt numpy.testingRRRRtnumpy.lib._iotoolsRR R R R R t numpy.compatRtobjectRR(RSRTR…(((s</tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test__iotools.pyts   ".E6 y