zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
U
­ý°dÀã@s`ddlZddlZddlZddlZddlmZddlmZ    ddl
m Z m Z m Z mZmZmZmZmZmZmZddlmZmZmZmZddlZddlmZmZmZmZm Z m!Z!ddl"m#Z$ddl%m&Z&m'Z'Gdd    „d    ƒZ(Gd
d „d e(ƒZ)Gd d „d e(ƒZ*Gdd„de(ƒZ+Gdd„de(ƒZ,Gdd„dƒZ-ej. /deeeeg¡dd„ƒZ0ej. /dddeƒfdeƒfdeddƒfdedƒfd eƒfd!ed"d#ƒfg¡d$d%„ƒZ1ej. /de2d&fe3d&fe4d'fej5d'fe 6d(d)g¡d&fe d*d+gƒd&fe 6d'd&g¡d'fe d'd&gƒd'fe&d'd&gƒd'fe'e4ƒd'fg
¡d,d-„ƒZ7d.d/„Z8ej. /d0e eeeeee ee g    ¡d1d2„ƒZ9d3d4„Z:d5d6„Z;d7d8„Z<dS)9éN)ÚNpyDatetimeUnit)Ú    _registry)
Ú is_bool_dtypeÚis_categorical_dtypeÚis_datetime64_any_dtypeÚis_datetime64_dtypeÚis_datetime64_ns_dtypeÚis_datetime64tz_dtypeÚis_dtype_equalÚis_interval_dtypeÚis_period_dtypeÚis_string_dtype)ÚCategoricalDtypeÚDatetimeTZDtypeÚ IntervalDtypeÚ PeriodDtype)Ú CategoricalÚCategoricalIndexÚ DatetimeIndexÚ IntervalIndexÚSeriesÚ
date_range)Ú SparseArrayÚ SparseDtypec@s,eZdZdd„Zdd„Zdd„Zdd„Zd    S)
ÚBasecCs t|ƒdS©N)Úhash©ÚselfÚdtype©r úVd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/dtypes/test_dtypes.pyÚ    test_hash.szBase.test_hashcCs |dkr t‚t|tjƒrt‚dS)NÚfoo)ÚAssertionErrorr
ÚnpÚint64rr r r!Útest_equality_invalid1s zBase.test_equality_invalidc    CsRd ddg¡}tjt|dt |¡W5QRX|tjkr@t‚tj|krNt‚dS)Nú|zdata type not understoodz$Cannot interpret '.*' as a data type©Úmatch)ÚjoinÚpytestÚraisesÚ    TypeErrorr%rZstr_r$©rrÚmsgr r r!Útest_numpy_informed5sÿzBase.test_numpy_informedcCsLt|ƒ ¡t|jƒrt‚t |¡}t|tƒs<t|jƒr<t‚||ksHt‚dSr)    ÚtypeÚ reset_cacheÚlenÚ _cache_dtypesr$ÚtmÚround_trip_pickleÚ
isinstancer©rrÚresultr r r!Ú test_pickleAs  
 
zBase.test_pickleN)Ú__name__Ú
__module__Ú __qualname__r"r'r1r;r r r r!r-s rc @s|eZdZejdd„ƒZdd„Zdd„Zdd„Zd    d
„Z    e
d d gd dZ e
ddgddZ e ddge d dZej ddddde
ƒgdd d gd de gedde e geddgdde gg¡dd„ƒZej ddd d gd e gdd d gde gddd e gg¡dd„ƒZdd„Zdd„Zd d!„Zd"d#„Zej d$d dgd fd ddgd fd dd d%gdfddgdfg¡d&d'„ƒZd(d)„Zd*d+„Zd,d-„Zd.d/„ZdS)0ÚTestCategoricalDtypecCstƒS)zG
        Class level fixture of dtype for TestCategoricalDtype
        )r©rr r r!rSszTestCategoricalDtype.dtypecCs6tƒ}||kst‚||kst‚t|ƒt|ƒks2t‚dSr)rr$r)rrÚdtype2r r r!Útest_hash_vs_equalityZs  z*TestCategoricalDtype.test_hash_vs_equalitycCs¨|dks t‚t|dƒst‚d|ks&t‚td|ƒs4t‚|tƒksBt‚t|tƒƒsRt‚tƒ|ks`t‚ttƒ|ƒspt‚|dks|t‚t|dƒrŠt‚d|ks–t‚td|ƒr¤t‚dS©NÚcategoryr#)r$r
