
    (ph K                     d    S r SSKr " S S\R                  5      r " S S\5      r " S S5      rg)	z!zope.interface.verify unit tests
    Nc                       \ rS rSrSrS r\S 5       rS rS r	S r
S rS	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S r!S r"S  r#S! r$S" r%S# r&S$ r'S% r(S& r)S'r*g)(Test_verifyClass   Nc                 .    U R                  5       U l        g N)_get_FUTverifierselfs    S/var/www/html/venv/lib/python3.13/site-packages/zope/interface/tests/test_verify.pysetUpTest_verifyClass.setUp   s        c                     SSK Jn  U$ )Nr   )verifyClass)zope.interface.verifyr   )clsr   s     r   r   Test_verifyClass._get_FUT   s    5r   c                     U$ r    )r   xs     r   _adjust_object_before_verify-Test_verifyClass._adjust_object_before_verify!   s    r   c                 H    U R                   " UU R                  U5      40 UD6$ r   )r	   r   )r   ifaceklasskwargss       r   _callFUTTest_verifyClass._callFUT$   s+    }}U!>>uE'%' 	'r   c                 ~    SSK Jn  SSKJn   " S SU5      n " S S5      nU R	                  X R
                  X45        g )Nr   	InterfaceDoesNotImplementc                       \ rS rSrSrg)>Test_verifyClass.test_class_doesnt_implement.<locals>.ICurrent-   r   N__name__
__module____qualname____firstlineno____static_attributes__r   r   r   ICurrentr&   -       r   r.   c                       \ rS rSrSrg)=Test_verifyClass.test_class_doesnt_implement.<locals>.Current0   r   Nr(   r   r   r   Currentr1   0   r/   r   r3   )zope.interfacer"   zope.interface.exceptionsr$   assertRaisesr   )r   r"   r$   r.   r3   s        r   test_class_doesnt_implement,Test_verifyClass.test_class_doesnt_implement)   s5    ,>	y 		 	 	*MM8Mr   c                 x    SSK Jn  SSK Jn   " S SU5      n " S S5      nU" XC5        U R                  X45        g )Nr   r!   classImplementsc                       \ rS rSrSrg)XTest_verifyClass.test_class_doesnt_implement_but_classImplements_later.<locals>.ICurrent9   r   Nr(   r   r   r   r.   r=   9   r/   r   r.   c                       \ rS rSrSrg)WTest_verifyClass.test_class_doesnt_implement_but_classImplements_later.<locals>.Current<   r   Nr(   r   r   r   r3   r@   <   r/   r   r3   )r4   r"   r;   r   )r   r"   r;   r.   r3   s        r   5test_class_doesnt_implement_but_classImplements_laterFTest_verifyClass.test_class_doesnt_implement_but_classImplements_later5   s4    ,2	y 		 	 	*h(r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   implementerBrokenImplementationc                       \ rS rSrS rSrg)PTest_verifyClass.test_class_doesnt_have_required_method_simple.<locals>.ICurrentH   c                      g	docstringNr   r   r   r   methodWTest_verifyClass.test_class_doesnt_have_required_method_simple.<locals>.ICurrent.methodI       r   r   Nr)   r*   r+   r,   rO   r-   r   r   r   r.   rJ   H        r   r.   c                       \ rS rSrSrg)OTest_verifyClass.test_class_doesnt_have_required_method_simple.<locals>.CurrentL   r   Nr(   r   r   r   r3   rU   L       r   r3   r4   r"   rF   r5   rH   r6   r   )r   r"   rF   rH   r.   r3   s         r   -test_class_doesnt_have_required_method_simple>Test_verifyClass.test_class_doesnt_have_required_method_simpleC   sQ    ,.B	 y 	  
X		 	 
	 	.--	<r   c                 ~    SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  X45        g )Nr   r!   rE   c                       \ rS rSrS rSrg)HTest_verifyClass.test_class_has_required_method_simple.<locals>.ICurrentW   c                      grM   r   r   r   r   rO   OTest_verifyClass.test_class_has_required_method_simple.<locals>.ICurrent.methodX   rQ   r   r   NrR   r   r   r   r.   r]   W   rS   r   r.   c                       \ rS rSrS rSrg)GTest_verifyClass.test_class_has_required_method_simple.<locals>.Current[   c                     [        5       er   NotImplementedErrorr
   s    r   rO   NTest_verifyClass.test_class_has_required_method_simple.<locals>.Current.method^       )++r   r   NrR   r   r   r   r3   rb   [       ,r   r3   r4   r"   rF   r   r   r"   rF   r.   r3   s        r   %test_class_has_required_method_simple6Test_verifyClass.test_class_has_required_method_simpleS   s@    ,.	 y 	  
X		, 	, 
	,
 	h(r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      n " S SU5      nU" U5       " S	 S
5      5       nU R                  UU R                  XV5        g )Nr   r!   rE   rG   c                       \ rS rSrS rSrg)NTest_verifyClass.test_class_doesnt_have_required_method_derived.<locals>.IBaseh   c                      grM   r   r   r   r   rO   UTest_verifyClass.test_class_doesnt_have_required_method_derived.<locals>.IBase.methodi   rQ   r   r   NrR   r   r   r   IBaserp   h   rS   r   rt   c                       \ rS rSrSrg)QTest_verifyClass.test_class_doesnt_have_required_method_derived.<locals>.IDerivedl   r   Nr(   r   r   r   IDerivedrv   l   r/   r   rx   c                       \ rS rSrSrg)PTest_verifyClass.test_class_doesnt_have_required_method_derived.<locals>.Currento   r   Nr(   r   r   r   r3   rz   o   rW   r   r3   rX   )r   r"   rF   rH   rt   rx   r3   s          r   .test_class_doesnt_have_required_method_derived?Test_verifyClass.test_class_doesnt_have_required_method_derivedc   s]    ,.B	 I 	 	u 	 
X		 	 
	 	.--	<r   c                     SSK Jn  SSK Jn   " S SU5      n " S SU5      nU" U5       " S S	5      5       nU R                  XE5        g )
