{t<.SSKrSSKrSSKJr "SS\5r"SS\5r"SS\5r"S S \5r"S S \ 5r "S S\ 5r "SS\ 5r "SS\ 5r "SS\ 5r"SS\ 5r"SS\R 5r"SS\5r"SS\5r"SS\5r"SS \R 5r"S!S"5r"S#S$\\R 5r"S%S&\\R 5r\S':Xa\R6"5 gg)(N)supportc\rSrSrSrg) PropertyBaseN__name__ __module__ __qualname____firstlineno____static_attributes__r9/opt/alt/python313/lib64/python3.13/test/test_property.pyrrrrc\rSrSrSrg) PropertyGet rNrrrrrr rrrc\rSrSrSrg) PropertySetrNrrrrrrrrrc\rSrSrSrg) PropertyDelrNrrrrrrrrrcr\rSrSrSr\S5r\RS5r\RS5rSr g) BaseClasscSUlg)N_spamselfs r__init__BaseClass.__init__s  rcUR$)BaseClass.getterrr!s rspamBaseClass.spamzzrcXlgNrr"values rr'r(s rcU?gr+rr!s rr'r(!s JrrN) r r r r r#propertyr'setterdeleterr rrrrrsK [[ \\rrc\rSrSr\R R S5r\RS5r\RS5rSr g)SubClass%c,[UR5e)SubClass.getter)rr r!s rr' SubClass.spam's$**%%rc,[UR5er+)rr r,s rr'r7,$**%%rc,[UR5er+)rr r!s rr'r70r9rrN) r r r r rr'getterr0r1r rrrr3r3%sN^^&& [[&& \\&&rr3c,\rSrSrSrSr\"\SS9rSrg)PropertyDocBase4cUR$r+rr!s r _get_spamPropertyDocBase._get_spam6s zzrspam spam spamdocrN) r r r r r rAr/r'r rrrr=r=4s E I#3 4Drr=cL\rSrSr\R R S5rSrg)PropertyDocSub:cUR$)z*The decorator does not use this doc stringrr!s rr'PropertyDocSub.spam;r)rrN)r r r r r=r'r;r rrrrGrG:s   !rrGcL\rSrSr\R R S5rSrg)PropertySubNewGetter@cg) new docstringrrr!s rr'PropertySubNewGetter.spamArrN)r r r r rr'r;r rrrrLrL@s^^rrLcH\rSrSr\S5r\R S5rSrg)PropertyNewGetterFcg)zoriginal docstringr?rr!s rr'PropertyNewGetter.spamGrQrcg)rOrrr!s rr'rVKrQrrN)r r r r r/r'r;r rrrrSrSFs,  [[rrScf\rSrSrSrSr\R"\RRS:S5S5r \R"\RRS:S5S5r Sr \R"\RRS:S5S 5rS r\R"\RRS:S5S 5r\R"\RRS:S5S 5r\R&S 5r\R&S5rSrSrSrSrg) PropertyTestsPc[5nURURS5 URURS5 SUlURURS5 URURS5 [ US5 UR [ US5(+5 UR [ US5(+5 SUlURURS5 URURS5 g)Nr r'r r)r assertEqualr'r delattr assertTruehasattrr"bases r!test_property_decorator_baseclass/PropertyTests.test_property_decorator_baseclassQs{ A& Q'  B' R(f GD&112 GD'223  B' R(rc[5nUR[[US5 UR[[ USS5 UR[ [US5 g)Nr')r3 assertRaisesrgetattrrsetattrrr^r"subs r test_property_decorator_subclass.PropertyTests.test_property_decorator_subclass`sGj +wV< +wVTB +wV\rSrSrSrY\l\"\5rSrg)EPropertyTests.test_property___isabstractmethod__descriptor..Ccgr+rr!s rfooIPropertyTests.test_property___isabstractmethod__descriptor..C.foorrNr r r r r__isabstractmethod__r/r )valsrCrs+.(smrrc\rSrSrSr\rSrg)KPropertyTests.test_property___isabstractmethod__descriptor..NotBoolc[5er+) ValueErrorr!s r__bool__TPropertyTests.test_property___isabstractmethod__descriptor..NotBool.__bool__s  l"rrN)r r r r r__len__r rrrNotBoolrs  #GrrcF>\rSrSrSrY"5\l\"\5rSrg)rcgr+rr!s rrrrrrNr)rsrrrs+29(smr)objectassertIsrrboolrfr)r"rrrs @@r,test_property___isabstractmethod__descriptor:PropertyTests.test_property___isabstractmethod__descriptors%aS"c2C $F $ MM!%%44d3i @ 3 f   z * $F $ EE & & + * *s 8)B** B8c[SS9nURURS5 SUlURURS5 g)NbasicrDextendedr/r]rq)r"ps r"test_property_builtin_doc_writable0PropertyTests.test_property_builtin_doc_writables=  ! G,  J/rc&"SS[5nU"5nURURRRS5 SURRlURURRRS5 g)Nc$\rSrSr\S5rSrg)OPropertyTests.test_property_decorator_doc_writable..PropertyWritableDoccg)Eggseggsrr!s rr'TPropertyTests.test_property_decorator_doc_writable..PropertyWritableDoc.spamsrrN)r r r r r/r'r rrrPropertyWritableDocrs   rrrSpam)rr]rpr'rq)r"rrjs r$test_property_decorator_doc_writable2PropertyTests.test_property_decorator_doc_writablesj & "# ++33V<%+ " ++33V.gettersrcgr+rr,s rr00PropertyTests.test_property_name..setter rcp>\rSrSr\S5r\R S5r\"Y5r\"SY5r Sr g)+PropertyTests.test_property_name..AcgNr?rr!s rr/PropertyTests.test_property_name..A.foosrcgr+rr,s roof/PropertyTests.test_property_name..A.oofsrNr) r r r r r/rr0rbarbazr )r;r0srArsE   ZZ  6"C4(Crrrrrrr;myquuxz-'property' object has no attribute '__name__'r?c\rSrSrSrSrg)-PropertyTests.test_property_name..Errc[S5e)Nfail) RuntimeError)r"attrs r __getattr__9PropertyTests.test_property_name..Err.__getattr__s "6**rrN)r r r r rr rrrErrrs +rrrnot_fail) r]rr rrrr/quuxrassertRaisesRegexAttributeErrorr)r"rrrr;r0s @@rtest_property_name PropertyTests.test_property_names   ) ) / / / /&! (3" (3 / !&&//*  # # K  T6 " + +  # # K  QK   + + SUO  # #L& 9 JJ:   Z0'    : 9s$I I I, I I), I:c[5nSH9nUR[SUS35 UR"S/U-6 SSS5 M; g!,(df  MM=f)N)rr?z3^__set_name__\(\) takes 2 positional arguments but z were given$r)r/r TypeError __set_name__)r"rrs r%test_property_set_name_incorrect_args3PropertyTests.test_property_set_name_incorrect_argssY JA''FqcV!q* s A  A c"SS[5n"SS5n[RU5nURUS5 URS5ng)Nc\rSrSrSrSrg)EPropertyTests.test_property_setname_on_property_subclass..proicg)Nabcdefr)typargskwargss r__new__MPropertyTests.test_property_setname_on_property_subclass..pro.__new__srrN)r r r r rr rrrprors rrc\rSrSrSrg)CPropertyTests.test_property_setname_on_property_subclass..AirNrrrrrrs rrr?cgrrr!s rJPropertyTests.test_property_setname_on_property_subclass..s1r)r/rrr;)r"rrrnps r*test_property_setname_on_property_subclass8PropertyTests.test_property_setname_on_property_subclass sF (      S ! q! XXn %rrN)r r r r rcrkunittestskipIfrflagsoptimizerrrurxr}rrrr refcount_testrrrrrr rrrrYrYPsd )=__SYY''1,@BHBH__SYY''1,@BJBJG __SYY''1,@BLBL'.__SYY''1,@B0B0 __SYY''1,@B =B = NN NN"31j+&rrYc\rSrSrSrSrg) PropertySubiThis is a subclass of propertyrN)r r r r rqr rrrr r s(rr c\rSrSrSrg)PropertySubWoDoci!rNrrrrr r !rrr c\rSrSrSrSrSrg)PropertySubSlotsi$z5This is a subclass of property that defines __slots__rN)r r r r rq __slots__r rrrrr$s ?IrrcD\rSrSr\R S5rSr\R"\ RRS:S5S5r \R"\ RRS:S5S5r\R"\ RRS:S5S5r\R"\ RRS:S5S 5r\R"\ RRS:S5S 5r\R"\ RRS:S5S 5rS r\R"\ RRS:S5S 5r\R"\ RRS:S5S5rSrg)PropertySubclassTestsi(cUR[5 "SS[5nSSS5 g!,(df  g=f)Nc$\rSrSr\S5rSrg)FPropertySubclassTests.test_slots_docstring_copy_exception..Fooi2cg)z5Trying to copy this docstring will raise an exceptionr?rr!s rr'KPropertySubclassTests.test_slots_docstring_copy_exception..Foo.spam3srrN)r r r r rr'r rrrFoor2s!"rr)rfrrr"rs r#test_slots_docstring_copy_exception9PropertySubclassTests.test_slots_docstring_copy_exception*s*  ~ . f / . .s/ =c"SS[5nU"5nUR[USS55 SnU"U5nUR[USS55 g)Nc\rSrSrSrSrg)QPropertySubclassTests.test_property_with_slots_no_docstring..slotted_propi:rrNr r r r rr rrr slotted_propr: Irr!rqcg)Nrrrrundocumented_getterXPropertySubclassTests.test_property_with_slots_no_docstring..undocumented_getter@r)r/rrg)r"r!rr%s r%test_property_with_slots_no_docstring;PropertySubclassTests.test_property_with_slots_no_docstring8sW !8 ! N '!Y56  , - '!Y56rrmrnc"SS[5nU"SS9nURUR5 SnUR[5 U"U5nSSS5 g!,(df  g=f)Nc\rSrSrSrSrg)_PropertySubclassTests.test_property_with_slots_docstring_silently_dropped..slotted_propiJrrNr rrrr!r,Jr"rr! what's uprDcg)z getter doc.r$rrrrdocumented_getterdPropertySubclassTests.test_property_with_slots_docstring_silently_dropped..documented_getterPr)r/rrqrfrr"r!rr/s r3test_property_with_slots_docstring_silently_droppedIPropertySubclassTests.test_property_with_slots_docstring_silently_droppedFsX !8 ! [ ) !))$    ~ ../A/ . .s A A)c"SS[5nU"SS9nURSUR5 SnU"U5nURSUR5 g)Nc\rSrSrSrSrg)cPropertySubclassTests.test_property_with_slots_and_doc_slot_docstring_present..slotted_propi])rrqrNr rrrr!r7]s*Irr!r-rDcg)what's up getter doc?r$rrrrr/hPropertySubclassTests.test_property_with_slots_and_doc_slot_docstring_present..documented_gettercr1rr9rr2s r7test_property_with_slots_and_doc_slot_docstring_presentMPropertySubclassTests.test_property_with_slots_and_doc_slot_docstring_presentYsU +8 + [ ) aii0  * + 0!)).getterurcgr+rr@s r getter_wo_doc.getter_wo_docxrrz1Getter overrides explicit property docstring (%s)r?z&Getter docstring is not picked-up (%s)z3Property class doc appears in instance __doc__ (%s))r]r rqr/r r r)r"rEr;rEpss rtest_issue41287%PropertySubclassTests.test_issue41287jsP ,,.NF H$d,BCKK 4V X # K)99BVT4)?@HHC   S"8PSUS^S^^ `VT4.66C   S"46^acalal6l m]D$0FGOOC   S"8PSUS^S^^ `]D$5==C   c#X[][f[f#f g:rcn"SS[5nURURRS5 g)Nc$\rSrSr\S5rSrg)6PropertySubclassTests.test_docstring_copy..Fooicg)!spam wrapped in property subclassr?rr!s rr';PropertySubclassTests.test_docstring_copy..Foo.spamrrNr r r r r r'r rrrrrL   rrrNrr]r'rqrs rtest_docstring_copy)PropertySubclassTests.test_docstring_copys. &   HH   / 1rcSnSnSn[USSS5nURU5nURURS5 URURS5 [USSS5nURU5nURURS5 URURS5 [USSS5nURU5nURURS5 URURS5 [USSS5nSUlURU5nURURS5 URURS5 [USSS5nSUlURU5nURURS5 URURS5 g) a  Property tries to provide the best docstring it finds for its instances. If a user-provided docstring is available, it is preserved on copies. If no docstring is available during property creation, the property will utilize the docstring from the getter if available. cgrrr!s rgetter1;PropertySubclassTests.test_docstring_copy2..getter1r'rcg)doc 2rmrr!s rgetter2;PropertySubclassTests.test_docstring_copy2..getter2r1rcg)doc 3rrr!s rgetter3;PropertySubclassTests.test_docstring_copy2..getter3r1rNzdoc-Ar[r_user)r/r;r]rq)r"rXr\r`rp2s rtest_docstring_copy2*PropertySubclassTests.test_docstring_copy2s    WdD' 2 XXg  G, W- WdD' 2 XXg  G, W- WdD$ / XXg  G, W- WdD$ / XXg  F+ W- WdD$ / XXg  F+ V,rcUR[SS9RS5 UR[SS9RS5 "SS5nURURRS5 g)Nz explicit docrDcX\rSrSr\"SS9r\R S5rSr\"S\S9rSr g ) ;PropertySubclassTests.test_prefer_explicit_doc..Fooizspam explicit docrDcg)zignored as doc already setr?rr!s rr'@PropertySubclassTests.test_prefer_explicit_doc..Foo.spamrPrcg)zignored as doc set directlyNrr!s r _stuff_getterIPropertySubclassTests.test_prefer_explicit_doc..Foo._stuff_getterrCrstuff doc argument)rErrN) r r r r r r'r;rlstuffr rrrrrhs5#67D [[   2$8}MErrrn)r]r/rqr rors rtest_prefer_explicit_doc.PropertySubclassTests.test_prefer_explicit_docsc n5==~N 8@@.Q N N **,@Arc"SS5nUR[U"55RS5 UR[U"55RS5 g)Nc$\rSrSr\S5rSrg)CPropertySubclassTests.test_property_no_doc_on_getter..NoDocic[er+)rr!s rrqKPropertySubclassTests.test_property_no_doc_on_getter..NoDoc.__doc__s$$rrN)r r r r r/rqr rrrNoDocrts  % %rrw)r]r/rqr )r"rws rtest_property_no_doc_on_getter4PropertySubclassTests.test_property_no_doc_on_gettersH % % %'*22D9 UW-55t.FooicSUlgrrr!s rr#XPropertySubclassTests.test_property_setter_copies_getter_docstring..Foo.__init__sQ rcUR$)rNrr!s rr'TPropertySubclassTests.test_property_setter_copies_getter_docstring..Foo.spamszz!rcXlg)zthis docstring is ignoredNrr,s rr'rs # rrN) r r r r r#r r'r0r rrrrr|s/ .  " "[[ # #rrr?rmrNcP>\rSrSrYRR S5rSrg)RPropertySubclassTests.test_property_setter_copies_getter_docstring..FooSubicSUlg)zanother ignored docstringrNrr,s rr'WPropertySubclassTests.test_property_setter_copies_getter_docstring..FooSub.spam s $ rrN)r r r r r'r0r )rsrFooSubrs XX__ $ $rrrrS)r"rrfoosubrs @r,test_property_setter_copies_getter_docstringBPropertySubclassTests.test_property_setter_copies_getter_docstrings #& #e 1% 1%  HH   / 1 $S $  a(  f-  KK   / 1rc^"SS[5nURURRS5 "SS[5m"U4SjST5nURURRS5 g)NcH\rSrSr\S5r\R S5rSrg)IPropertySubclassTests.test_property_new_getter_new_docstring..Fooicgz a docstringr?rr!s rr'NPropertySubclassTests.test_property_new_getter_new_docstring..Foo.spamrPrcga new docstringrmrr!s rr'rrPrrN)r r r r r r'r;r rrrrrs,   [[  rrrc$\rSrSr\S5rSrg)MPropertySubclassTests.test_property_new_getter_new_docstring..FooBasei#cgrrr!s rr'RPropertySubclassTests.test_property_new_getter_new_docstring..FooBase.spam$rPrrNrQrrrFooBaser#rRrrcP>\rSrSrYRR S5rSrg)JPropertySubclassTests.test_property_new_getter_new_docstring..Foo2i(cgrrr!s rr'OPropertySubclassTests.test_property_new_getter_new_docstring..Foo2.spam)rPrrN)r r r r r'r;r )rsrFoo2r(s \\  ! rrrS)r"rrrs @r&test_property_new_getter_new_docstring__SYY''1,@B>B>rrcH\rSrSrSrSrSrSr\S5r Sr Sr Sr Sr g) _PropertyUnreachableAttributei0Nc8URRU5$r+) msg_formatformat)r"msgs r_format_exc_msg-_PropertyUnreachableAttribute._format_exc_msg5s%%c**rc.UR5Ulgr+)clsobj)rs r setUpClass(_PropertyUnreachableAttribute.setUpClass8s'')rcUR[URS55 URR SSS5 g!,(df  g=f)Nz has no getterrrrrrr!s rtest_get_property/_PropertyUnreachableAttribute.test_get_property<s5  # #ND4H4H4Y Z HHLL[ Z Zs A AcUR[URS55 SURlSSS5 g!,(df  g=f)Nz has no setterrr!s rtest_set_property/_PropertyUnreachableAttribute.test_set_property@s5  # #ND4H4H4Y ZDHHL[ Z Zs A AcUR[URS55 UR?SSS5 g!,(df  g=f)Nzhas no deleterrr!s rtest_del_property/_PropertyUnreachableAttribute.test_del_propertyDs4  # #ND4H4HIY4Z [ \ [ [s < A r)r r r r rrrr classmethodrrrrr rrrrr0s9J C C+ rrc,\rSrSrSr"SS5rSrg)$PropertyUnreachableAttributeWithNameiIzI^property 'foo' of 'PropertyUnreachableAttributeWithName\.cls' object {}$c"\rSrSr\"5rSrg)(PropertyUnreachableAttributeWithName.clsiLrN)r r r r r/rr rrrrrLs jrrrN)r r r r rrr rrrrrIs]JrrcD\rSrSrSr"SS5r\"5\lSrg)"PropertyUnreachableAttributeNoNameiPzA^property of 'PropertyUnreachableAttributeNoName\.cls' object {}$c\rSrSrSrg)&PropertyUnreachableAttributeNoName.clsiSrNrrrrrrSs rrrN) r r r r rrr/rr rrrrrPsUJ  jCGrr__main__)rrtestr Exceptionrrrrrrr3r=rGrLrSTestCaserYr/r r rrrrrr mainrrrrs"  9  ,  ,  , " &y &5f5 _ 9 K&H%%K&\)() x xE>H--E>P2+H(J[J[)FHYHY z MMOr