rrr r r!Ú test_equality`s    z"TestCategoricalDtype.test_equalityc    CsDt d¡}t||ƒst‚d}tjt|dt d¡W5QRXdS)NrDz0Cannot construct a 'CategoricalDtype' from 'foo'r)r#)rÚconstruct_from_stringr
r$r,r-r.)rrr:r0r r r!Útest_construction_from_stringps
 
z2TestCategoricalDtype.test_construction_from_stringc    Cs*d}tjt|dtdƒW5QRXdS)Nz(Parameter 'categories' must be list-liker)rD©r,r-r.r©rr0r r r!Útest_constructor_invalidwsz-TestCategoricalDtype.test_constructor_invalidÚaÚbT©ÚorderedÚxÚyFré)rZfastpathz,values, categories, ordered, dtype, expectedNcCs t ||||¡}||kst‚dSr)rÚ_from_values_or_dtyper$)rÚvaluesÚ
categoriesrNrÚexpectedr:r r r!Útest_from_values_or_dtype€s
ÿz.TestCategoricalDtype.test_from_values_or_dtypez"values, categories, ordered, dtypec    Cs2d}tjt|dt ||||¡W5QRXdS)Nz?Cannot specify `categories` or `ordered` together with `dtype`.r))r,r-Ú
ValueErrorrrR)rrSrTrNrr0r r r!Ú test_from_values_or_dtype_raisess    z5TestCategoricalDtype.test_from_values_or_dtype_raisesc    Cs2d}tjt|dt dddt¡W5QRXdS)Nz;Cannot not construct CategoricalDtype from <class 'object'>r))r,r-rWrrRÚobjectrIr r r!Ú'test_from_values_or_dtype_invalid_dtypeœsz<TestCategoricalDtype.test_from_values_or_dtype_invalid_dtypecCsNt |¡st‚t d¡st‚t tƒ¡s,t‚t d¡r:t‚t tj¡rJt‚dSrC)rÚis_dtyper$r%Úfloat64rr r r!Ú test_is_dtype¡s
z"TestCategoricalDtype.test_is_dtypec    Cs`t|ƒs t‚tddddddddgƒ}t|dd}t|jƒs>t‚t|ƒsJt‚tt d¡ƒr\t‚dS)NrKrLÚcÚA©Únamer\)rr$rrrr%)rrZfactorÚsr r r!Ú
test_basic¨s    zTestCategoricalDtype.test_basiccCs(dddg}t|ƒ}t|j|kƒs$t‚dS)N)rQrK)érL)ér^)rÚallrTr$)rrTr:r r r!Útest_tuple_categories´s
z*TestCategoricalDtype.test_tuple_categorieszcategories, expectedzb'cCs>t|ƒ}|jj|kst‚t|ƒ|ks(t‚t|jƒ|ks:t‚dSr)rrZ _is_booleanr$r)rrTrUÚcatr r r!Útest_is_boolean¹s
z$TestCategoricalDtype.test_is_booleancCs(d}tttgƒƒjjƒ}||ks$t‚dS)Núdatetime64[ns])ÚstrrrrTrr$)rrUr:r r r!Ú%test_dtype_specific_categorical_dtypeÈsz:TestCategoricalDtype.test_dtype_specific_categorical_dtypecCsttƒƒrt‚dSr)r rr$r@r r r!Útest_not_stringÍsz$TestCategoricalDtype.test_not_stringcCs6t tdƒ¡}t|dd}t|ƒ}d}||ks2t‚dS)NreF©rTrNz7CategoricalDtype(categories=range(0, 3), ordered=False))ÚpdÚIndexÚrangerÚreprr$)rÚrngrr:rUr r r!Útest_repr_range_categoriesÑs
 z/TestCategoricalDtype.test_repr_range_categoriescCs8tdgƒ tdgdd¡}tdgdd}||ks4t‚dS©NrKrLTrM)rÚ update_dtyperr$)rr:rUr r r!Útest_update_dtypeÙsz&TestCategoricalDtype.test_update_dtype)r<r=r>r,ÚfixturerrBrErGrJrÚdtype1rArr^ÚmarkÚ parametrizerVrXrZr]rcrgrirlrmrtrwr r r r!r?RsV
 üþ    
 
ýþ
 
 
üþ    
r?c@sÜeZdZejdd„ƒZdd„Zdd„Zdd„Zd    d
„Z    d d „Z
d d„Z dd„Z dd„Z ej dddddg¡dd„ƒZdd„Zdd„Zdd„Zd d!„Zd"d#„Zej d$d%d&g¡ej d'd(d)g¡d*d+„ƒƒZd,d-„Zd.d/„Zd0S)1ÚTestDatetimeTZDtypecCs
tddƒS)zF
        Class level fixture of dtype for TestDatetimeTZDtype
        Únsú