Nr   r!   rE   c                       \ rS rSrS rSrg)FTest_verifyClass.test_class_has_required_method_derived.<locals>.IBasez   c                      grM   r   r   r   r   rO   MTest_verifyClass.test_class_has_required_method_derived.<locals>.IBase.method{   rQ   r   r   NrR   r   r   r   rt   r   z   rS   r   rt   c                       \ rS rSrSrg)ITest_verifyClass.test_class_has_required_method_derived.<locals>.IDerived~   r   Nr(   r   r   r   rx   r   ~   r/   r   rx   c                       \ rS rSrS rSrg)HTest_verifyClass.test_class_has_required_method_derived.<locals>.Current   c                     [        5       er   re   r
   s    r   rO   OTest_verifyClass.test_class_has_required_method_derived.<locals>.Current.method   rh   r   r   NrR   r   r   r   r3   r      ri   r   r3   rj   )r   r"   rF   rt   rx   r3   s         r   &test_class_has_required_method_derived7Test_verifyClass.test_class_has_required_method_derivedv   sL    ,.	 I 	 	u 	 
X		, 	, 
	,
 	h(r   c                 ~    SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  X45        g )Nr   r!   rE   c                       \ rS rSrS rSrg)KTest_verifyClass.test_method_takes_wrong_arg_names_but_OK.<locals>.ICurrent   c                     grM   r   as    r   rO   RTest_verifyClass.test_method_takes_wrong_arg_names_but_OK.<locals>.ICurrent.method   rQ   r   r   NrR   r   r   r   r.   r           r   r.   c                       \ rS rSrS rSrg)JTest_verifyClass.test_method_takes_wrong_arg_names_but_OK.<locals>.Current   c                     [        5       er   re   )r   bs     r   rO   QTest_verifyClass.test_method_takes_wrong_arg_names_but_OK.<locals>.Current.method   rh   r   r   NrR   r   r   r   r3   r      ri   r   r3   rj   rk   s        r   (test_method_takes_wrong_arg_names_but_OK9Test_verifyClass.test_method_takes_wrong_arg_names_but_OK   s@    ,.	 y 	 
 
X		, 	, 
	,
 	h(r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   rE   BrokenMethodImplementationc                       \ rS rSrS rSrg)DTest_verifyClass.test_method_takes_not_enough_args.<locals>.ICurrent   c                     grM   r   r   s    r   rO   KTest_verifyClass.test_method_takes_not_enough_args.<locals>.ICurrent.method   rQ   r   r   NrR   r   r   r   r.   r      r   r   r.   c                       \ rS rSrS rSrg)CTest_verifyClass.test_method_takes_not_enough_args.<locals>.Current   c                     [        5       er   re   r
   s    r   rO   JTest_verifyClass.test_method_takes_not_enough_args.<locals>.Current.method   rh   r   r   NrR   r   r   r   r3   r      ri   r   r3   r4   r"   rF   r5   r   r6   r   r   r"   rF   r   r.   r3   s         r   !test_method_takes_not_enough_args2Test_verifyClass.test_method_takes_not_enough_args   Q    ,.H	 y 	 
 
X		, 	, 
	,
 	4--	<r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   rE   r   c                       \ rS rSrS rSrg)LTest_verifyClass.test_method_doesnt_take_required_starargs.<locals>.ICurrent   c                      grM   r   argss    r   rO   STest_verifyClass.test_method_doesnt_take_required_starargs.<locals>.ICurrent.method   rQ   r   r   NrR   r   r   r   r.   r      r   r   r.   c                       \ rS rSrS rSrg)KTest_verifyClass.test_method_doesnt_take_required_starargs.<locals>.Current   c                     [        5       er   re   r
   s    r   rO   RTest_verifyClass.test_method_doesnt_take_required_starargs.<locals>.Current.method   rh   r   r   NrR   r   r   r   r3   r      ri   r   r3   r   r   s         r   )test_method_doesnt_take_required_starargs:Test_verifyClass.test_method_doesnt_take_required_starargs   r   r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   rE   r   c                       \ rS rSrS rSrg)OTest_verifyClass.test_method_doesnt_take_required_only_kwargs.<locals>.ICurrent   c                      grM   r   )kws    r   rO   VTest_verifyClass.test_method_doesnt_take_required_only_kwargs.<locals>.ICurrent.method   rQ   r   r   NrR   r   r   r   r.   r      r   r   r.   c                       \ rS rSrS rSrg)NTest_verifyClass.test_method_doesnt_take_required_only_kwargs.<locals>.Current   c                     [        5       er   re   r
   s    r   rO   UTest_verifyClass.test_method_doesnt_take_required_only_kwargs.<locals>.Current.method   rh   r   r   NrR   r   r   r   r3   r      ri   r   r3   r   r   s         r   ,test_method_doesnt_take_required_only_kwargs=Test_verifyClass.test_method_doesnt_take_required_only_kwargs   r   r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   rE   r   c                       \ rS rSrS rSrg)>Test_verifyClass.test_method_takes_extra_arg.<locals>.ICurrent   c                     grM   r   r   s    r   rO   ETest_verifyClass.test_method_takes_extra_arg.<locals>.ICurrent.method   rQ   r   r   NrR   r   r   r   r.   r      r   r   r.   c                       \ rS rSrS rSrg)=Test_verifyClass.test_method_takes_extra_arg.<locals>.Current   c                     [        5       er   re   r   r   r   s      r   rO   DTest_verifyClass.test_method_takes_extra_arg.<locals>.Current.method   rh   r   r   NrR   r   r   r   r3   r      ri   r   r3   r   r   s         r   test_method_takes_extra_arg,Test_verifyClass.test_method_takes_extra_arg   r   r   c                 ~    SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  X45        g )Nr   r!   rE   c                       \ rS rSrS rSrg)KTest_verifyClass.test_method_takes_extra_arg_with_default.<locals>.ICurrent   c                     grM   r   r   s    r   rO   RTest_verifyClass.test_method_takes_extra_arg_with_default.<locals>.ICurrent.method   rQ   r   r   NrR   r   r   r   r.   r      r   r   r.   c                       \ rS rSrSS jrSrg)JTest_verifyClass.test_method_takes_extra_arg_with_default.<locals>.Current   Nc                     [        5       er   re   r   s      r   rO   QTest_verifyClass.test_method_takes_extra_arg_with_default.<locals>.Current.method   rh   r   r   r   rR   r   r   r   r3   r      s    ,r   r3   rj   rk   s        r   (test_method_takes_extra_arg_with_default9Test_verifyClass.test_method_takes_extra_arg_with_default   @    ,.	 y 	 
 
X		, 	, 
	,
 	h(r   c                 ~    SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  X45        g )Nr   r!   rE   c                       \ rS rSrS rSrg)ITest_verifyClass.test_method_takes_only_positional_args.<locals>.ICurrent   c                     grM   r   r   s    r   rO   PTest_verifyClass.test_method_takes_only_positional_args.<locals>.ICurrent.method   rQ   r   r   NrR   r   r   r   r.   r      r   r   r.   c                       \ rS rSrS rSrg)HTest_verifyClass.test_method_takes_only_positional_args.<locals>.Currenti  c                     [        5       er   re   r   r   s     r   rO   OTest_verifyClass.test_method_takes_only_positional_args.<locals>.Current.method  rh   r   r   NrR   r   r   r   r3   r     ri   r   r3   rj   rk   s        r   &test_method_takes_only_positional_args7Test_verifyClass.test_method_takes_only_positional_args   r   r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   rE   r   c                       \ rS rSrS rSrg)@Test_verifyClass.test_method_takes_only_kwargs.<locals>.ICurrenti  c                     grM   r   r   s    r   rO   GTest_verifyClass.test_method_takes_only_kwargs.<locals>.ICurrent.method  rQ   r   r   NrR   r   r   r   r.   r     r   r   r.   c                       \ rS rSrS rSrg)?Test_verifyClass.test_method_takes_only_kwargs.<locals>.Currenti  c                     [        5       er   re   r   r   s     r   rO   FTest_verifyClass.test_method_takes_only_kwargs.<locals>.Current.method  rh   r   r   NrR   r   r   r   r3   r     ri   r   r3   r   r   s         r   test_method_takes_only_kwargs.Test_verifyClass.test_method_takes_only_kwargs	  r   r   c                 ~    SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  X45        g )Nr   r!   rE   c                       \ rS rSrS rSrg)CTest_verifyClass.test_method_takes_extra_starargs.<locals>.ICurrenti   c                     grM   r   r   s    r   rO   JTest_verifyClass.test_method_takes_extra_starargs.<locals>.ICurrent.method"  rQ   r   r   NrR   r   r   r   r.   r     r   r   r.   c                       \ rS rSrS rSrg)BTest_verifyClass.test_method_takes_extra_starargs.<locals>.Currenti%  c                     [        5       er   re   r   r   r   s      r   rO   ITest_verifyClass.test_method_takes_extra_starargs.<locals>.Current.method(  rh   r   r   NrR   r   r   r   r3   r	  %  ri   r   r3   rj   rk   s        r    test_method_takes_extra_starargs1Test_verifyClass.test_method_takes_extra_starargs  r   r   c                 ~    SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  X45        g )Nr   r!   rE   c                       \ rS rSrS rSrg)NTest_verifyClass.test_method_takes_extra_starargs_and_kwargs.<locals>.ICurrenti1  c                     grM   r   r   s    r   rO   UTest_verifyClass.test_method_takes_extra_starargs_and_kwargs.<locals>.ICurrent.method3  rQ   r   r   NrR   r   r   r   r.   r  1  r   r   r.   c                       \ rS rSrS rSrg)MTest_verifyClass.test_method_takes_extra_starargs_and_kwargs.<locals>.Currenti6  c                     [        5       er   re   )r   r   r   r   s       r   rO   TTest_verifyClass.test_method_takes_extra_starargs_and_kwargs.<locals>.Current.method9  rh   r   r   NrR   r   r   r   r3   r  6  ri   r   r3   rj   rk   s        r   +test_method_takes_extra_starargs_and_kwargs<Test_verifyClass.test_method_takes_extra_starargs_and_kwargs-  r   r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   rE   r   c                       \ rS rSrS rSrg)[Test_verifyClass.test_method_doesnt_take_required_positional_and_starargs.<locals>.ICurrentiC  c                     grM   r   r   r   s     r   rO   bTest_verifyClass.test_method_doesnt_take_required_positional_and_starargs.<locals>.ICurrent.methodE  rQ   r   r   NrR   r   r   r   r.   r  C  r   r   r.   c                       \ rS rSrS rSrg)ZTest_verifyClass.test_method_doesnt_take_required_positional_and_starargs.<locals>.CurrentiH  c                     [        5       er   re   r   r   s     r   rO   aTest_verifyClass.test_method_doesnt_take_required_positional_and_starargs.<locals>.Current.methodK  rh   r   r   NrR   r   r   r   r3   r!  H  ri   r   r3   r   r   s         r   8test_method_doesnt_take_required_positional_and_starargsITest_verifyClass.test_method_doesnt_take_required_positional_and_starargs>  r   r   c                 ~    SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  X45        g )Nr   r!   rE   c                       \ rS rSrS rSrg)UTest_verifyClass.test_method_takes_required_positional_and_starargs.<locals>.ICurrentiU  c                     grM   r   r  s     r   rO   \Test_verifyClass.test_method_takes_required_positional_and_starargs.<locals>.ICurrent.methodW  rQ   r   r   NrR   r   r   r   r.   r)  U  r   r   r.   c                       \ rS rSrS rSrg)TTest_verifyClass.test_method_takes_required_positional_and_starargs.<locals>.CurrentiZ  c                     [        5       er   re   r  s      r   rO   [Test_verifyClass.test_method_takes_required_positional_and_starargs.<locals>.Current.method]  rh   r   r   NrR   r   r   r   r3   r-  Z  ri   r   r3   rj   rk   s        r   2test_method_takes_required_positional_and_starargsCTest_verifyClass.test_method_takes_required_positional_and_starargsQ  r   r   c                 ~    SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  X45        g )Nr   r!   rE   c                       \ rS rSrS rSrg)BTest_verifyClass.test_method_takes_only_starargs.<locals>.ICurrentif  c                     grM   r   r  s     r   rO   ITest_verifyClass.test_method_takes_only_starargs.<locals>.ICurrent.methodh  rQ   r   r   NrR   r   r   r   r.   r4  f  r   r   r.   c                       \ rS rSrS rSrg)ATest_verifyClass.test_method_takes_only_starargs.<locals>.Currentik  c                     [        5       er   re   r   s     r   rO   HTest_verifyClass.test_method_takes_only_starargs.<locals>.Current.methodn  rh   r   r   NrR   r   r   r   r3   r8  k  ri   r   r3   rj   rk   s        r   test_method_takes_only_starargs0Test_verifyClass.test_method_takes_only_starargsb  r   r   c                 ~    SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  X45        g )Nr   r!   rE   c                       \ rS rSrS rSrg)DTest_verifyClass.test_method_takes_required_kwargs.<locals>.ICurrentiw  c                      grM   r   r   s    r   rO   KTest_verifyClass.test_method_takes_required_kwargs.<locals>.ICurrent.methody  rQ   r   r   NrR   r   r   r   r.   r?  w  r   r   r.   c                       \ rS rSrS rSrg)CTest_verifyClass.test_method_takes_required_kwargs.<locals>.Currenti|  c                     [        5       er   re   r   s     r   rO   JTest_verifyClass.test_method_takes_required_kwargs.<locals>.Current.method  rh   r   r   NrR   r   r   r   r3   rD  |  ri   r   r3   rj   rk   s        r   !test_method_takes_required_kwargs2Test_verifyClass.test_method_takes_required_kwargss  r   r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   rE   r   c                       \ rS rSrS rSrg)VTest_verifyClass.test_method_takes_positional_plus_required_starargs.<locals>.ICurrenti  c                      grM   r   r   s    r   rO   ]Test_verifyClass.test_method_takes_positional_plus_required_starargs.<locals>.ICurrent.method  rQ   r   r   NrR   r   r   r   r.   rK    r   r   r.   c                       \ rS rSrS rSrg)UTest_verifyClass.test_method_takes_positional_plus_required_starargs.<locals>.Currenti  c                     [        5       er   re   r  s      r   rO   \Test_verifyClass.test_method_takes_positional_plus_required_starargs.<locals>.Current.method  rh   r   r   NrR   r   r   r   r3   rO    ri   r   r3   r   r   s         r   3test_method_takes_positional_plus_required_starargsDTest_verifyClass.test_method_takes_positional_plus_required_starargs  r   r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   rE   r   c                       \ rS rSrS rSrg)JTest_verifyClass.test_method_doesnt_take_required_kwargs.<locals>.ICurrenti  c                      grM   r   rA  s    r   rO   QTest_verifyClass.test_method_doesnt_take_required_kwargs.<locals>.ICurrent.method  rQ   r   r   NrR   r   r   r   r.   rV    r   r   r.   c                       \ rS rSrS rSrg)ITest_verifyClass.test_method_doesnt_take_required_kwargs.<locals>.Currenti  c                     [        5       er   re   r#  s     r   rO   PTest_verifyClass.test_method_doesnt_take_required_kwargs.<locals>.Current.method  rh   r   r   NrR   r   r   r   r3   rZ    ri   r   r3   r   r   s         r   'test_method_doesnt_take_required_kwargs8Test_verifyClass.test_method_doesnt_take_required_kwargs  r   r   c                    ^ SSK Jm  SSK Jn  SSK Jn   " U4S jSU5      nU" U5       " S S5      5       nU R	                  X45        g )	Nr   	Attributer!   rE   c                   (   > \ rS rSr Y " S5      rSrg)GTest_verifyClass.test_class_has_method_for_iface_attr.<locals>.ICurrenti  The foo Attributer   Nr)   r*   r+   r,   attrr-   r`  s   r   r.   rc        01Dr   r.   c                       \ rS rSrS rSrg)FTest_verifyClass.test_class_has_method_for_iface_attr.<locals>.Currenti  c                     [        5       er   re   r
   s    r   rf  KTest_verifyClass.test_class_has_method_for_iface_attr.<locals>.Current.attr  rh   r   r   Nre  r   r   r   r3   ri    ri   r   r3   r4   ra  r"   rF   r   r   r"   rF   r.   r3   ra  s        @r   $test_class_has_method_for_iface_attr5Test_verifyClass.test_class_has_method_for_iface_attr  sD    ,,.	2y 	2 
X		, 	, 
	,
 	h(r   c                     SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU R                  UU R                  XE5        g )	Nr   r!   rE   r   c                       \ rS rSrS rSrg)FTest_verifyClass.test_class_has_nonmethod_for_method.<locals>.ICurrenti  c                      grM   r   r   r   r   rO   MTest_verifyClass.test_class_has_nonmethod_for_method.<locals>.ICurrent.method  rQ   r   r   NrR   r   r   r   r.   rr    rS   r   r.   c                       \ rS rSrSrSrg)ETest_verifyClass.test_class_has_nonmethod_for_method.<locals>.Currenti     r   NrR   r   r   r   r3   rv    s    Fr   r3   r   r   s         r   #test_class_has_nonmethod_for_method4Test_verifyClass.test_class_has_nonmethod_for_method  sQ    ,.H	 y 	  
