mò .á¸Ec@sXdkZdkZdkZeiƒdkZdklZdklZdkl Z dk l Z dk l Z dfd„ƒYZdee fd „ƒYZd ee fd „ƒYZyd klZeeƒWnej onXd eifd„ƒYZdefd„ƒYZdefd„ƒYZd„ZedjoeiddƒndS(N(s makerequest(snewSecurityManager(snoSecurityManager(s SimpleItem(sFoldert HookCountercBsDtZdZd„Zd„Zd„Zd„Zd„Zd„ZRS(sLogs calls to old-school hookscCs|iƒdS(N(tselftreset(R((t=/data/zmath/zope/lib/python/OFS/tests/testCopySupportHooks.pyt__init__scCs1d|_dg|_dg|_dg|_dS(Ni(RtcounttafterAddt afterClonet beforeDelete(R((RRs   cCs'|id|_|ii|iƒdS(Ni(RRRtappend(Rtitemt container((Rtmanage_afterAddscCs'|id|_|ii|iƒdS(Ni(RRRR (RR ((Rtmanage_afterClone!scCs'|id|_|ii|iƒdS(Ni(RRRR (RR R ((Rtmanage_beforeDelete%scCs"|id|id|idfS(Niÿÿÿÿ(RRRR(R((Rtorder)s( t__name__t __module__t__doc__RRR R RR(((RRs      tTestItemcBstZd„ZRS(NcCsti|ƒ||_dS(N(RRRtid(RR((RR/s (RRR(((RR-st TestFoldercBs8tZd„Zdd„Zd„Zd„Zd„ZRS(NcCsti|ƒ||_dS(N(RRRR(RR((RR6s icCsdS(N((Rtobjectt validate_src((Rt_verifyObjectPaste:scCs*ti|||ƒti|||ƒdS(N(RR RR R tFolder(RR R ((RR ?scCs$ti||ƒti||ƒdS(N(RR RR R(RR ((RR CscCs*ti|||ƒti|||ƒdS(N(RRRR R R(RR R ((RRGs(RRRRR R R(((RR4s     (ssetDeprecatedManageAddDeletetHookTestcBstZd„Zd„ZRS(NcCs~ttiƒƒ|_yN|ii}|idddggƒ|idƒi|ƒ}t d|ƒWn|i ƒ‚nXdS(NtmanagertsecrettManager( t makerequesttZope2tappRt acl_userstuft _doAddUsert getUserByIdt__of__tusertnewSecurityManagertNonettearDown(RR&R"((RtsetUpUs  cCs%tƒtiƒ|iiiƒdS(N(tnoSecurityManagert transactiontabortRR t_p_jartclose(R((RR)`s (RRR*R)(((RRSs tTestCopySupportcBsVtZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z RS( s;Tests the order in which the add/clone/del hooks are calledcCs™ti|ƒ|iidtdƒƒ|id|_|iidtdƒƒ|id|_|iidtdƒƒt i dƒ|ii i ƒdS(Ntfoldert subfoldertmydoci( RR*RR t _setObjectRR1R2RR,t savepointR3R(R((RR*is  cCs9|ii|iidƒ|i|iiiƒdƒdS(Ntyourdociii(iii(RR2t manage_cloneR1R3t assertEqualR6R(R((Rt test_1_ClonexscCsE|iidgƒ}|ii|ƒ|i|iiiƒdƒdS(NR3iii(iii( RR1tmanage_copyObjectstcbR2tmanage_pasteObjectsR8R3R(RR;((Rttest_2_CopyPaste}scCsE|iidgƒ}|ii|ƒ|i|iiiƒdƒdS(NR3iii(iii( RR1tmanage_cutObjectsR;R2R<R8R3R(RR;((Rttest_3_CutPasteƒscCs3|iiddƒ|i|iiiƒdƒdS(NR3R6iii(iii(RR1tmanage_renameObjectR8R6R(R((Rt test_4_Rename‰scCs…|ii}d|idR;R2R<R8RTRR3(RR;((RR?ÏscCsR|iiddƒ|i|iiiƒdƒ|i|iiiiƒdƒdS(NRTRUiii(iii(iii(RR1R@R8RURR3(R((RRAÖscCs¤|ii}d|id