US/Eastern)rr@r r r!rászTestDatetimeTZDtype.dtypec    Cs&tjtddtdƒW5QRXdS)NzPassing a dtype aliasr)zdatetime64[ns, US/Central]©r,r-rWrr@r r r!Útest_alias_to_unit_raisesèsz-TestDatetimeTZDtype.test_alias_to_unit_raisesc    CsHtjtddtdƒW5QRXtjtddtdƒW5QRXdS)NÚr)zthis is a bad stringzdatetime64[ns, US/NotATZ]©r,r-r.rr@r r r!Ú#test_alias_to_unit_bad_alias_raisesísz7TestDatetimeTZDtype.test_alias_to_unit_bad_alias_raisescCsŒtddƒ}t|ƒ}||kst‚||ks*t‚||ks6t‚t|ƒt|ƒksJt‚t|ƒt|ƒks^t‚tddƒ}||kstt‚t|ƒt|ƒksˆt‚dS)Nr}r~z
US/Central)rr$r)rrrAÚdtype3Zdtype4r r r!rBõs
 
 z)TestDatetimeTZDtype.test_hash_vs_equalitycCsLtddƒ}|jdkst‚|jtjjks*t‚|jdks8t‚t|ƒdksHt‚dS)NÚmsr~z|M8[ms]zdatetime64[ms, US/Eastern])rÚunitr$Z_cresorZ    NPY_FR_msÚvaluerk)rÚresr r r!Ú test_construction_non_nanoseconds
 
z4TestDatetimeTZDtype.test_construction_non_nanosecondc    Cs,d}tjt|dtddƒW5QRXdS)Nz1DatetimeTZDtype only supports s, ms, us, ns unitsr)ÚDr~rrIr r r!Útest_day_not_supported
sz*TestDatetimeTZDtype.test_day_not_supportedcCsDt d¡}t d¡}tt|ƒt|ƒƒs*t‚tt|ƒt|ƒƒs@t‚dS)Núdatetime64[ns, US/Eastern]zdatetime64[ns, CET])rrFÚ
issubclassr2r$©rrKrLr r r!Ú test_subclasss
 
z!TestDatetimeTZDtype.test_subclasscCsdt|ƒs t‚tdƒst‚t|ƒs$t‚tdƒs0t‚t|ƒs<t‚tdƒsHt‚t|ƒrTt‚tdƒr`t‚dS©NrŒ)r    r$rrrrr r r!Ú test_compats       zTestDatetimeTZDtype.test_compatcCst d¡}t||ƒst‚dSr)rrFr
r$r9r r r!rG s
z1TestDatetimeTZDtype.test_construction_from_stringÚstringr#údatetime64[ns, notatz]zdatetime64[ps, UTC]z datetime64[ns, dateutil/invalid]c    Cs:d|›d}tjtt |¡dt |¡W5QRXdS)Nz+Cannot construct a 'DatetimeTZDtype' from 'ú'r))r,r-r.ÚreÚescaperrF©rr’r0r r r!Ú)test_construct_from_string_invalid_raises$s z=TestDatetimeTZDtype.test_construct_from_string_invalid_raisesc    Cs.d}tjt|dt dg¡W5QRXdS)Nz<'construct_from_string' expects a string, got <class 'list'>r)r“)r,r-r.rrFrIr r r!Ú,test_construct_from_string_wrong_type_raises4sz@TestDatetimeTZDtype.test_construct_from_string_wrong_type_raisescCsnt d¡rt‚t |¡st‚t d¡s*t‚t d¡s8t‚t d¡rFt‚t tddƒ¡sZt‚t tj¡rjt‚dS)NrŒúM8[ns, US/Eastern]r#r}ú
US/Pacific)rr[r$r%r\rr r r!r]9sz!TestDatetimeTZDtype.test_is_dtypecCst|dƒst‚t|dƒst‚t|tddƒƒs0t‚t|dƒr>t‚t|tddƒƒrRt‚ttddƒtddƒƒrlt‚tt d¡d    ƒs€t‚|dksŒt‚dS)
NrŒršr}r~r#ZCETr›zM8[ns]rj)r
r$rr%rrr r r!rEBsÿz!TestDatetimeTZDtype.test_equalitycCsbt|ƒs t‚tdddd}t|dd}t|jƒs4t‚t|ƒs@t‚tt d¡ƒrRt‚tdƒr^t‚dS)    NÚ20130101rer~©ÚperiodsÚtzr_r`r\çð?)r    r$rrrr%)rrÚdrrbr r r!rcQs   zTestDatetimeTZDtype.test_basiccCs`tdddd}t|dd}t|ƒs&t‚tdddd}t|dd}t|ƒsLt‚|j|jks\t‚dS)Nú
2013-01-01rer~rr_r`z
2013-08-01)rrr    r$r)rZdr1Ús1Zdr2Ús2r r r!Útest_dst]s    zTestDatetimeTZDtype.test_dstrŸÚUTCr~Ú constructorZM8Ú
datetime64cCs4|›d|›d}t |¡}td|ƒ}||ks0t‚dS)Nz[ns, ú]r})rrFr$)rrŸr§Zdtz_strr:rUr r r!Ú test_parsergs
 
zTestDatetimeTZDtype.test_parserc    Cs$tjtdd tƒW5QRXdS)NzA 'tz' is required.r)r‚r@r r r!Ú
test_emptypszTestDatetimeTZDtype.test_emptycCsTt d¡}tdddd}td|jƒ}|j|ks2t‚td|djƒ}|j|ksPt‚dS)Nr~r¢rerr}r)ÚpytzÚtimezonerrrŸr$)rrŸr¡rr r r!Útest_tz_standardizets 
 z'TestDatetimeTZDtype.test_tz_standardizeN)r<r=r>r,rxrr€rƒrBr‰r‹rr‘rGrzr{r˜r™r]rErcr¥rªr«r®r r r r!r|às:
 
