a „oeŒ ã@sVddlZddlZddlZddlmZddlmZGdd„dejƒZe dkrRe  ¡dS)éN)ÚDispatch)ÚEnsureDispatchc@sLeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dS)Ú PippoTestercCs2ddlm}ddlm}||jdƒtdƒ|_dS)Nr)Ú pippo_server)ÚRegisterPythonServerúPython.Test.Pippo)Z win32com.testrZwin32com.test.utilrÚ__file__rÚobject)Úselfrr©r ú8C:\Program Files\Certbot\pkgs\win32com\test\testPippo.pyÚsetUp s   zPippoTester.setUpcCsŠz tj}Wn"ty,tdƒdd„}Yn0|j ¡|ƒ}tdƒD]}tdƒ}| ¡qFd}|ƒ}||dkr†| d||f¡dS)Nú,Please run this with python_d for leak testscSsdS©Nrr r r r r Úóz'PippoTester.testLeaks..éèréúWe lost %d references!) ÚsysÚgettotalrefcountÚAttributeErrorÚprintr ÚMethod1ÚrangerÚfail)r ÚgtrcÚstartÚir Úendr r r Ú testLeakss      zPippoTester.testLeakscCs.|j dd¡\}}| |d¡| |d¡dS)Né{éoéÞ)r ZMethod2Ú assertEqual)r ÚrcZout1r r r Ú testResults#s zPippoTester.testResultscCs | gd¢¡| gd¢¡dS)N©éýÿÿÿéþÿÿÿéÿÿÿÿrééé©g…ëQ¸ Àr)gš™™™™™¹¿ggš™™™™™ñ?g@r-)Ú _testArray©r r r r ÚtestPythonArrays(szPippoTester.testPythonArrayscCsPz ddl}WntdƒYdS0| | gd¢¡¡| | gd¢¡¡dS)Nrz=Numpy test not possible because numpy module failed to importr'r.)Únumpyrr/Zarray)r r2r r r ÚtestNumpyArrays,s zPippoTester.testNumpyArrayscCs,dttƒvr(| tdƒ¡| tdƒ¡dS)NÚbytesz b'abcdef'zbytearray(b'abcdef'))ÚdirÚ __builtins__r/Úevalr0r r r ÚtestByteArrays5s zPippoTester.testByteArrayscCs$|j |¡}| t|ƒt|ƒ¡dS)N)r ZMethod3r$Úlist)r ZinArrayZoutArrayr r r r/;s zPippoTester._testArraycCsˆz tj}Wn"ty,tdƒdd„}Yn0tdƒ}|ƒ}tdƒD]}tdƒ}| ¡qDd}|ƒ}||dkr„| d||f¡dS)NrcSsdSrr r r r r rDrz/PippoTester.testLeaksGencache..rré r)rrrrrrrr)r rr rrrr r r ÚtestLeaksGencache?s     zPippoTester.testLeaksGencacheN) Ú__name__Ú __module__Ú __qualname__r r r&r1r3r8r/r;r r r r r s rÚ__main__) rZunittestZ pythoncomZwin32com.clientrZwin32com.client.gencacherZTestCaserr<Úmainr r r r Ús  H