zmc
2023-08-08 e792e9a60d958b93aef96050644f369feb25d61b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
U
­ý°d—&ã@sjddlmZddlZddlZddlZddlmZmZm    Z    m
Z
ddl m Z ddlmZmZGdd„dƒZdS)é©Ú    timedeltaN)Ú    TimedeltaÚTimedeltaIndexÚtimedelta_rangeÚ to_timedelta)ÚTimedeltaArrayÚsequence_to_td64nsc@s¨eZdZdd„Zej ddddg¡dd„ƒZd    d
„Zd d „Z    d d„Z
dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd„Zdd „Zd!d"„Zd#d$„Zd%d&„Zd'S)(ÚTestTimedeltaIndexc    Cs®t dd¡}tj|gtd}d}tjt|dt|ƒW5QRXtjt|dt     |¡W5QRXtjt|dt
|ƒW5QRXtjt|dt |ƒW5QRXdS)NÚNaTÚns©Údtypez!Invalid type for timedelta scalar©Úmatch) ÚnpZ
datetime64ÚarrayÚobjectÚpytestÚraisesÚ    TypeErrorrrZ_from_sequencer    r)ÚselfZnatÚarrÚmsg©rúhd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/indexes/timedeltas/test_constructors.pyÚtest_array_of_dt64_nat_raisess z0TestTimedeltaIndex.test_array_of_dt64_nat_raisesÚunitÚYÚyÚMc    Cs2d}tjt|dtdddg|ƒW5QRXdS)Nz/Units 'M', 'Y', and 'y' are no longer supportedrééé)rrÚ
ValueErrorr)rrrrrrÚtest_unit_m_y_raises'sz'TestTimedeltaIndex.test_unit_m_y_raisescCs2tjdtjd}t|dd}|jjj|ks.t‚dS)Né
r F)Úcopy)rZarangeÚint64rÚ_dataZ_ndarrayÚbaseÚAssertionError)rrÚtdirrrÚtest_int64_nocopy-s z$TestTimedeltaIndex.test_int64_nocopycCsBtdddd}t|dd}|j|jks*t‚dt|diƒks>t‚dS)    Nú1 secondi€–˜Ú1s©ÚperiodsÚfreqZinfer©r2Z inferred_freqÚ_cache)rrr2r+Úgetattr)rr,ÚresultrrrÚtest_infer_from_tdi4s z&TestTimedeltaIndex.test_infer_from_tdic    Cs²tdddd}d}tjt|dt|ddW5QRXtjt|dt|ddW5QRXtjt|dt|jddW5QRXtjt|dt|jddW5QRXdS)    Nr.édr/r0zMInferred frequency .* from passed values does not conform to passed frequencyrÚDr3)rrrr$rrr))rr,rrrrÚtest_infer_from_tdi_mismatchAsÿz/TestTimedeltaIndex.test_infer_from_tdi_mismatchc    Csˆtjddd}d}tjt|dt| d¡ƒW5QRXtjt|dt|ƒW5QRXtjt|dtt |¡ƒW5QRXdS)Nz
2016-01-01r"©r1z"cannot be converted to timedelta64rzEurope/Brussels)    ÚpdZ
date_rangerrrrZ tz_localizerZasarray)rZdtirrrrÚtest_dt64_data_invalidXsz)TestTimedeltaIndex.test_dt64_data_invalidcCsztddgƒ}tddgƒ}t ||¡tddgƒ}tddgƒ}t ||¡tdtjgƒ}ttddtjgƒ}t ||¡dS)Ngffffff@gffffff#@éé    g@g"@)Ú nanoseconds)rÚtmÚassert_index_equalrÚnanrr<r ©rr,ÚexpectedrrrÚtest_float64_ns_roundedhs      z*TestTimedeltaIndex.test_float64_ns_roundedcCs8tddgdd}ttddtddgƒ}t ||¡dS)Ngø?g@r9©r)Údays)rrrArBrDrrrÚtest_float64_unit_conversionysz/TestTimedeltaIndex.test_float64_unit_conversioncCsštdƒtjtdƒg}t t |¡t|ƒ¡t t t |¡¡tt |¡ƒ¡tj    tjtdƒg}t t |¡t|ƒ¡t t t |¡¡tt |¡ƒ¡dS)Nú1 daysú3 days)
rr<r rArBÚIndexrrrrC)rrrrrÚ"test_construction_base_constructors "z5TestTimedeltaIndex.test_construction_base_constructorcCsÂtdddddgƒ}tddt dd¡tddd    tj d
¡gƒ}t ||¡td d d gƒ}t tt    d
ƒdd|¡td ddgƒ}t tdddgdd|¡tdddgƒ}t tdddgdd|¡dS)NrJz1 days 00:00:05ú2 daysz2 days 00:00:02z0 days 00:00:03z1 days, 00:00:05r>r9)rHÚsecondsr"z0 days 00:00:00z0 days 00:00:01z0 days 00:00:02ÚsrGz0 days 00:00:05z0 days 00:00:09rér?z0 days 00:00:00.400z0 days 00:00:00.450z0 days 00:00:01.200iiÂi°Úms)
rrÚ timedelta64rr<ÚoffsetsZSecondrArBÚrange)rrEr6rrrÚtest_constructorˆs:ûÿ    
 
 
ûÿ     ÿÿÿz#TestTimedeltaIndex.test_constructorcCs:tdddd}dd„tddƒDƒ}t|ƒ}t ||¡dS)    Nr/r?rPr0cSsg|]}d|›d‘qS)ZP0DT0H0MÚSr©Ú.0ÚirrrÚ
<listcomp>­sz;TestTimedeltaIndex.test_constructor_iso.<locals>.<listcomp>r!r&)rrUrrArB)rrEZ    durationsr6rrrÚtest_constructor_isoªsz'TestTimedeltaIndex.test_constructor_isoc        Cs\tddd}tddd}t ||¡d}tjt|dtdddd    W5QRXd
}tjt|dtdƒW5QRXd d „tdƒDƒ}t|ƒ}td d„tdƒDƒƒ}t ||¡t     dddg¡}t|ƒ}t
dddgdd}t ||¡t|j ƒ}t ||¡d}tjt |dtdddgddW5QRXd}tjt |dtdddW5QRXdS)NrJg%@r;r&z!periods must be a number, got foorZfoor9)Ústartr1r2z[TimedeltaIndex\(\.\.\.\) must be called with a collection of some kind, '1 days' was passedcss|]}t|ƒVqdS)NrrXrrrÚ    <genexpr>Âsz?TestTimedeltaIndex.test_constructor_coverage.<locals>.<genexpr>cSsg|] }t|ƒ‘qSrrrXrrrr[Äsz@TestTimedeltaIndex.test_constructor_coverage.<locals>.<listcomp>rNrKr!r>r"ÚdrGzQInferred frequency None from passed values does not conform to passed frequency Dz4 daysr3zVOf the four parameters: start, end, periods, and freq, exactly three must be specifiedr0) rrArBrrrrrUrrrZasi8r$)    rÚrngÚexprÚgenr6rEÚstringsZ    from_intsrrrÚtest_constructor_coverage±s8   ÿ  
 ÿÿz,TestTimedeltaIndex.test_constructor_coveragecCs<tddddd}|jdkst‚t|dd}|jdks8t‚dS)NrJr!r9ZTEST)r]r1r2Únamezsomething else)re)rrer+r)rÚidxZidx2rrrÚtest_constructor_nameßs z(TestTimedeltaIndex.test_constructor_namec    Cs^d}tjt|dtdgddW5QRXd}tjt|dtjdgddW5QRXdS)Nz with no precision is not allowedrÚ2000rSr z3The 'timedelta64' dtype has no unit. Please pass in)rrr$rr<rL)rrrrrÚ$test_constructor_no_precision_raisesçs z7TestTimedeltaIndex.test_constructor_no_precision_raisesc    CsLd}tjt|dtdgddW5QRXtdgdd}|jdksHt‚dS)Nz?dtype timedelta64\[D\] cannot be converted to timedelta64\[ns\]rrhztimedelta64[D]r ztimedelta64[us]zm8[us])rrr$rrr+)rrr,rrrÚ'test_constructor_wrong_precision_raisesòs
z:TestTimedeltaIndex.test_constructor_wrong_precision_raisescCsntddd}|jdk    st‚t|dd}|jdks4t‚t|jdd}|jdksPt‚t|dd}|jdksjt‚dS)Nr!rQr;r3)rr2r+rr)r)rr,r6ZtdarrrÚtest_explicit_none_freqûs   z*TestTimedeltaIndex.test_explicit_none_freqcCsLtddd}t |¡}t|ƒ}t ||¡t |¡}t|ƒ}t ||¡dS)Nr!rQr;)rr<Z CategoricalrrArBZCategoricalIndex)rr,Úcatr6ÚcirrrÚtest_from_categorical    s 
 
z(TestTimedeltaIndex.test_from_categoricalN)Ú__name__Ú
__module__Ú __qualname__rrÚmarkZ parametrizer%r-r7r:r=rFrIrMrVr\rdrgrirjrkrnrrrrr
s$
     ".     r
)ÚdatetimerÚnumpyrrZpandasr<rrrrZpandas._testingZ_testingrAZpandas.core.arrays.timedeltasrr    r
rrrrÚ<module>s