úþ
     
 r|c@s’eZdZejdd„ƒZdd„Zdd„Zdd„Zd    d
„Z    d d „Z
d d„Z ej   ddddddg¡dd„ƒZdd„Zdd„Zdd„Zdd„Zdd „Zd!S)"ÚTestPeriodDtypecCstdƒS)zB
        Class level fixture of dtype for TestPeriodDtype
        rŠ)rr@r r r!rszTestPeriodDtype.dtypecCs„tdƒ}t|ƒ}||kst‚||ks(t‚||ks4t‚||ks@t‚||ksLt‚||ksXt‚t|ƒt|ƒkslt‚t|ƒt|ƒks€t‚dS©NrŠ)rr$r)rrrAr„r r r!rB†s      z%TestPeriodDtype.test_hash_vs_equalityc    CsÆtjtddtdƒW5QRXdD].}t|ƒ}|jtjj ¡ksHt    ‚t
|ƒs&t    ‚q&dD]0}t|ƒ}|jtjj d¡ks~t    ‚t
|ƒsZt    ‚qZdD]0}t|ƒ}|jtjj  d¡ks´t    ‚t
|ƒst    ‚qdS)    NzInvalid frequency: xxr)Úxx)ú    period[D]z    Period[D]rŠ)ú
period[3D]z
Period[3D]Ú3Dre)z period[26H]z Period[26H]Z26Hz period[1D2H]z Period[1D2H]Z1D2Hé) r,r-rWrÚfreqroZtseriesÚoffsetsZDayr$r ZHour)rrbÚdtr r r!Útest_construction“sz!TestPeriodDtype.test_constructioncCs@tdƒ}tdƒ}tt|ƒt|ƒƒs&t‚tt|ƒt|ƒƒs<t‚dS)Nr²r³)rrr2r$rŽr r r!r­szTestPeriodDtype.test_subclasscCs|tdƒtdƒkst‚tdƒtdƒks(t‚tdƒtdƒks<t‚tdƒtdƒksPt‚tdƒtdƒksdt‚tdƒtdƒksxt‚dS)Nr²r³z period[1S1U]zperiod[1000001U]©rr$r@r r r!Ú test_identity´s zTestPeriodDtype.test_identitycCs4t|ƒr t‚tdƒrt‚t|ƒr$t‚tdƒr0t‚dS)Nr²)rr$rrr r r!r‘¾s   zTestPeriodDtype.test_compatc    Cs\tdƒ}t||ƒst‚t d¡}t||ƒs.t‚tjtddt dddg¡W5QRXdS)Nr²Úlistr)rQrdre)rr
r$rFr,r-r.r9r r r!rGÄs 
z-TestPeriodDtype.test_construction_from_stringr’r#z period[foo]zfoo[D]rjrŒc    Cs:d|›d}tjtt |¡dt |¡W5QRXdS)Nz'Cannot construct a 'PeriodDtype' from 'r”r))r,r-r.r•r–rrFr—r r r!Ú/test_construct_dtype_from_string_invalid_raisesÍs z?TestPeriodDtype.test_construct_dtype_from_string_invalid_raisescCsöt |¡st‚t d¡st‚t d¡s*t‚t tdƒ¡s<t‚t d¡sJt‚t d¡sXt‚t tdƒ¡sjt‚t tdƒ¡s|t‚t d¡rŠt‚t d¡r˜t‚t d¡r¦t‚t d¡r´t‚t d    ¡rÂt‚t tj¡rÒt‚t tj¡rât‚t tj¡ròt‚dS)
Nr²r³r´z    period[U]z    period[S]ÚUÚSrŠr#)rr[r$r%Úobject_r&r\rr r r!r]Üs zTestPeriodDtype.test_is_dtypecCspt|dƒst‚t|tdƒƒs t‚t|tdƒƒs2t‚ttdƒtdƒƒsHt‚t|dƒrVt‚ttdƒtdƒƒrlt‚dS)Nr²rŠZ2D)r
r$rrr r r!rEïs zTestPeriodDtype.test_equalitycCs~t|ƒs t‚tjdddd}t|jƒs*t‚t|ƒs6t‚t|dd}t|jƒsPt‚t|ƒs\t‚tt d¡ƒrnt‚tdƒrzt‚dS)    Nz2013-01-01 09:00éÚH)ržr¶r_r`r\r )r r$roZ period_rangerrr%)rrZpidxrbr r r!rcøs    zTestPeriodDtype.test_basicc    Cs0tƒ}d}tjt|dt|ƒW5QRXdS)Nz!object has no attribute 'freqstr'r))rr,r-ÚAttributeErrorrk)rr¸r0r r r!r«szTestPeriodDtype.test_emptycCsttdƒƒrt‚dSr°)r rr$r@r r r!rmszTestPeriodDtype.test_not_stringN)r<r=r>r,rxrrBr¹rr»r‘rGrzr{r½r]rErcr«rmr r r r!r¯~s.
 
    ûþ
 
    r¯c@sæeZdZejdd„ƒZdd„Zej dddde     d¡g¡d    d
„ƒZ
ej dddde     d¡g¡d d „ƒZ d d„Z ej ddddg¡dd„ƒZ ej deedƒdƒeedƒdƒeedddg¡dd„ƒZej ddddg¡d d!„ƒZd"d#„Zd$d%„Zd&d'„Zej d(d)d*d+dg¡d,d-„ƒZej d(d.d/dg¡d0d1„ƒZd2d3„Zd4d5„Zd6d7„Zej dddddd8d9d:d;d<ed=ƒg
¡d>d?„ƒZej ddd8d9d:d;d<ed=ƒg¡d@dA„ƒZej ddddg¡dBdC„ƒZdDdE„Z dFdG„Z!dHdI„Z"dJdK„Z#dLdM„Z$dS)NÚTestIntervalDtypecCs
tddƒS)zD
        Class level fixture of dtype for TestIntervalDtype
        r&Úright)rr@r r r!rszTestIntervalDtype.dtypecCs&tddƒ}t|ƒ}||kst‚||ks*t‚||ks6t‚||ksBt‚||ksNt‚||ksZt‚t|ƒt|ƒksnt‚t|ƒt|ƒks‚t‚tdƒ}t|ƒ}tdƒ}||ks¦t‚||ks²t‚||ks¾t‚||ksÊt‚||ksÖt‚||ksât‚t|ƒt|ƒksöt‚t|ƒt|ƒks t‚t|ƒt|ƒks"t‚dS)Nr&rÅÚinterval)rr$r)rrrAr„ryr r r!rBs,
            z'TestIntervalDtype.test_hash_vs_equalityÚsubtypeúinterval[int64]zInterval[int64]r&cCs0t|dd}|jt d¡ks t‚t|ƒs,t‚dS)NrÅ©Úclosedr&)rrÇr%rr$r ©rrÇÚir r r!r¹5s z#TestIntervalDtype.test_constructioncCst|ƒ}|jdkst‚dSr)rrÊr$©rrÇrr r r!Ú$test_construction_allows_closed_none=sz6TestIntervalDtype.test_construction_allows_closed_nonec    Cs,d}tjt|dtddƒW5QRXdS)Nz?'closed' keyword does not match value specified in dtype stringr)zinterval[int64, left]rÅ)r,r-rWrrIr r r!Útest_closed_mismatchFsz&TestIntervalDtype.test_closed_mismatchNrÆZIntervalcCs&t|ƒ}|jdkst‚t|ƒs"t‚dSr)rrÇr$r rËr r r!Útest_construction_genericKsz+TestIntervalDtype.test_construction_genericÚabcFÚwxyzTz<U10zinterval[category]zinterval[object]c    Cs*d}tjt|dt|ƒW5QRXdS)NzIcategory, object, and string subtypes are not supported for IntervalDtyper)©r,r-r.r©rrÇr0r r r!Útest_construction_not_supportedRsÿz1TestIntervalDtype.test_construction_not_supportedr±Ú    IntervalAz Interval[foo]c    Cs*d}tjt|dt|ƒW5QRXdS)Nz!could not construct IntervalDtyper)rÓrÔr r r!Útest_construction_errorsgsz*TestIntervalDtype.test_construction_errorsc    Cs:ttjdƒ}d}tjt|dt|ddW5QRXdS)NÚleftz&dtype.closed and 'closed' do not matchr)ÚbothrÉ)rr%r\r,r-rWr/r r r!Útest_closed_must_matchms z(TestIntervalDtype.test_closed_must_matchc    Cs*tjtddttjdƒW5QRXdS)Nzclosed must be one ofr)r#)r,r-rWrr%r\r@r r r!Útest_closed_invalidusz%TestIntervalDtype.test_closed_invalidcCs2tdƒ}t||ƒst‚t d¡}t||ƒs.t‚dS©Núinterval[int64, right])rr
r$rFr9r r r!rGys
z/TestIntervalDtype.test_construction_from_stringr’rg…ëQ¸    @©rKrLc    Cs<dt|ƒ›}tjtt |¡dt |¡W5QRXdS)Nz.'construct_from_string' expects a string, got r))r2r,r-r.r•r–rrFr—r r r!Ú$test_construction_from_string_errorssz6TestIntervalDtype.test_construction_from_string_errorsr#z
foo[int64]c    Cs,d}tjt|dt |¡W5QRXdS)Nz–Incorrectly formatted string passed to constructor. Valid formats include Interval or Interval\[dtype\] where dtype is numeric, datetime, or timedeltar))r,r-r.rrFr—r r r!Ú+test_construction_from_string_error_subtype‡sÿz=TestIntervalDtype.test_construction_from_string_error_subtypecCs@tdƒ}tdƒ}tt|ƒt|ƒƒs&t‚tt|ƒt|ƒƒs<t‚dSrÜ)rrr2r$rŽr r r!r“szTestIntervalDtype.test_subclasscCst |¡st‚t d¡st‚t tdƒ¡s.t‚t tdƒ¡s@t‚t ttjƒ¡sTt‚t tddƒ¡sht‚t tddƒ¡s|t‚t ttjdƒ¡s’t‚t d¡r t‚t d¡r®t‚t d    ¡r¼t‚t d
¡rÊt‚t d ¡rØt‚t d ¡ræt‚t tj¡röt‚t tj¡rt‚t tj¡rt‚dS) NrÆr\r&rØrÅrÙrŠr´r¾r¿r#rÖ)rr[r$r%r&rÀr\rr r r!r]šs"zTestIntervalDtype.test_is_dtypecCsæt|dƒst‚t|tddƒƒs"t‚ttddƒtddƒƒs<t‚t|dƒrJt‚t|tdƒƒr\t‚ttddƒtdƒƒrtt‚t|dƒr‚t‚ttddƒtddƒƒrœt‚ttddƒtddƒƒr¶t‚tddƒ}td    dƒ}||ksÖt‚||ksât‚dS)
NrÝr&rÅrÈZneitherr\rÙrØrŒ)r
r$r)rrryrAr r r!rE®s2ÿÿÿÿ
 
 zTestIntervalDtype.test_equalityZuint64r\Ú
complex128r¨Z timedelta64ÚQcCs>|dk    r dnd}t||d}t|dƒs*t‚t|tƒƒs:t‚dS)NrÅrÉrÆ)rr
r$)rrÇrÊrr r r!Útest_equality_genericÉs z'TestIntervalDtype.test_equality_genericcCsP|dk    r dnd}t||d}d|›d|›d}t|ƒ|ks>t‚|jdksLt‚dS)NrÅrÉz    interval[z, r©rÆ©rrkr$ra)rrÇrÊrrUr r r!Útest_name_reprßs
 z TestIntervalDtype.test_name_reprcCs*t|ƒ}t|ƒdkst‚|jdks&t‚dS©NrÆrärÍr r r!Útest_name_repr_genericósz(TestIntervalDtype.test_name_repr_genericcCs^t|ƒs t‚t tdƒ¡}t|jƒs(t‚t|ƒs4t‚t|dd}t|jƒsNt‚t|ƒsZt‚dS)Nrer_r`)r r$rÚ from_breaksrqrr)rrÚiirbr r r!rcús   zTestIntervalDtype.test_basiccCs¤tdƒs t‚tt dg¡ƒs t‚tt t d¡¡ƒs8t‚tt tddd¡ƒsRt‚tdƒr^t‚tdƒrjt‚td    ƒrvt‚ttjƒr„t‚ttj    ƒr’t‚ttj