X		 	 
	 	4--	<r   c                    ^ SSK Jm  SSK Jn  SSK Jn   " U4S jSU5      nU" U5       " S S5      5       nU R	                  X45        g )	Nr   r`  r!   rE   c                   (   > \ rS rSr Y " S5      rSrg)ITest_verifyClass.test_class_has_attribute_for_attribute.<locals>.ICurrenti  rd  r   Nre  r`  s   r   r.   r|    rg  r   r.   c                       \ rS rSrSrSrg)HTest_verifyClass.test_class_has_attribute_for_attribute.<locals>.Currenti  rw  r   Nre  r   r   r   r3   r~    s	     Dr   r3   rl  rm  s        @r   &test_class_has_attribute_for_attribute7Test_verifyClass.test_class_has_attribute_for_attribute  sD    ,,.	2y 	2 
X		 	 
	 	h(r   c                    ^ SSK Jm  SSK Jn  SSK Jn   " U4S jSU5      nU" U5       " S S5      5       nU R	                  X45        g )	Nr   r`  r!   rE   c                   (   > \ rS rSr Y " S5      rSrg)LTest_verifyClass.test_class_misses_attribute_for_attribute.<locals>.ICurrenti  rd  r   Nre  r`  s   r   r.   r    rg  r   r.   c                       \ rS rSrSrg)KTest_verifyClass.test_class_misses_attribute_for_attribute.<locals>.Currenti  r   Nr(   r   r   r   r3   r    rW   r   r3   rl  rm  s        @r   )test_class_misses_attribute_for_attribute:Test_verifyClass.test_class_misses_attribute_for_attribute  sD    ,,.	2y 	2 
X		 	 
	 	h(r   c                    ^^ SSK Jn  SSK Jn  SSKJn   " S SU5      m " S S5      m " U4S	 jS
U5      nU" U5       " U4S jS5      5       nU R                  XE5        g )Nr   r!   rE   )Methodc                       \ rS rSrS rSrg)ETest_verifyClass.test_w_callable_non_func_method.<locals>.QuasiMethodi  c                     [        5       er   re   r   r   r   s      r   __call__NTest_verifyClass.test_w_callable_non_func_method.<locals>.QuasiMethod.__call__  rh   r   r   Nr)   r*   r+   r,   r  r-   r   r   r   QuasiMethodr        ,r   r  c                       \ rS rSrS rSrg)GTest_verifyClass.test_w_callable_non_func_method.<locals>.QuasiCallablei  c                     [        5       er   re   r  s      r   r  PTest_verifyClass.test_w_callable_non_func_method.<locals>.QuasiCallable.__call__  rh   r   r   Nr  r   r   r   QuasiCallabler    r  r   r  c                   (   > \ rS rSr Y " S5      rSrg)BTest_verifyClass.test_w_callable_non_func_method.<locals>.ICurrenti  zThis is callabler   Nre  )r  s   r   r.   r    s    12Dr   r.   c                   &   > \ rS rSr Y " 5       rSrg)ATest_verifyClass.test_w_callable_non_func_method.<locals>.Currenti  r   Nre  )r  s   r   r3   r    s
     ?Dr   r3   )r4   r"   rF   zope.interface.interfacer  r   )r   r"   rF   r  r.   r3   r  r  s         @@r   test_w_callable_non_func_method0Test_verifyClass.test_w_callable_non_func_method  sZ    ,.3	,& 	,	, 	,	3y 	3 
