|LpSddlZddlZddlZddlmZddlmZmZmZm Z Gddej Z e dkrej dSdS)N)iscoroutinefunction) AsyncMockMock MagicMock_magicsceZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#S)$TestMockingMagicMethodsct}|t|dt|_|t|d|`|t|ddS)N __getitem__)r assertFalsehasattrr assertTrueselfmocks N/opt/alt/python311/lib64/python3.11/unittest/test/testmock/testmagicmethods.pytest_deleting_magic_methodsz3TestMockingMagicMethods.test_deleting_magic_methods s{vv }5566666 m44555   }5566666ct`|tfdtd`|tfddS)NcdSNfoorsrz. T%[rrcdSrrrsrrz. rr)rr assertRaises TypeErrorrs @rtest_magicmock_delz*TestMockingMagicMethods.test_magicmock_delsp{{   )%8%8%8%8999{{ U   )%8%8%8%899999rcBt}d}||_||j|||d|df||d|df||_||j|dS)Nc |dfS)Nfishrrnames rfz=TestMockingMagicMethods.test_magic_method_wrapping..f%s < rrr#)rr assertIsNot assertEqualassertIs)rrr&s rtest_magic_method_wrappingz2TestMockingMagicMethods.test_magic_method_wrapping#svv    )1--- etVn555 ))%004.AAA d&-----rct}tttg|_|t |g|t fddS)N return_valuec"tSN)list)mock2srrzSTestMockingMagicMethods.test_magic_methods_isolated_between_mocks..7s T%[[r)riter__iter__r(r0rr)rmock1r1s @r)test_magic_methods_isolated_between_mockszATestMockingMagicMethods.test_magic_methods_isolated_between_mocks1so488444 eb))) )%8%8%8%899999rct}|t|dt|zd|_|t|ddS)NzcdSrrss rrz3TestMockingMagicMethods.test_repr..=s%rr)rr(reprid__repr__rs r test_reprz!TestMockingMagicMethods.test_repr:s^vv d%54%@AAA'  dU+++++rct}|t|t|d|_|t|ddS)NcdSrrr8s rrz2TestMockingMagicMethods.test_str..Dsrr)rr(strobject__str__rs rtest_strz TestMockingMagicMethods.test_strAs^vv TFNN4$8$8999&  TE*****rct|tfdfd}fd}|t||t|ifd}fd}fd}|_|_|_|t fddd <|d di|d dd =|idS) NcdSrrrsrrz;TestMockingMagicMethods.test_dict_methods..Krrcd=dSrrrsr_delz7TestMockingMagicMethods.test_dict_methods.._delLsU rcdd<dS)Nrrrsr_setz7TestMockingMagicMethods.test_dict_methods.._setNsDKKKrc|Sr/rr9r%_dicts rgetitemz:TestMockingMagicMethods.test_dict_methods..getitemTs ; rc||<dSr/r)r9r%valuerMs rsetitemz:TestMockingMagicMethods.test_dict_methods..setitemVsE$KKKrc|=dSr/rrLs rdelitemz:TestMockingMagicMethods.test_dict_methods..delitemXsd rcdSrrrsrrz;TestMockingMagicMethods.test_dict_methods.._s DKrbarr)rrr __setitem__r __delitem__KeyErrorr()rrGrJrNrQrSrMrs @@rtest_dict_methodsz)TestMockingMagicMethods.test_dict_methodsHsuvv )%8%8%8%8999           )T*** )T***               #"" ($7$7$7$7888U  /// ee,,, K #####rc`tx}d_|tfdfd}|_|dz|jd`d}|t||_dz |||jd|tfd|_|d z|jd dS) NrcdzSNrIrrsrrz6TestMockingMagicMethods.test_numeric..k TAXrc(xj|z c_|Sr/rProtherrs raddz1TestMockingMagicMethods.test_numeric..addm JJ% JJKrrIc|dz }dSr\rrs riaddz2TestMockingMagicMethods.test_numeric..iaddu AIDDDr cdzSr\rrsrrz6TestMockingMagicMethods.test_numeric..} QXr)rrPrr__add__r(__iadd____radd__)roriginalrbrers @r test_numericz$TestMockingMagicMethods.test_numericgsU&& 4  )%5%5%5%5666       4((( Q''' L    )T4000    x((( Q''' )%5%5%5%5666  T4((( R(((((rc`tx}d_|tfdfd}|_|dz |jd`d}|t||_dz|||jd|tfd|_|d z |jd dS) N cdz S)Nrrsrrz7TestMockingMagicMethods.test_division..r]rc(xj|zc_|Sr/r_r`s rtruedivz6TestMockingMagicMethods.test_division..truedivrcrrurlc|dz}dS)Nrrs ritruedivz7TestMockingMagicMethods.test_division..itruedivrfrcdz S)Nr{rrsrrz7TestMockingMagicMethods.test_division..rjrg?ry)rrPrr __truediv__r( __itruediv__ __rtruediv__)rrprwrzrs @r test_divisionz%TestMockingMagicMethods.test_divisionsY&& 4  )%5%5%5%5666     # 4((( R(((      )Xt444#   x((( Q''' )%5%5%5%5666# tT*** Q'''''rct}|t|tj|d}||_|t|ddS)NcdSr\rr8s r_hashz0TestMockingMagicMethods.test_hash.._hashs1rrI)rr(hash__hash__)rrrs r test_hashz!TestMockingMagicMethods.test_hashsivv dT]4%8%8999     dQ'''''rct}|t|d|_|t|dS)NcdS)NFrr8s rrz6TestMockingMagicMethods.test_nonzero..sur)rrbool__bool__r rms r test_nonzeroz$TestMockingMagicMethods.test_nonzerosL FF Q   $_  a!!!!!rct}d}|x|_x|_x|_|_||dk||dk||dk||dk|td|td|td|td|td|td|td |td |td |td |td |tddS)NcdS)NTrr9os rcompz5TestMockingMagicMethods.test_comparison..comps4rrIc>ttkSr/rrArrrrz9TestMockingMagicMethods.test_comparison..Y[[688-Crc>ttkSr/rArrrrrz9TestMockingMagicMethods.test_comparison..VXX -Crc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..Y[[9;;-Frc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..rrc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..rrc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..rrc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..Y[[FHH-Drc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..VXX-Drc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..Y[[IKK-Grc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..rrc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..rrc>ttkSr/rrrrrz9TestMockingMagicMethods.test_comparison..rr)r__lt____gt____le____ge__rrr)rrrs rtest_comparisonz'TestMockingMagicMethods.test_comparisonsvv   @DD DdkDDK$+ """ """ ### ### )%C%CDDD )%C%CDDD )%F%FGGG )%C%CDDD )%C%CDDD )%F%FGGG )%D%DEEE )%D%DEEE )%G%GHHH )%D%DEEE )%D%DEEE )%G%GHHHHHrcttfD]9}|||kd|||kt|||kd|||kt||t kd||t kdd}||_||dk||dkd}||_ ||dk||dk;t}d|j_ ||dkt||dkdd|j _ ||dkt||dkddS)NTFc|dkSr\rrras reqz1TestMockingMagicMethods.test_equality..eq z!rrIryc|dkSr\rrs rnez1TestMockingMagicMethods.test_equality..nerr) rrr(assertIsInstancerrA__eq__rr __ne__r-)rrrrs r test_equalityz%TestMockingMagicMethods.test_equalitysFFIKK' ( (D   TT\4 0 0 0  ! !$$, 5 5 5   TT\5 1 1 1  ! !$$, 5 5 5   TVXX-u 5 5 5   TVXX-t 4 4 4 " " "DK OODAI & & &   TQY ' ' ' " " "DK OODAI & & &   TQY ' ' ' '{{#'   dai... D)))#(   dai... E*****rct|tt|tt|tfdd_|tdd_|d| dd_ |ttddS)Nc dvSrrrsrrz@TestMockingMagicMethods.test_len_contains_iter..s Ud]rcdS)Nrgrr8s rrz@TestMockingMagicMethods.test_len_contains_iter..srrgc|dkSr\rrs rrz@TestMockingMagicMethods.test_len_contains_iter..s arrIc tdS)N foobarbaz)r2r8s rrz@TestMockingMagicMethods.test_len_contains_iter..s${"3"3rr) rrrlenr2__len__r( __contains__assertIn assertNotInr3r0rs @rtest_len_contains_iterz.TestMockingMagicMethods.test_len_contains_itersvv )S$/// )T4000 )%:%:%:%:;;;"{  TA&&&// a D!!!33  dT+%6%677777rct}tgd|j_|t |gddt |d_|t|d|t|tD]%}| t||&|t|ddS)NrurIFr __nonzero__ __imaginary__) rr2r3r-r(r0getattrr r rrr)rrentrys rtest_magicmockz&TestMockingMagicMethods.test_magicmocks{{%))))__ " dYYY///16j!!. }55666 d$$$ 2 2E OOGD%00 1 1 1 1 7788888rct}||tkt||tkt||tkd||tkd|||kd|||kddS)NFT)rrrArr(rs rtest_magic_mock_equalityz0TestMockingMagicMethods.test_magic_mock_equalitys{{ dfhh.555 dfhh.555 )5111 )4000 t,,, u-----rcbt}|t|d|t|d|t |d|t ||t|d|t|g|t|t ||t|t || t||t|||t#j|||t#j|||t#j||| t1|j| t1|j||jt||jt|t9|d|t;|ddSNry?g?r0o10x1)rr(intcomplexfloatrrArr0rrr@rBrrround __round__mathtrunc __trunc__floor __floor__ceil__ceil__r __aexit__ __aenter__rocthexrs rtest_asyncmock_defaultsz/TestMockingMagicMethods.test_asyncmock_defaultsc{{ TA&&& +++ tc*** 4((( TA&&& dR((( dV__T%:%:;;; TFNN4$8$8999 T ### tdnn&6&6777 D))4>>+;+;<<< D))4>>+;+;<<< 4$--//::: +DN;;<<< +DO<<=== doy999 dni888 TE*** TE*****rcbt}|t|d|t|d|t |d|t ||t|d|t|g|t|t ||t|t || t||t|||t#j|||t#j|||t#j||| t1|j| t1|j||jt8||jt8|t;|d|t=|ddSr)rr(rrrrrArr0rrr@rBrrrrrrrrrrrrrrrrrrrs rtest_magicmock_defaultsz/TestMockingMagicMethods.test_magicmock_defaults+rrct}|}||t j|||jdSr/)r __fspath__ reset_mockr(osfspathassert_called_once)rr expected_paths rtest_magic_methods_fspathz1TestMockingMagicMethods.test_magic_methods_fspathFsb{{))   4-888 **,,,,,rcrGddt}t||tfdtt g_|tgGddt}t||tfdfd }|t|t||tg|t|dS) NceZdZdZdS)ETestMockingMagicMethods.test_magic_methods_and_spec..IterablecdSr/rrs rr3zNTestMockingMagicMethods.test_magic_methods_and_spec..Iterable.__iter__QrN__name__ __module__ __qualname__r3rrrIterablerP $ $ $ $ $rr)speccjSr/r3rsrrzETestMockingMagicMethods.test_magic_methods_and_spec..T $-rr,ceZdZdS)HTestMockingMagicMethods.test_magic_methods_and_spec..NonIterableNrrrrrr NonIterablerY DrrcjSr/rrsrrzETestMockingMagicMethods.test_magic_methods_and_spec..\rrcLttg_dSNr,rr2__int__rsrset_intzDTestMockingMagicMethods.test_magic_methods_and_spec..set_int^T"XX666DLLLr rArrAttributeErrorr2r3r(r0rrrrrrs @rtest_magic_methods_and_specz3TestMockingMagicMethods.test_magic_methods_and_specOsd % % % % %v % % %""" .*?*?*?*?@@@$r((333  dR(((     &   %%% .*?*?*?*?@@@ 7 7 7 7 7 .'222h''' dR((( .'22222rcrGddt}t||tfdtt g_|tgGddt}t||tfdfd }|t|t||tg|t|dS) NceZdZdZdS)ITestMockingMagicMethods.test_magic_methods_and_spec_set..IterablecdSr/rrs rr3zRTestMockingMagicMethods.test_magic_methods_and_spec_set..Iterable.__iter__irrNrrrrrrhrrr)spec_setcjSr/rrsrrzITestMockingMagicMethods.test_magic_methods_and_spec_set..lrrr,ceZdZdS)LTestMockingMagicMethods.test_magic_methods_and_spec_set..NonIterableNrrrrrrqrrrcjSr/rrsrrzITestMockingMagicMethods.test_magic_methods_and_spec_set..trrcLttg_dSrrrsrrzHTestMockingMagicMethods.test_magic_methods_and_spec_set..set_intvr rr r s @rtest_magic_methods_and_spec_setz7TestMockingMagicMethods.test_magic_methods_and_spec_setgsd % % % % %v % % %X&&& .*?*?*?*?@@@$r((333  dR(((     &   [))) .*?*?*?*?@@@ 7 7 7 7 7 .'222(+++ dR((( .'22222rcftfd}|td|dS)Ncd_dS)NcdSr/rr$s rrzdTestMockingMagicMethods.test_setting_unsupported_magic_method..set_setattr..s$r) __setattr__rsr set_setattrzRTestMockingMagicMethods.test_setting_unsupported_magic_method..set_setattrs66D   rz9Attempting to set unsupported magic method '__setattr__'.)rassertRaisesRegexr )rrrs @r%test_setting_unsupported_magic_methodz=TestMockingMagicMethods.test_setting_unsupported_magic_methodsO{{ 7 7 7 7 7 ~ G      rct}|j}d}|||t|}|||tdS)Nc6t|jdS)Nr)type__mro__)objs r _get_typezKTestMockingMagicMethods.test_attributes_and_return_value.._get_types99$Q' 'r)rrr()rrattrr%returneds r test_attributes_and_return_valuez8TestMockingMagicMethods.test_attributes_and_return_valuesr{{x ( ( ( 4)444466 8,,i88888rct}||jtd|ddj_||dddddS)NrIrru)rrr r-r(rs r"test_magic_methods_are_magic_mocksz:TestMockingMagicMethods.test_magic_methods_are_magic_mockss_{{ d. :::./Q + aA*****rct}t|||jj|||jjdSr/)rr@rrBcalledrr rs rtest_magic_method_reset_mockz4TestMockingMagicMethods.test_magic_method_reset_mocks\{{ D   +,,,  ,-----rcttfD]0}d}||_|t |dg1dS)NcdgSrrrs r_dirz.TestMockingMagicMethods.test_dir.._dirs wrr)rr__dir__r(dir)rrr0s rtest_dirz TestMockingMagicMethods.test_dirs_FFIKK' 1 1D   DL   SYY 0 0 0 0  1 1rc~t}dgj|_|tt|dSr\)rr3rrr2rs rtest_bound_methodsz*TestMockingMagicMethods.test_bound_methodss6 FF S\  )T1-----rcvGddt}|}||j|dS)NceZdZdS);TestMockingMagicMethods.test_magic_method_type..FooNrrrrFoor8rrr9)rrr)rr9rs rtest_magic_method_typez.TestMockingMagicMethods.test_magic_method_typesW     )   cee ck3/////rct}dt|j_|t |ddSr)rr"rBr-r(r@rs rtest_descriptor_from_classz2TestMockingMagicMethods.test_descriptor_from_classs= KK',Q$ Q'''''rct}gd|j_|t |gd|t |gdt gd|j_|t |gd|t |gdS)Nr)ryrg)rr3r-r(r0r2rs r"test_iterable_as_iter_return_valuez:TestMockingMagicMethods.test_iterable_as_iter_return_values KK"+))  a))),,, a))),,,"&yyy//  a))),,, a"%%%%%rc@t}||dztd|j_d|j_d|j_||dzd|d|zd|dz}||ddS)Nr*i)rr __matmul__r- __rmatmul__ __imatmul__r(rs r test_matmulz#TestMockingMagicMethods.test_matmuls KK a!eY///$& !%( "%' " Q### Q$$$ R Brc\t}|td|td|j_|t|ddt}td|}||t|d}||tt|d}||t|d}||tdS)Nr>)rurru)rrdivmod __divmod__r-r( __rdivmod__)rrr foo_directrU bar_directs rtest_divmod_and_rdivmodz/TestMockingMagicMethods.test_divmod_and_rdivmods KK fQllI666$* ! 1v... KKQll c9---\\!__  j)444Qll c9---]]1%%  j)44444rchtdiddi}|t|ddS)N__str__.return_value12r)rr(r@rs rtest_magic_in_initializationz4TestMockingMagicMethods.test_magic_in_initializations=  7 7/6 7 7 Q&&&&&rctdiddi}d|j_|t |dtdiddi}|jdiddi|t |ddS)NrOrP1314r)rrBr-r(r@configure_mockrs r)test_changing_magic_set_in_initializationzATestMockingMagicMethods.test_changing_magic_set_in_initializations  7 7/6 7 7!%  Q&&&  7 7/6 7 7::2D9::: Q&&&&&rN)%rrrrr r*r5r=rCrYrqrrrrrrrrrrrr rrr(r*r-r3r5r:r<r?rFrMrQrVrrrr r s777 : : : . . .:::,,,+++$$$>)))6(((4((("""III0+++>888$ 9 9 9...+++4+++6---33303330    9 9 9+++...111...000((( &&&     5 5 5"''''''''rr __main__)runittestrasyncior unittest.mockrrrrTestCaser rmainrrrr]s  ''''''============p'p'p'p'p'h/p'p'p'f zHMOOOOOr