ƒr t‚dS)
Nzinterval[int64, both])rrQérœre©ržr¾r¿r#) r r$rÚ from_tuplesrèr%ÚarangerrÀr&r\r@r r r!Útest_basic_dtypes ÿ   z"TestIntervalDtype.test_basic_dtypecCsft ¡tddƒ}ttjƒdks$t‚tdƒttjƒdks>t‚t ¡t |¡ttjƒdksbt‚dS)Nr&rÅrQrÆrdr)rr3r4r5r$r6r7rr r r!Ú test_cachings
 
zTestIntervalDtype.test_cachingcCsttƒƒrt‚dSr)r rr$r@r r r!rm!sz!TestIntervalDtype.test_not_stringcCs$tdƒ}|jdkst‚t |¡dSræ)rÚ_closedr$r6r7rr r r!Útest_unpickling_without_closed%sz0TestIntervalDtype.test_unpickling_without_closed)%r<r=r>r,rxrrBrzr{r%r¹rÎrÏrÐrr¼rYrkrÕr×rÚrÛrGrßràrr]rErrãrårçrcrîrïrmrñr r r r!rÄs”
ÿ
ÿ
 
  ùþ
    
 
 
öþ
ùþ
 
  rÄc @säeZdZej dedƒe d¡dddddd    gd    d
