a oeZ @sddlZddlZddlZddlZddlZddlZGdddeZGdddZ ddZ dd Z Gd d d ej j jZed kredS) Nc@s eZdZdS)ErrorN)__name__ __module__ __qualname__rr>C:\Program Files\Certbot\pkgs\win32com\test\policySemantics.pyr src@sTeZdZdgZdddZddZddZd d Zd d Zd dZ ddZ ddZ dS)PythonSemanticClassInAddRemove) cCs g|_dSNlistselfrrr__init__szPythonSemanticClass.__init__cCstjj|jSr)win32comserverutilZNewEnumrrrrr_NewEnumszPythonSemanticClass._NewEnumcCs|jSrrrrrr_value_szPythonSemanticClass._value_cCs t|jSr)sumrrrrr _EvaluateszPythonSemanticClass._EvaluatecCs ||jvSrrrvaluerrrr !szPythonSemanticClass.IncCs|j|dSr)rappendrrrrr $szPythonSemanticClass.AddcCs|j|dSr)rremoverrrrr 'szPythonSemanticClass.RemoveN) rrrZ_public_methods_Z_dispid_to_func_rrrrr r r rrrrrs rc Cs |dddksJd|dddks0Jd|dddksHJd |d dtjksbJd g}d }z|d|}||Wqjtjy}z8|j\}}}}|tj ksJd WYd}~qWYd}~qjd}~00qj| |tj tjdddgkrt d|dS)Nr rr z Policy did not honour the dispidr r r iz!Allocated dispid unexpected valuerz _NewEnum() got unexpected DISPIDzBad result at end of enumzGot back the wrong dispids: %s) printZ GetDispID pythoncomZDISPID_NEWENUMZ GetNextDispIDrZ com_errorargswinerrorZS_FALSEsortDISPID_EVALUATEr)obZdispidsZdispidZxxx_todo_changemehrZdescexcargrrr DispExTest+s& $r*cCsr|d|d|d|dkr:tdt||j}|tjdtjtjBd}|dkrntd|dS) N)r+r,r-zBad result - got %srzEvaluate returned %d) r rrepr_oleobj_ZInvoker!r%ZDISPATCH_METHODZDISPATCH_PROPERTYGET)r&Zdispobrcrrr SemanticTestEs     r2c@s,eZdZddZddZddZddZd S) TestercCsFd}ddl}|r|jjj}nd}|jjjt|d}|j||_ dS)Nr)Z useDispatcher) Zwin32com.server.dispatcherr dispatcherZDefaultDebugDispatcherrwraprZclientZDispatchr&)rdebugrr4ZdisprrrsetUp[s z Tester.setUpcCs d|_dSr)r&rrrrtearDownhszTester.tearDowncCst|jdSr)r2r&rrrr testSemanticskszTester.testSemanticscCs|jjtj}t|dSr)r&r0ZQueryInterfacer!ZIID_IDispatchExr*)rZdispexobrrrtestIDispatchExnszTester.testIDispatchExN)rrrr7r8r9r:rrrrr3Zs r3__main__)Zunittestr!Zwin32com.clientrZwin32com.server.utilZwin32com.test.utilr# Exceptionrrr*r2testrZTestCaser3rmainrrrrs