X		# 	# 
	# 	h(r   c                    ^ SSK Jn  SSK Jn  S m " S SU5      nU" U5       " U4S jS5      5       nU R                  X45        g )	Nr   r!   rE   c                 "   ^  [        U 4S j5      $ )Nc                 &   > TR                  U 5      $ r   )__get__)r   funcs    r   <lambda>MTest_verifyClass.test_w_decorated_method.<locals>.decorator.<locals>.<lambda>  s    d);r   )property)r  s   `r   	decorator;Test_verifyClass.test_w_decorated_method.<locals>.decorator  s    ;<<r   c                       \ rS rSrS rSrg):Test_verifyClass.test_w_decorated_method.<locals>.ICurrenti  c                     grM   r   r   s    r   rO   ATest_verifyClass.test_w_decorated_method.<locals>.ICurrent.method  rQ   r   r   NrR   r   r   r   r.   r    r   r   r.   c                   (   > \ rS rSr Y S 5       rSrg)9Test_verifyClass.test_w_decorated_method.<locals>.Currenti  c                     [        5       er   re   r#  s     r   rO   @Test_verifyClass.test_w_decorated_method.<locals>.Current.method  s    )++r   r   NrR   )r  s   r   r3   r    s     , ,r   r3   rj   )r   r"   rF   r.   r3   r  s        @r   test_w_decorated_method(Test_verifyClass.test_w_decorated_method  sF    ,.	=	 y 	 
 
