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
U
­ý°d‘ ã    @s€dZddlZddlZddlmZmZddlZddl    m
Z ddl m Z mZddlmZmZmZmZmZmZmZmZddlmZdd„Zejeeeeeeeegd    d
d „ƒZejd d „ƒZejdd„ƒZejdd„ƒZejdd„ƒZ ejdd„ƒZ!ejdd„ƒZ"ejdd„ƒZ#ejdd„ƒZ$Gdd„dej%ƒZ&Gdd„dej'ƒZ(Gd d!„d!ej)ƒZ*Gd"d#„d#ej+ƒZ,Gd$d%„d%ej-ƒZ.Gd&d'„d'ej/ƒZ0Gd(d)„d)ej1ƒZ2Gd*d+„d+ej3ƒZ4Gd,d-„d-ej5ƒZ6Gd.d/„d/ej7ƒZ8Gd0d1„d1ej9ƒZ:Gd2d3„d3ej;ƒZ<Gd4d5„d5ej=ƒZ>Gd6d7„d7ej?ƒZ@ejAjBd8d9Gd:d;„d;ejCƒƒZDGd<d=„d=ejEƒZFGd>d?„d?ejGƒZHGd@dA„dAejIƒZJGdBdC„dCejKƒZLdS)Daj
This file contains a minimal set of tests for compliance with the extension
array interface test suite, and should contain no other tests.
The test suite for the full functionality of the array is located in
`pandas/tests/arrays/`.
 
The tests in this file are inherited from the BaseExtensionTests, and only
minimal tweaks should be applied to get the tests passing (by overwriting a
parent method).
 
Additional tests should either be added to one of the BaseExtensionTests
classes (if they are relevant for the extension interface for all dtypes), or
be added to the array-specific tests in `pandas/tests/arrays/`.
 
éN)ÚIS64Úis_platform_windows)Úis_extension_array_dtypeÚis_integer_dtype)Ú    Int8DtypeÚ
Int16DtypeÚ
Int32DtypeÚ
Int64DtypeÚ
UInt8DtypeÚ UInt16DtypeÚ UInt32DtypeÚ UInt64Dtype)ÚbasecCs4ttddƒƒtjgttddƒƒtjgddgS)Néé    é
ébécéd)ÚlistÚrangeÚpdÚNA©rrúZd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/extension/test_integer.pyÚ    make_data+sr)ÚparamscCs| ¡S©N)Úparam)ÚrequestrrrÚdtype/s r cCstjtƒ|dS)N©r )rÚarrayrr!rrrÚdata?sr#cCstjt d¡d|dS)Nrér!)rr"ÚnpZonesr!rrrÚ data_for_twosDsr&cCstjtjdg|dS)Nrr!©rr"rr!rrrÚ data_missingIsr(cCstjdddg|dS)Nrr$rr!)rr"r!rrrÚdata_for_sortingNsr)cCstjdtjdg|dS)Nrrr!r'r!rrrÚdata_missing_for_sortingSsr*cCsdd„S)NcSs|tjko|tjkSr©rr)ÚxÚyrrrÚ<lambda>[ózna_cmp.<locals>.<lambda>rrrrrÚna_cmpXsr0cCstjSrr+rrrrÚna_value^sr1c    Cs0d}d}d}tj}tj||||||||g|dS)Nrrr$r!)rrr")r ÚbÚaÚcÚnarrrÚdata_for_groupingcs
r6c@s eZdZdS)Ú    TestDtypeN©Ú__name__Ú
__module__Ú __qualname__rrrrr7lsr7cs8eZdZd‡fdd„    Zefdd„Zd    ‡fdd„    Z‡ZS)
ÚTestArithmeticOpsNcstƒj|||dddS©N)Úexc©ÚsuperÚ check_opname©ÚselfÚsÚop_nameÚotherr>©Ú    __class__rrrAqszTestArithmeticOps.check_opnamec        Cs²|dkrŽt |¡}t|dƒrBt|jƒsBt|jƒrB|jrB| |j¡}|||ƒ}|     |||¡}|dkrv| 
t j ¡ d¡}n
| |¡}|  ||¡n t |¡|||ƒW5QRXdS)Nr )Ú __rtruediv__Ú __truediv__Z__div__ZFloat64)ÚtmZ    get_dtypeÚhasattrrr rZis_unsigned_integerÚastypeZ numpy_dtypeZ_combineZfillnar%ÚnanZ assert_equalÚpytestÚraises)    rCrDÚoprFrEr>ZsdtypeÚresultÚexpectedrrrÚ    _check_opus&
ÿþýü 
 
 zTestArithmeticOps._check_opcstƒ |||d¡dSr)r@Ú_check_divmod_op)rCrDrQrFr>rGrrrU”sz"TestArithmeticOps._check_divmod_op)N)N)r9r:r;rAÚNotImplementedErrorrTrUÚ __classcell__rrrGrr<ps r<cs2eZdZefdd„Zd‡fdd„    Zdd„Z‡ZS)    ÚTestComparisonOpsc    CsV|dkr2|||ƒ}| ||¡ d¡}| ||¡n t |¡|||ƒW5QRXdS)NÚboolean)ÚcombinerMÚassert_series_equalrOrP)rCrDrQrFrEr>rRrSrrrrT™s 
 zTestComparisonOps._check_opNcstƒj|||dddSr=r?rBrGrrrA£szTestComparisonOps.check_opnamecCs d|j›d}| |||¡dS)NÚ__)r9rA)rCrDr#rQrFrErrrÚ_compare_other¦sz TestComparisonOps._compare_other)N)r9r:r;rVrTrAr]rWrrrGrrX˜s