ge    d d d g¡dd„ƒZ
dd„Z ej dd
dg¡dd„ƒZ dd„Z dd„Zej ddddgdddgfdddgdddgfg¡dd„ƒZdd „Zd!d"„Zd#d$„Zej d%d    d
dg¡ej d&d    d
dg¡d'd(„ƒƒZd)d*„Zej ded+ƒdg¡ej d,d-d.g¡d/d0„ƒƒZd1d2„Zd3d4„Zd5d6„Zd7d8„Zd9d:„Zd;d<„Zd=d>„Zd?d@„Zej dAed+ƒedBƒedCƒdg¡ej dDd    d
dg¡dEdF„ƒƒZdGdH„Zej dIdJe ej!e"dKƒg¡dLdM„ƒZ#dS)NÚ TestCategoricalDtypeParametrizedrTZabcdièrKrLé
rdgÍÌÌÌÌÌô?TFZ2017rêrëcCs2t||d}t |jt |¡¡|j|ks.t‚dS)NrM©rr6Úassert_index_equalrTrorprNr$)rrTrNÚc1r r r!rc/s z+TestCategoricalDtypeParametrized.test_basiccCsHddg}t|dd}t|dd}t|dd}||k    s8t‚||k    sDt‚dS)NrKrLTrMF©rr$)rrTröÚc2Úc3r r r!Útest_order_matters>s     z3TestCategoricalDtypeParametrized.test_order_mattersrNNcCs8tddg|d}tddg|d}t|ƒt|ƒks4t‚dS)NrKrLrM©rrr$)rrNrörør r r!Útest_unordered_sameFsz4TestCategoricalDtypeParametrized.test_unordered_samecCs:tdddgƒ}t |jt dddg¡¡|jdks6t‚dS)NrKrLr^Frô)rr:r r r!Útest_categoriesLsz0TestCategoricalDtypeParametrized.test_categoriescCs8tdddgƒ}tdddgƒ}||k    s(t‚||ks4t‚dS)NrQrdrer g@g@r÷©rrörør r r!Útest_equal_but_differentQs z9TestCategoricalDtypeParametrized.test_equal_but_differentzv1, v2rQrecCs@t|dd}t|dd}t|dd}||k    s0t‚||k    s<t‚dS)NFrMTr÷)rZv1Zv2rörørùr r r!Útest_order_hashes_differentWs
    z<TestCategoricalDtypeParametrized.test_order_hashes_differentc    Cs2d}tjt|dtddtjgƒW5QRXdS)Nz%Categorical categories cannot be nullr)rQrd)r,r-rWrr%ÚnanrIr r r!Útest_nan_invalid_sz1TestCategoricalDtypeParametrized.test_nan_invalidc    Cs0d}tjt|dtdddgƒW5QRXdS)Nz%Categorical categories must be uniquer)rQrd)r,r-rWrrIr r r!Útest_non_unique_invaliddsz8TestCategoricalDtypeParametrized.test_non_unique_invalidcCs0tddgdd}tddgdd}||k    s,t‚dSrur÷rþr r r!Ú$test_same_categories_different_orderiszETestCategoricalDtypeParametrized.test_same_categories_different_orderÚordered1Úordered2cCsîttdƒ|ƒ}ttdƒ|ƒ}||k}t|ƒt|ƒk}||ks@t‚ttdƒ|ƒ}ttdƒ|ƒ}||k}t|ƒdkozt|ƒdk}||ksˆt‚tdddg|ƒ}||ks¤t‚ttdƒ|ƒ}td|ƒ}td|ƒ}||ksÒt‚||ksÞt‚||ksêt‚dS)NrÑZcabFrQrdre)rr¼Úboolr$)rrrrörør:rUrùr r r!Útest_categorical_equalityns$   
 
  z:TestCategoricalDtypeParametrized.test_categorical_equalitycCs€tddgƒ}tƒ}tdd}||ks(t‚||ks4t‚||ks@t‚||ksLt‚||ksXt‚||ksdt‚||kspt‚||ks|t‚dSrur÷)rÚfirstÚsecondÚthirdr r r!Ú3test_categorical_dtype_equality_requires_categoriess 
       zTTestCategoricalDtypeParametrized.test_categorical_dtype_equality_requires_categoriesrÑÚotherrDznot a categorycCs*t||ƒ}||k}|dk}||ks&t‚dS)NrDr÷)rrTrNr rör:rUr r r!Ú!test_categorical_equality_strings s