X		, 	, 
	, 	h(r   c                 :    SSK Jn  U R                  U[        SS9  g )Nr   )IFullMappingT	tentative)zope.interface.common.mappingr  r   dict)r   r  s     r   test_dict_IFullMapping'Test_verifyClass.test_dict_IFullMapping  s     	?lDD9r   c                 :    SSK Jn  U R                  U[        SS9  g )Nr   )	ISequenceTr  )zope.interface.common.sequencer  r   list)r   r  s     r   test_list_ISequence$Test_verifyClass.test_list_ISequence  s    <i6r   c                 :    SSK Jn  U R                  U[        SS9  g )Nr   )IReadSequenceTr  )r  r  r   tuple)r   r  s     r   test_tuple_IReadSequence)Test_verifyClass.test_tuple_IReadSequence#  s    @mUd;r   c                    SSK Jn  SSK Jn  SSKJn  SSKJn  SSKJn   " S SU5      n " S	 S
5      nU R                  U5       nU R                  Xg5        S S S 5        WR                  n	U R                  S[        U	R                  5      5        U R                  U	R                  S   U5        U R                  U	R                  S   U5        U R                  U	R                  S   U5        U" Xv5        S Ul        U R                  U5         U R                  Xg5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)Nr   r!   r:   rG   r#   )MultipleInvalidc                        \ rS rSrS rS rSrg)?Test_verifyClass.test_multiple_invalid.<locals>.ISeveralMethodsi/  c                     g)zMethod 1Nr   arg1s    r   meth1ETest_verifyClass.test_multiple_invalid.<locals>.ISeveralMethods.meth10  rQ   r   c                     g)zMethod 2Nr   r  s    r   meth2ETest_verifyClass.test_multiple_invalid.<locals>.ISeveralMethods.meth22  rQ   r   r   N)r)   r*   r+   r,   r  r  r-   r   r   r   ISeveralMethodsr  /  s    r   r  c                       \ rS rSrSrg)>Test_verifyClass.test_multiple_invalid.<locals>.SeveralMethodsi5  r   Nr(   r   r   r   SeveralMethodsr  5  r/   r   r     rw     c                     g)NHir   )r   r  s     r   r  8Test_verifyClass.test_multiple_invalid.<locals>.<lambda>D  s    $r   )r4   r"   r;   r5   rH   r$   r  r6   r   	exceptionassertEquallen
exceptionsassertIsInstancer  )
r   r"   r;   rH   r$   r  r  r  excexs
             r   test_multiple_invalid&Test_verifyClass.test_multiple_invalid(  s   ,2B>=	i 		 	 /3MM/: 0 ]]C./bmmA.0@AbmmA.0DEbmmA.0DE 	8634MM/: 54 0/ 54s   D)D:)