rXc@s eZdZdS)Ú TestInterfaceNr8rrrrr^«sr^c@s eZdZdS)ÚTestConstructorsNr8rrrrr_¯sr_c@s eZdZdS)Ú TestReshapingNr8rrrrr`³sr`c@s eZdZdS)Ú TestGetitemNr8rrrrra»srac@s eZdZdS)Ú TestSetitemNr8rrrrrb¿srbc@s eZdZdS)Ú    TestIndexNr8rrrrrcÃsrcc@s eZdZdS)Ú TestMissingNr8rrrrrdÇsrdc@seZdZeZdS)Ú TestMethodsN)r9r:r;ÚobjectZ_combine_le_expected_dtyperrrrreËsrec@s eZdZdS)Ú TestCastingNr8rrrrrgÏsrgc@s eZdZdS)Ú TestGroupbyNr8rrrrrhÓsrhc@seZdZdd„ZdS)ÚTestNumericReducecCs||dkr,t||ƒƒ}t| ¡ d¡|ƒƒ}n@t||ƒ|d}t| ¡ d¡|ƒ|d}|sl| ¡ ¡rltj}t ||¡dS)NÚcountÚint64©Úskipna)    ÚgetattrZdropnarMZisnaÚanyrrrKZassert_almost_equal)rCrDrErmrRrSrrrÚ check_reduceØs zTestNumericReduce.check_reduceN)r9r:r;rprrrrri×sriz-Tested in tests/reductions/test_reductions.py)Úreasonc@s eZdZdS)ÚTestBooleanReduceNr8rrrrrræsrrc@s.eZdZdd„Zej dddg¡dd„ƒZdS)    ÚTestAccumulationcCsLd}trtƒr|jjdksd}|jj d¡r8d|›}n
d|›}|dkrŽt||ƒ|d}t tj    t| 
d    ¡|ƒ|d|d
¡}t   ||¡nº|d krÜt||ƒ|d}t tj    t| 
d    ¡|ƒ|d|jd
¡}t   ||¡nl|d kr:t|dd …|ƒ|d}t tj    t|dd … 
d    ¡|ƒ|d|d
¡}t   ||¡nt |›dƒ‚dS)Né@éé ÚUZUIntZIntZcumsumrlÚfloat64r!)ZcummaxZcumminZcumprodé z not supported)rrr ÚitemsizeÚnameÚ
startswithrnrZSeriesr"rMrKr[rV)rCrDrErmÚlengthZexpected_dtyperRrSrrrÚcheck_accumulateìsF
 
þÿþÿ
þÿz!TestAccumulation.check_accumulatermTFcCsdSrr)rCr#Zall_numeric_accumulationsrmrrrÚtest_accumulate_series_raisessz.TestAccumulation.test_accumulate_series_raisesN)r9r:r;r~rOÚmarkZ parametrizerrrrrrsës,rsc@s eZdZdS)Ú TestPrintingNr8rrrrrsrc@s eZdZdS)Ú TestParsingNr8rrrrr‚!sr‚c@s eZdZdS)Ú Test2DCompatNr8rrrrrƒ%srƒ)MÚ__doc__Únumpyr%rOZ pandas.compatrrZpandasrZpandas._testingZ_testingrKZpandas.api.typesrrZpandas.core.arrays.integerrrrr    r
r r r Zpandas.tests.extensionrrZfixturer r#r&r(r)r*r0r1r6ZBaseDtypeTestsr7ZBaseArithmeticOpsTestsr<ZBaseComparisonOpsTestsrXZBaseInterfaceTestsr^ZBaseConstructorsTestsr_ZBaseReshapingTestsr`ZBaseGetitemTestsraZBaseSetitemTestsrbZBaseIndexTestsrcZBaseMissingTestsrdZBaseMethodsTestsreZBaseCastingTestsrgZBaseGroupbyTestsrhZBaseNumericReduceTestsrir€ÚskipZBaseBooleanReduceTestsrrZBaseAccumulateTestsrsZBasePrintingTestsrZBaseParsingTestsr‚ZDim2CompatTestsrƒrrrrÚ<module>sr (
øÿ
 
 
 
 
 
 
 
 
( 2