zBTestCategoricalDtypeParametrized.test_categorical_equality_stringsc    CsPtjtddtddgddW5QRXtjtddtdƒW5QRXdS)    NrNr)rKrLr#rMz'categories' must be list-likerDrHr@r r r!Útest_invalid_raises¨sz4TestCategoricalDtypeParametrized.test_invalid_raisescCs8tddddgƒ}tddddgƒ}t|ƒt|ƒks4t‚dS)NrKrLrQrdÚ1Ú2rûrŽr r r!Ú
test_mixed¯sz+TestCategoricalDtypeParametrized.test_mixedcCs2tddgdddgdd}t |¡}||ks.t‚dS)NrQrdreTrn©rrZ_from_categorical_dtyper$rþr r r!Ú$test_from_categorical_dtype_identity´s
zETestCategoricalDtypeParametrized.test_from_categorical_dtype_identitycCsFtddgdddgdd}tj|ddgd}|tddgddksBt‚dS)NrQrdreTrn)rTrMr©rrör:r r r!Ú&test_from_categorical_dtype_categoriesºszGTestCategoricalDtypeParametrized.test_from_categorical_dtype_categoriescCsDtddgdddgdd}tj|dd}|tdddgddks@t‚dS©NrQrdreTrnFrMrrr r r!Ú#test_from_categorical_dtype_orderedÀszDTestCategoricalDtypeParametrized.test_from_categorical_dtype_orderedcCsHtddgdddgdd}tj|ddgdd}|tddgddksDt‚dSrrrr r r!Ú test_from_categorical_dtype_bothÆsÿzATestCategoricalDtypeParametrized.test_from_categorical_dtype_bothcCsDtddg|d}t|ƒdks t‚d}t |j|dt|ƒ¡s@t‚dS)NrKrLrMrDz8CategoricalDtype\(categories=\[.*\], ordered={ordered}\))rrkr$r•r*Úformatrr)rrNröÚpatr r r!Útest_str_vs_reprÎsz1TestCategoricalDtypeParametrized.test_str_vs_reprcCsTttddgƒƒ}t |jt ddg¡¡ttddgƒƒ}t |jt ddg¡¡dS)NrKrL)rrr6rõrTrorpr)rrör r r!Útest_categorical_categoriesÕsz<TestCategoricalDtypeParametrized.test_categorical_categoriesÚnew_categoriesZcbarÒÚ new_orderedc
Csftdƒ}t||ƒ}t||ƒ}| |¡}t |p0|¡}|dk    r@|n|j}    t |j|¡|j|    ksbt    ‚dS)NrÑ)
r¼rrvrorprNr6rõrTr$)
rrNrrZoriginal_categoriesrZ    new_dtyper:Úexpected_categoriesÚexpected_orderedr r r!rwÜs
 
 
z2TestCategoricalDtypeParametrized.test_update_dtypecCsDttdƒ|ƒ}|j}|j}| d¡}t |j|¡|j|ks@t‚dS)NrÑrD)rr¼rTrNrvr6rõr$)rrNrr r!r:r r r!Útest_update_dtype_stringìs 
z9TestCategoricalDtypeParametrized.test_update_dtype_stringÚ    bad_dtyper#râc    Cs:ttdƒdƒ}d}tjt|d| |¡W5QRXdS)NrÑFz8a CategoricalDtype must be passed to perform an update, r))rr¼r,r-rWrv)rr#rr0r r r!Útest_update_dtype_errorsôsz9TestCategoricalDtypeParametrized.test_update_dtype_errors)$r<r=r>r,rzr{r¼r%rírrcrúrürýrÿrrrrrr rrrrrrrrrrwr"rYr&rr$r r r r!rò.sX
ûþ
 
 
0
  ÿ ròrcCs|tjkst‚dSr)ÚregistryZdtypesr$©rr r r!Ú test_registryüsr'zdtype, expected)r&NrÆzinterval[int64, neither]zinterval[datetime64[ns], left]rjrØr²rŠrDrŒr}r~cCst |¡|kst‚dSr)r%Úfindr$)rrUr r r!Útest_registry_finds r)FTrKrLrQrdcCst|ƒ}||kst‚dSr)rr$)rrUr:r r r!Útest_is_bool_dtypesr*cCs$tttddgƒƒƒ}|dks t‚dS)NTF)rrrr$)r:r r r!Útest_is_bool_dtype_sparse'sr+Úcheckc    CsVt dddgi¡}t d¡||ƒW5QRXt d¡||dƒW5QRXdS)Nr_rQrd)roÚ    DataFramer6Zassert_produces_warning)r,Údatar r r!Útest_is_dtype_no_warning,s
  r/cCs.tdd}|dkdkst‚|dkdks*t‚dS)NÚM)r¶z    period[M]TFrºr&r r r!Ú#test_period_dtype_compare_to_stringCs
r1c    Csrt t d¡ tj¡¡}d}tjt|d|| t    ¡kW5QRXtjt|d| 
| t    ¡¡W5QRXdS)NrÁz>'<' not supported between instances of 'complex' and 'complex'r)) ror-r%ríZastyperár,r-r.rYÚlt)Údfr0r r r!Útest_compare_complex_dtypesJs r4cCsTt dgddœ¡}t dgddœ¡}d|ddg<t ||¡d|d<t ||¡dS)NgrÞrrKrL)ror-r6Zassert_frame_equal)r3rUr r r!Ú"test_multi_column_dtype_assignmentVs   r5)=r•Únumpyr%r,r¬Zpandas._libs.tslibs.dtypesrZpandas.core.dtypes.baserr%Zpandas.core.dtypes.commonrrrrrr    r
r r r Zpandas.core.dtypes.dtypesrrrrZpandasrorrrrrrZpandas._testingZ_testingr6Zpandas.core.arrays.sparserrrr?r|r¯rÄròrzr{r'r)rkÚintrZbool_Úarrayr*r+r/r1r4r5r r r r!Ú<module>s’  0   %O
ÿ
 
 ùþ
 
öþ
÷þ