D7:
E)r	   )+r)   r*   r+   r,   r	   r   classmethodr   r   r   r7   rB   rY   rl   r|   r   r   r   r   r   r   r   r   r  r  r  r%  r0  r;  rG  rR  r]  rn  rx  r  r  r  r  r  r  r  r  r-   r   r   r   r   r      s    H(  '

N)< ) <&)&)$<&<&<&<&)")"<&)")"<&)")")"<&<&) < ))),),:7
<
;r   r   c                   B    \ rS rSr\S 5       rS rS rS rS r	S r
Srg	)
Test_verifyObjectiJ  c                     SSK Jn  U$ )Nr   verifyObject)r   r  )r   r  s     r   r   Test_verifyObject._get_FUTL  s    6r   c                 \    [        U[        [        [        5      45      (       a  U" 5       nU$ r   )
isinstancetypeOldSkool)r   targets     r   r   .Test_verifyObject._adjust_object_before_verifyQ  s$    ftT(^455XFr   c                    ^ SSK Jm  SSK Jn  SSK Jn  SSKJn   " U4S jSU5      nU" U5       " S S	5      5       nU R                  UU R                  XE5        g )
Nr   r`  r!   rE   rG   c                   (   > \ rS rSr Y " S5      rSrg)MTest_verifyObject.test_class_misses_attribute_for_attribute.<locals>.ICurrenti]  rd  r   Nre  r`  s   r   r.   r  ]  rg  r   r.   c                       \ rS rSrSrg)LTest_verifyObject.test_class_misses_attribute_for_attribute.<locals>.Currenti`  r   Nr(   r   r   r   r3   r  `  rW   r   r3   )r4   ra  r"   rF   r5   rH   r6   r   )r   r"   rF   rH   r.   r3   ra  s         @r   r  ;Test_verifyObject.test_class_misses_attribute_for_attributeV  sU    ,,.B	2y 	2 
X		 	 
	 	.--	<r   c                 >    SSK Jn  SSKJn  U R	                  X!5        g )Nr   dummy)IDummyModule)zope.interface.testsr  zope.interface.tests.idummyr  r   )r   r  r  s      r   test_module_hit!Test_verifyObject.test_module_hitg  s    .<l*r   c                 x    SSK Jn  SSKJn  SSKJn   " S SU5      nU R                  UU R                  XC5        g )Nr   r!   r#   r  c                       \ rS rSrSrg)8Test_verifyObject.test_module_miss.<locals>.IDummyModuleis  r   Nr(   r   r   r   r  r  s  r/   r   r  )r4   r"   r5   r$   r  r  r6   r   )r   r"   r$   r  r  s        r   test_module_miss"Test_verifyObject.test_module_missm  s3    ,>.	9 	 	*--	>r   c                 x    SSK Jn  SSK Jn  SSKJn   " S SU5      nU" U5       " S S5      5       nU" XE5        g )	Nr   r!   )providerr  c                       \ rS rSrS rSrg)>Test_verifyObject.test_staticmethod_hit_on_class.<locals>.IFooi~  c                     g)zThe bar methodNr   r   r   s     r   barBTest_verifyObject.test_staticmethod_hit_on_class.<locals>.IFoo.bar  rQ   r   r   N)r)   r*   r+   r,   r
  r-   r   r   r   IFoor  ~  s    !r   r  c                   $    \ rS rSr\S 5       rSrg)=Test_verifyObject.test_staticmethod_hit_on_class.<locals>.Fooi  c                     [        S5      e)NzWe're never actually called)AssertionErrorr	  s     r   r
  ATest_verifyObject.test_staticmethod_hit_on_class.<locals>.Foo.bar  s    $%BCCr   r   N)r)   r*   r+   r,   staticmethodr
  r-   r   r   r   Foor    s     D Dr   r  )r4   r"   r  r   r  )r   r"   r  r  r  r  s         r   test_staticmethod_hit_on_class0Test_verifyObject.test_staticmethod_hit_on_classy  sA    ,+6	!9 	!
 
$	D 	D 
	D 	Tr   r   N)r)   r*   r+   r,   r  r   r   r  r  r  r  r-   r   r   r   r  r  J  s-     
<"+
> r   r  c                       \ rS rSrSrg)r  i  r   Nr(   r   r   r   r  r    s    r   r  )__doc__unittestTestCaser   r  r  r   r   r   <module>r     s<    
r;x(( r;jB ( B J	 	r   