Ë
    š”eöJ  ã                   ód   — d Z ddlZ G d„ dej                  «      Z G d„ de«      Z G d„ d«      Zy)	z" zope.interface.verify unit tests
é    Nc                   óò   — e Zd ZdZd„ Zed„ «       Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d „ Z#d!„ Z$d"„ Z%d#„ Z&d$„ Z'd%„ Z(y)&ÚTest_verifyClassNc                 ó.   — | j                  «       | _        y ©N)Ú_get_FUTÚverifier©Úselfs    úB/usr/lib/python3/dist-packages/zope/interface/tests/test_verify.pyÚsetUpzTest_verifyClass.setUp   s   € ØŸ™›ˆ�ó    c                 ó   — ddl m} |S )Nr   )ÚverifyClass)Úzope.interface.verifyr   )Úclsr   s     r   r   zTest_verifyClass._get_FUT   s   € å5ØÐr   c                 ó   — |S r   © )r
   Úxs     r   ú<lambda>zTest_verifyClass.<lambda>    s   € °1€ r   c                 óH   —  | j                   || j                  |«      fi |¤ŽS r   )r   Ú_adjust_object_before_verify)r
   ÚifaceÚklassÚkwargss       r   Ú_callFUTzTest_verifyClass._callFUT"   s-   € Øˆt�}‰}˜UØ!×>Ñ>¸uÓEñ'à%ñ'ð 	'r   c                 ó‚   — ddl m} ddlm}  G d„ d|«      } G d„ d«      }| j	                  || j
                  ||«       y )Nr   ©Ú	Interface©ÚDoesNotImplementc                   ó   — e Zd Zy)ú>Test_verifyClass.test_class_doesnt_implement.<locals>.ICurrentN©Ú__name__Ú
__module__Ú__qualname__r   r   r   ÚICurrentr"   +   ó   „ Ør   r'   c                   ó   — e Zd Zy)ú=Test_verifyClass.test_class_doesnt_implement.<locals>.CurrentNr#   r   r   r   ÚCurrentr*   .   r(   r   r+   )Úzope.interfacer   Úzope.interface.exceptionsr    ÚassertRaisesr   )r
   r   r    r'   r+   s        r   Útest_class_doesnt_implementz,Test_verifyClass.test_class_doesnt_implement'   s9   € Ý,Ý>ô	�yô 	÷	ñ 	ð 	×ÑÐ*¨D¯M©M¸8ÀWÕMr   c                 ó|   — ddl m} ddl m}  G d„ d|«      } G d„ d«      } |||«       | j                  ||«       y )Nr   r   ©ÚclassImplementsc                   ó   — e Zd Zy)úXTest_verifyClass.test_class_doesnt_implement_but_classImplements_later.<locals>.ICurrentNr#   r   r   r   r'   r4   7   r(   r   r'   c                   ó   — e Zd Zy)úWTest_verifyClass.test_class_doesnt_implement_but_classImplements_later.<locals>.CurrentNr#   r   r   r   r+   r6   :   r(   r   r+   )r,   r   r2   r   )r
   r   r2   r'   r+   s        r   Ú5test_class_doesnt_implement_but_classImplements_laterzFTest_verifyClass.test_class_doesnt_implement_but_classImplements_later3   s8   € Ý,Ý2ô	�yô 	÷	ñ 	ñ 	˜ Ô*à�‰�h Õ(r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   ©Úimplementer©ÚBrokenImplementationc                   ó   — e Zd Zd„ Zy)úPTest_verifyClass.test_class_doesnt_have_required_method_simple.<locals>.ICurrentc                   ó   — y©Ú	docstringNr   r   r   r   ÚmethodzWTest_verifyClass.test_class_doesnt_have_required_method_simple.<locals>.ICurrent.methodG   ó   � r   N©r$   r%   r&   rB   r   r   r   r'   r>   F   ó   „ ó r   r'   c                   ó   — e Zd Zy)úOTest_verifyClass.test_class_doesnt_have_required_method_simple.<locals>.CurrentNr#   r   r   r   r+   rG   J   ó   „ àr   r+   ©r,   r   r:   r-   r<   r.   r   )r
   r   r:   r<   r'   r+   s         r   Ú-test_class_doesnt_have_required_method_simplez>Test_verifyClass.test_class_doesnt_have_required_method_simpleA   sS   € Ý,Ý.ÝBô	 �yô 	 ñ 
�XÓ	÷	ð 	ó 
ð	ð 	×ÑÐ.ØŸ-™-¨°7õ	<r   c                 ó€   — ddl m} ddl m}  G d„ d|«      } ||«       G d„ d«      «       }| j                  ||«       y )Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úHTest_verifyClass.test_class_has_required_method_simple.<locals>.ICurrentc                   ó   — yr@   r   r   r   r   rB   zOTest_verifyClass.test_class_has_required_method_simple.<locals>.ICurrent.methodV   rC   r   NrD   r   r   r   r'   rM   U   rE   r   r'   c                   ó   — e Zd Zd„ Zy)úGTest_verifyClass.test_class_has_required_method_simple.<locals>.Currentc                 ó   — t        «       ‚r   ©ÚNotImplementedErrorr	   s    r   rB   zNTest_verifyClass.test_class_has_required_method_simple.<locals>.Current.method\   ó   € Ü)Ó+Ð+r   NrD   r   r   r   r+   rP   Y   ó   „ ó,r   r+   ©r,   r   r:   r   ©r
   r   r:   r'   r+   s        r   Ú%test_class_has_required_method_simplez6Test_verifyClass.test_class_has_required_method_simpleQ   sB   € Ý,Ý.ô	 �yô 	 ñ 
�XÓ	÷	,ð 	,ó 
ð	,ð
 	�‰�h Õ(r   c                 óº   — ddl m} ddl m} ddlm}  G d„ d|«      } G d„ d|«      } ||«       G d	„ d
«      «       }| j                  || j                  ||«       y )Nr   r   r9   r;   c                   ó   — e Zd Zd„ Zy)úNTest_verifyClass.test_class_doesnt_have_required_method_derived.<locals>.IBasec                   ó   — yr@   r   r   r   r   rB   zUTest_verifyClass.test_class_doesnt_have_required_method_derived.<locals>.IBase.methodg   rC   r   NrD   r   r   r   ÚIBaser[   f   rE   r   r]   c                   ó   — e Zd Zy)úQTest_verifyClass.test_class_doesnt_have_required_method_derived.<locals>.IDerivedNr#   r   r   r   ÚIDerivedr_   j   r(   r   r`   c                   ó   — e Zd Zy)úPTest_verifyClass.test_class_doesnt_have_required_method_derived.<locals>.CurrentNr#   r   r   r   r+   rb   m   rH   r   r+   rI   )r
   r   r:   r<   r]   r`   r+   s          r   Ú.test_class_doesnt_have_required_method_derivedz?Test_verifyClass.test_class_doesnt_have_required_method_deriveda   s_   € Ý,Ý.ÝBô	 �Iô 	 ô	�uô 	ñ 
�XÓ	÷	ð 	ó 
ð	ð 	×ÑÐ.ØŸ-™-¨°7õ	<r   c                 ó–   — ddl m} ddl m}  G d„ d|«      } G d„ d|«      } ||«       G d„ d	«      «       }| j                  ||«       y )
Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úFTest_verifyClass.test_class_has_required_method_derived.<locals>.IBasec                   ó   — yr@   r   r   r   r   rB   zMTest_verifyClass.test_class_has_required_method_derived.<locals>.IBase.methody   rC   r   NrD   r   r   r   r]   rf   x   rE   r   r]   c                   ó   — e Zd Zy)úITest_verifyClass.test_class_has_required_method_derived.<locals>.IDerivedNr#   r   r   r   r`   ri   |   r(   r   r`   c                   ó   — e Zd Zd„ Zy)úHTest_verifyClass.test_class_has_required_method_derived.<locals>.Currentc                 ó   — t        «       ‚r   rR   r	   s    r   rB   zOTest_verifyClass.test_class_has_required_method_derived.<locals>.Current.method‚   rT   r   NrD   r   r   r   r+   rk      rU   r   r+   rV   )r
   r   r:   r]   r`   r+   s         r   Ú&test_class_has_required_method_derivedz7Test_verifyClass.test_class_has_required_method_derivedt   sN   € Ý,Ý.ô	 �Iô 	 ô	�uô 	ñ 
�XÓ	÷	,ð 	,ó 
ð	,ð
 	�‰�h Õ(r   c                 ó€   — ddl m} ddl m}  G d„ d|«      } ||«       G d„ d«      «       }| j                  ||«       y )Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úKTest_verifyClass.test_method_takes_wrong_arg_names_but_OK.<locals>.ICurrentc                  ó   — yr@   r   ©Úas    r   rB   zRTest_verifyClass.test_method_takes_wrong_arg_names_but_OK.<locals>.ICurrent.methodŽ   rC   r   NrD   r   r   r   r'   rp   Œ   ó   „ ó r   r'   c                   ó   — e Zd Zd„ Zy)úJTest_verifyClass.test_method_takes_wrong_arg_names_but_OK.<locals>.Currentc                 ó   — t        «       ‚r   rR   )r
   Úbs     r   rB   zQTest_verifyClass.test_method_takes_wrong_arg_names_but_OK.<locals>.Current.method”   rT   r   NrD   r   r   r   r+   rv   ‘   rU   r   r+   rV   rW   s        r   Ú(test_method_takes_wrong_arg_names_but_OKz9Test_verifyClass.test_method_takes_wrong_arg_names_but_OK‡   sB   € å,Ý.ô	 �yô 	 ñ
 
�XÓ	÷	,ð 	,ó 
ð	,ð
 	�‰�h Õ(r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   r9   ©ÚBrokenMethodImplementationc                   ó   — e Zd Zd„ Zy)úDTest_verifyClass.test_method_takes_not_enough_args.<locals>.ICurrentc                  ó   — yr@   r   rr   s    r   rB   zKTest_verifyClass.test_method_takes_not_enough_args.<locals>.ICurrent.method    rC   r   NrD   r   r   r   r'   r~   ž   rt   r   r'   c                   ó   — e Zd Zd„ Zy)úCTest_verifyClass.test_method_takes_not_enough_args.<locals>.Currentc                 ó   — t        «       ‚r   rR   r	   s    r   rB   zJTest_verifyClass.test_method_takes_not_enough_args.<locals>.Current.method¦   rT   r   NrD   r   r   r   r+   r�   £   rU   r   r+   ©r,   r   r:   r-   r|   r.   r   ©r
   r   r:   r|   r'   r+   s         r   Ú!test_method_takes_not_enough_argsz2Test_verifyClass.test_method_takes_not_enough_args™   óS   € Ý,Ý.ÝHô	 �yô 	 ñ
 
�XÓ	÷	,ð 	,ó 
ð	,ð
 	×ÑÐ4ØŸ-™-¨°7õ	<r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   r9   r{   c                   ó   — e Zd Zd„ Zy)úLTest_verifyClass.test_method_doesnt_take_required_starargs.<locals>.ICurrentc                   ó   — yr@   r   ©Úargss    r   rB   zSTest_verifyClass.test_method_doesnt_take_required_starargs.<locals>.ICurrent.method³   rC   r   NrD   r   r   r   r'   r‰   ±   rt   r   r'   c                   ó   — e Zd Zd„ Zy)úKTest_verifyClass.test_method_doesnt_take_required_starargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   r	   s    r   rB   zRTest_verifyClass.test_method_doesnt_take_required_starargs.<locals>.Current.method¹   rT   r   NrD   r   r   r   r+   rŽ   ¶   rU   r   r+   rƒ   r„   s         r   Ú)test_method_doesnt_take_required_starargsz:Test_verifyClass.test_method_doesnt_take_required_starargs¬   r†   r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   r9   r{   c                   ó   — e Zd Zd„ Zy)úOTest_verifyClass.test_method_doesnt_take_required_only_kwargs.<locals>.ICurrentc                   ó   — yr@   r   )Úkws    r   rB   zVTest_verifyClass.test_method_doesnt_take_required_only_kwargs.<locals>.ICurrent.methodÆ   rC   r   NrD   r   r   r   r'   r“   Ä   rt   r   r'   c                   ó   — e Zd Zd„ Zy)úNTest_verifyClass.test_method_doesnt_take_required_only_kwargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   r	   s    r   rB   zUTest_verifyClass.test_method_doesnt_take_required_only_kwargs.<locals>.Current.methodÌ   rT   r   NrD   r   r   r   r+   r—   É   rU   r   r+   rƒ   r„   s         r   Ú,test_method_doesnt_take_required_only_kwargsz=Test_verifyClass.test_method_doesnt_take_required_only_kwargs¿   r†   r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   r9   r{   c                   ó   — e Zd Zd„ Zy)ú>Test_verifyClass.test_method_takes_extra_arg.<locals>.ICurrentc                  ó   — yr@   r   rr   s    r   rB   zETest_verifyClass.test_method_takes_extra_arg.<locals>.ICurrent.methodÙ   rC   r   NrD   r   r   r   r'   rœ   ×   rt   r   r'   c                   ó   — e Zd Zd„ Zy)ú=Test_verifyClass.test_method_takes_extra_arg.<locals>.Currentc                 ó   — t        «       ‚r   rR   ©r
   rs   rx   s      r   rB   zDTest_verifyClass.test_method_takes_extra_arg.<locals>.Current.methodß   rT   r   NrD   r   r   r   r+   rŸ   Ü   rU   r   r+   rƒ   r„   s         r   Útest_method_takes_extra_argz,Test_verifyClass.test_method_takes_extra_argÒ   r†   r   c                 ó€   — ddl m} ddl m}  G d„ d|«      } ||«       G d„ d«      «       }| j                  ||«       y )Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úKTest_verifyClass.test_method_takes_extra_arg_with_default.<locals>.ICurrentc                  ó   — yr@   r   rr   s    r   rB   zRTest_verifyClass.test_method_takes_extra_arg_with_default.<locals>.ICurrent.methodë   rC   r   NrD   r   r   r   r'   r¥   é   rt   r   r'   c                   ó   — e Zd Zdd„Zy)úJTest_verifyClass.test_method_takes_extra_arg_with_default.<locals>.CurrentNc                 ó   — t        «       ‚r   rR   r¡   s      r   rB   zQTest_verifyClass.test_method_takes_extra_arg_with_default.<locals>.Current.methodñ   rT   r   r   rD   r   r   r   r+   r¨   î   s   „ ô,r   r+   rV   rW   s        r   Ú(test_method_takes_extra_arg_with_defaultz9Test_verifyClass.test_method_takes_extra_arg_with_defaultå   óB   € Ý,Ý.ô	 �yô 	 ñ
 
�XÓ	÷	,ð 	,ó 
ð	,ð
 	�‰�h Õ(r   c                 ó€   — ddl m} ddl m}  G d„ d|«      } ||«       G d„ d«      «       }| j                  ||«       y )Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úITest_verifyClass.test_method_takes_only_positional_args.<locals>.ICurrentc                  ó   — yr@   r   rr   s    r   rB   zPTest_verifyClass.test_method_takes_only_positional_args.<locals>.ICurrent.methodü   rC   r   NrD   r   r   r   r'   r®   ú   rt   r   r'   c                   ó   — e Zd Zd„ Zy)úHTest_verifyClass.test_method_takes_only_positional_args.<locals>.Currentc                 ó   — t        «       ‚r   rR   ©r
   rŒ   s     r   rB   zOTest_verifyClass.test_method_takes_only_positional_args.<locals>.Current.method  rT   r   NrD   r   r   r   r+   r±   ÿ   rU   r   r+   rV   rW   s        r   Ú&test_method_takes_only_positional_argsz7Test_verifyClass.test_method_takes_only_positional_argsö   r«   r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   r9   r{   c                   ó   — e Zd Zd„ Zy)ú@Test_verifyClass.test_method_takes_only_kwargs.<locals>.ICurrentc                  ó   — yr@   r   rr   s    r   rB   zGTest_verifyClass.test_method_takes_only_kwargs.<locals>.ICurrent.method  rC   r   NrD   r   r   r   r'   r·     rt   r   r'   c                   ó   — e Zd Zd„ Zy)ú?Test_verifyClass.test_method_takes_only_kwargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   ©r
   r•   s     r   rB   zFTest_verifyClass.test_method_takes_only_kwargs.<locals>.Current.method  rT   r   NrD   r   r   r   r+   rº     rU   r   r+   rƒ   r„   s         r   Útest_method_takes_only_kwargsz.Test_verifyClass.test_method_takes_only_kwargs  r†   r   c                 ó€   — ddl m} ddl m}  G d„ d|«      } ||«       G d„ d«      «       }| j                  ||«       y )Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úCTest_verifyClass.test_method_takes_extra_starargs.<locals>.ICurrentc                  ó   — yr@   r   rr   s    r   rB   zJTest_verifyClass.test_method_takes_extra_starargs.<locals>.ICurrent.method   rC   r   NrD   r   r   r   r'   rÀ     rt   r   r'   c                   ó   — e Zd Zd„ Zy)úBTest_verifyClass.test_method_takes_extra_starargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   ©r
   rs   rŒ   s      r   rB   zITest_verifyClass.test_method_takes_extra_starargs.<locals>.Current.method&  rT   r   NrD   r   r   r   r+   rÃ   #  rU   r   r+   rV   rW   s        r   Ú test_method_takes_extra_starargsz1Test_verifyClass.test_method_takes_extra_starargs  r«   r   c                 ó€   — ddl m} ddl m}  G d„ d|«      } ||«       G d„ d«      «       }| j                  ||«       y )Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úNTest_verifyClass.test_method_takes_extra_starargs_and_kwargs.<locals>.ICurrentc                  ó   — yr@   r   rr   s    r   rB   zUTest_verifyClass.test_method_takes_extra_starargs_and_kwargs.<locals>.ICurrent.method1  rC   r   NrD   r   r   r   r'   rÉ   /  rt   r   r'   c                   ó   — e Zd Zd„ Zy)úMTest_verifyClass.test_method_takes_extra_starargs_and_kwargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   )r
   rs   rŒ   r•   s       r   rB   zTTest_verifyClass.test_method_takes_extra_starargs_and_kwargs.<locals>.Current.method7  rT   r   NrD   r   r   r   r+   rÌ   4  rU   r   r+   rV   rW   s        r   Ú+test_method_takes_extra_starargs_and_kwargsz<Test_verifyClass.test_method_takes_extra_starargs_and_kwargs+  r«   r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   r9   r{   c                   ó   — e Zd Zd„ Zy)ú[Test_verifyClass.test_method_doesnt_take_required_positional_and_starargs.<locals>.ICurrentc                  ó   — yr@   r   ©rs   rŒ   s     r   rB   zbTest_verifyClass.test_method_doesnt_take_required_positional_and_starargs.<locals>.ICurrent.methodC  rC   r   NrD   r   r   r   r'   rÑ   A  rt   r   r'   c                   ó   — e Zd Zd„ Zy)úZTest_verifyClass.test_method_doesnt_take_required_positional_and_starargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   ©r
   rs   s     r   rB   zaTest_verifyClass.test_method_doesnt_take_required_positional_and_starargs.<locals>.Current.methodI  rT   r   NrD   r   r   r   r+   rÕ   F  rU   r   r+   rƒ   r„   s         r   Ú8test_method_doesnt_take_required_positional_and_starargszITest_verifyClass.test_method_doesnt_take_required_positional_and_starargs<  r†   r   c                 ó€   — ddl m} ddl m}  G d„ d|«      } ||«       G d„ d«      «       }| j                  ||«       y )Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úUTest_verifyClass.test_method_takes_required_positional_and_starargs.<locals>.ICurrentc                  ó   — yr@   r   rÓ   s     r   rB   z\Test_verifyClass.test_method_takes_required_positional_and_starargs.<locals>.ICurrent.methodU  rC   r   NrD   r   r   r   r'   rÛ   S  rt   r   r'   c                   ó   — e Zd Zd„ Zy)úTTest_verifyClass.test_method_takes_required_positional_and_starargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   rÅ   s      r   rB   z[Test_verifyClass.test_method_takes_required_positional_and_starargs.<locals>.Current.method[  rT   r   NrD   r   r   r   r+   rÞ   X  rU   r   r+   rV   rW   s        r   Ú2test_method_takes_required_positional_and_starargszCTest_verifyClass.test_method_takes_required_positional_and_starargsO  r«   r   c                 ó€   — ddl m} ddl m}  G d„ d|«      } ||«       G d„ d«      «       }| j                  ||«       y )Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úBTest_verifyClass.test_method_takes_only_starargs.<locals>.ICurrentc                  ó   — yr@   r   rÓ   s     r   rB   zITest_verifyClass.test_method_takes_only_starargs.<locals>.ICurrent.methodf  rC   r   NrD   r   r   r   r'   rã   d  rt   r   r'   c                   ó   — e Zd Zd„ Zy)úATest_verifyClass.test_method_takes_only_starargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   r³   s     r   rB   zHTest_verifyClass.test_method_takes_only_starargs.<locals>.Current.methodl  rT   r   NrD   r   r   r   r+   ræ   i  rU   r   r+   rV   rW   s        r   Útest_method_takes_only_starargsz0Test_verifyClass.test_method_takes_only_starargs`  r«   r   c                 ó€   — ddl m} ddl m}  G d„ d|«      } ||«       G d„ d«      «       }| j                  ||«       y )Nr   r   r9   c                   ó   — e Zd Zd„ Zy)úDTest_verifyClass.test_method_takes_required_kwargs.<locals>.ICurrentc                   ó   — yr@   r   ©r   s    r   rB   zKTest_verifyClass.test_method_takes_required_kwargs.<locals>.ICurrent.methodw  rC   r   NrD   r   r   r   r'   rë   u  rt   r   r'   c                   ó   — e Zd Zd„ Zy)úCTest_verifyClass.test_method_takes_required_kwargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   r¼   s     r   rB   zJTest_verifyClass.test_method_takes_required_kwargs.<locals>.Current.method}  rT   r   NrD   r   r   r   r+   rï   z  rU   r   r+   rV   rW   s        r   Ú!test_method_takes_required_kwargsz2Test_verifyClass.test_method_takes_required_kwargsq  r«   r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   r9   r{   c                   ó   — e Zd Zd„ Zy)úVTest_verifyClass.test_method_takes_positional_plus_required_starargs.<locals>.ICurrentc                   ó   — yr@   r   r‹   s    r   rB   z]Test_verifyClass.test_method_takes_positional_plus_required_starargs.<locals>.ICurrent.method‰  rC   r   NrD   r   r   r   r'   rô   ‡  rt   r   r'   c                   ó   — e Zd Zd„ Zy)úUTest_verifyClass.test_method_takes_positional_plus_required_starargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   rÅ   s      r   rB   z\Test_verifyClass.test_method_takes_positional_plus_required_starargs.<locals>.Current.method�  rT   r   NrD   r   r   r   r+   r÷   Œ  rU   r   r+   rƒ   r„   s         r   Ú3test_method_takes_positional_plus_required_starargszDTest_verifyClass.test_method_takes_positional_plus_required_starargs‚  r†   r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   r9   r{   c                   ó   — e Zd Zd„ Zy)úJTest_verifyClass.test_method_doesnt_take_required_kwargs.<locals>.ICurrentc                   ó   — yr@   r   rí   s    r   rB   zQTest_verifyClass.test_method_doesnt_take_required_kwargs.<locals>.ICurrent.method�  rC   r   NrD   r   r   r   r'   rü   ›  rt   r   r'   c                   ó   — e Zd Zd„ Zy)úITest_verifyClass.test_method_doesnt_take_required_kwargs.<locals>.Currentc                 ó   — t        «       ‚r   rR   r×   s     r   rB   zPTest_verifyClass.test_method_doesnt_take_required_kwargs.<locals>.Current.method£  rT   r   NrD   r   r   r   r+   rÿ      rU   r   r+   rƒ   r„   s         r   Ú'test_method_doesnt_take_required_kwargsz8Test_verifyClass.test_method_doesnt_take_required_kwargs–  r†   r   c                 ó’   ‡— ddl mŠ ddl m} ddl m}  G ˆfd„d|«      } ||«       G d„ d«      «       }| j	                  ||«       y )	Nr   ©Ú	Attributer   r9   c                   ó    •— e Zd Z W ° d«      Zy)úGTest_verifyClass.test_class_has_method_for_iface_attr.<locals>.ICurrentúThe foo AttributeN©r$   r%   r&   Úattrr  s   €r   r'   r  ¯  ó   ø„ ÚÐ0Ó1‰Dr   r'   c                   ó   — e Zd Zd„ Zy)úFTest_verifyClass.test_class_has_method_for_iface_attr.<locals>.Currentc                 ó   — t        «       ‚r   rR   r	   s    r   r	  zKTest_verifyClass.test_class_has_method_for_iface_attr.<locals>.Current.attrµ  rT   r   Nr  r   r   r   r+   r  ²  rU   r   r+   ©r,   r  r   r:   r   ©r
   r   r:   r'   r+   r  s        @r   Ú$test_class_has_method_for_iface_attrz5Test_verifyClass.test_class_has_method_for_iface_attrª  sF   ø€ Ý,Ý,Ý.ö	2�yô 	2ñ 
�XÓ	÷	,ð 	,ó 
ð	,ð
 	�‰�h Õ(r   c                 ó¤   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       }| j                  || j                  ||«       y )	Nr   r   r9   r{   c                   ó   — e Zd Zd„ Zy)úFTest_verifyClass.test_class_has_nonmethod_for_method.<locals>.ICurrentc                   ó   — yr@   r   r   r   r   rB   zMTest_verifyClass.test_class_has_nonmethod_for_method.<locals>.ICurrent.methodÀ  rC   r   NrD   r   r   r   r'   r  ¿  rE   r   r'   c                   ó   — e Zd ZdZy)úETest_verifyClass.test_class_has_nonmethod_for_method.<locals>.Currenté   NrD   r   r   r   r+   r  Ã  s   „ à‰Fr   r+   rƒ   r„   s         r   Ú#test_class_has_nonmethod_for_methodz4Test_verifyClass.test_class_has_nonmethod_for_methodº  sS   € Ý,Ý.ÝHô	 �yô 	 ñ 
�XÓ	÷	ð 	ó 
ð	ð 	×ÑÐ4ØŸ-™-¨°7õ	<r   c                 ó’   ‡— ddl mŠ ddl m} ddl m}  G ˆfd„d|«      } ||«       G d„ d«      «       }| j	                  ||«       y )	Nr   r  r   r9   c                   ó    •— e Zd Z W ° d«      Zy)úITest_verifyClass.test_class_has_attribute_for_attribute.<locals>.ICurrentr  Nr  r  s   €r   r'   r  Ï  r
  r   r'   c                   ó   — e Zd ZdZy)úHTest_verifyClass.test_class_has_attribute_for_attribute.<locals>.Currentr  Nr  r   r   r   r+   r  Ò  s	   „ ð ‰Dr   r+   r  r  s        @r   Ú&test_class_has_attribute_for_attributez7Test_verifyClass.test_class_has_attribute_for_attributeÊ  sF   ø€ Ý,Ý,Ý.ö	2�yô 	2ñ 
�XÓ	÷	ð 	ó 
ð	ð 	�‰�h Õ(r   c                 ó’   ‡— ddl mŠ ddl m} ddl m}  G ˆfd„d|«      } ||«       G d„ d«      «       }| j	                  ||«       y )	Nr   r  r   r9   c                   ó    •— e Zd Z W ° d«      Zy)úLTest_verifyClass.test_class_misses_attribute_for_attribute.<locals>.ICurrentr  Nr  r  s   €r   r'   r!  ß  r
  r   r'   c                   ó   — e Zd Zy)úKTest_verifyClass.test_class_misses_attribute_for_attribute.<locals>.CurrentNr#   r   r   r   r+   r#  â  rH   r   r+   r  r  s        @r   Ú)test_class_misses_attribute_for_attributez:Test_verifyClass.test_class_misses_attribute_for_attributeÙ  sF   ø€ å,Ý,Ý.ö	2�yô 	2ñ 
�XÓ	÷	ð 	ó 
ð	ð 	�‰�h Õ(r   c                 óÂ   ‡‡— ddl m} ddlm} ddlm}  G d„ d|«      Š G d„ d«      Š G ˆfd	„d
|«      } ||«       G ˆfd„d«      «       }| j                  ||«       y )Nr   )ÚMethodr   r9   c                   ó   — e Zd Zd„ Zy)úETest_verifyClass.test_w_callable_non_func_method.<locals>.QuasiMethodc                 ó   — t        «       ‚r   rR   ©r
   rŒ   r•   s      r   Ú__call__zNTest_verifyClass.test_w_callable_non_func_method.<locals>.QuasiMethod.__call__î  rT   r   N©r$   r%   r&   r+  r   r   r   ÚQuasiMethodr(  í  ó   „ ó,r   r-  c                   ó   — e Zd Zd„ Zy)úGTest_verifyClass.test_w_callable_non_func_method.<locals>.QuasiCallablec                 ó   — t        «       ‚r   rR   r*  s      r   r+  zPTest_verifyClass.test_w_callable_non_func_method.<locals>.QuasiCallable.__call__ò  rT   r   Nr,  r   r   r   ÚQuasiCallabler0  ñ  r.  r   r2  c                   ó    •— e Zd Z W ° d«      Zy)úBTest_verifyClass.test_w_callable_non_func_method.<locals>.ICurrentzThis is callableNr  )r-  s   €r   r'   r4  õ  s   ø„ ÚÐ1Ó2‰Dr   r'   c                   ó   •— e Zd Z W ° «       Zy)úATest_verifyClass.test_w_callable_non_func_method.<locals>.CurrentNr  )r2  s   €r   r+   r6  ø  s
   ø„ â “?‰Dr   r+   )Úzope.interface.interfacer&  r,   r   r:   r   )r
   r&  r   r:   r'   r+   r2  r-  s         @@r   Útest_w_callable_non_func_methodz0Test_verifyClass.test_w_callable_non_func_methodè  s\   ù€ Ý3Ý,Ý.ô	,˜&ô 	,÷	,ñ 	,ö	3�yô 	3ñ 
�XÓ	÷	#ò 	#ó 
ð	#ð 	�‰�h Õ(r   c                 óŒ   ‡— ddl m} ddl m} d„ Š G d„ d|«      } ||«       G ˆfd„d«      «       }| j                  ||«       y )	Nr   r   r9   c                 ó    ‡ — t        ˆ fd„«      S )Nc                 ó&   •— ‰j                  | «      S r   )Ú__get__)r
   Úfuncs    €r   r   zMTest_verifyClass.test_w_decorated_method.<locals>.decorator.<locals>.<lambda>  s   ø€ ¨¯©°dÓ);€ r   )Úproperty)r=  s   `r   Ú	decoratorz;Test_verifyClass.test_w_decorated_method.<locals>.decorator  s   ø€ äÓ;Ó<Ð<r   c                   ó   — e Zd Zd„ Zy)ú:Test_verifyClass.test_w_decorated_method.<locals>.ICurrentc                  ó   — yr@   r   rr   s    r   rB   zATest_verifyClass.test_w_decorated_method.<locals>.ICurrent.method	  rC   r   NrD   r   r   r   r'   rA    rt   r   r'   c                   ó    •— e Zd ZW ° d„ «       Zy)ú9Test_verifyClass.test_w_decorated_method.<locals>.Currentc                 ó   — t        «       ‚r   rR   r×   s     r   rB   z@Test_verifyClass.test_w_decorated_method.<locals>.Current.method  s   € ä)Ó+Ð+r   NrD   )r?  s   €r   r+   rD    s   ø„ ñ ñ,ó ñ,r   r+   rV   )r
   r   r:   r'   r+   r?  s        @r   Útest_w_decorated_methodz(Test_verifyClass.test_w_decorated_methodÿ  sH   ø€ Ý,Ý.ò	=ô	 �yô 	 ñ
 
�XÓ	÷	,ò 	,ó 
ð	,ð 	�‰�h Õ(r   c                 ó@   — ddl m} | j                  |t        d¬«       y )Nr   )ÚIFullMappingT©Ú	tentative)Úzope.interface.common.mappingrH  r   Údict)r
   rH  s     r   Útest_dict_IFullMappingz'Test_verifyClass.test_dict_IFullMapping  s   € õ 	?Ø�‰�l¤D°DˆÕ9r   c                 ó@   — ddl m} | j                  |t        d¬«       y )Nr   )Ú	ISequenceTrI  )Úzope.interface.common.sequencerO  r   Úlist)r
   rO  s     r   Útest_list_ISequencez$Test_verifyClass.test_list_ISequence  s   € å<Ø�‰�i¤°ˆÕ6r   c                 ó@   — ddl m} | j                  |t        d¬«       y )Nr   )ÚIReadSequenceTrI  )rP  rT  r   Útuple)r
   rT  s     r   Útest_tuple_IReadSequencez)Test_verifyClass.test_tuple_IReadSequence$  s   € å@Ø�‰�m¤U°dˆÕ;r   c                 óˆ  — ddl m} ddl m} ddl m} ddlm} ddlm}  G d„ d|«      } G d	„ d
«      }| j                  |«      5 }| j                  ||«       d d d «       j                  }	| j                  dt        |	j                  «      «       | j                  |	j                  d   |«       | j                  |	j                  d   |«       | j                  |	j                  d   |«        |||«       d„ |_        | j                  |«      5  | j                  ||«       d d d «       y # 1 sw Y   ŒÕxY w# 1 sw Y   y xY w)Nr   )ÚMultipleInvalidr   r;   r   r1   c                   ó   — e Zd Zd„ Zd„ Zy)ú?Test_verifyClass.test_multiple_invalid.<locals>.ISeveralMethodsc                  ó   — y)zMethod 1Nr   ©Úarg1s    r   Úmeth1zETest_verifyClass.test_multiple_invalid.<locals>.ISeveralMethods.meth12  rC   r   c                  ó   — y)zMethod 2Nr   r\  s    r   Úmeth2zETest_verifyClass.test_multiple_invalid.<locals>.ISeveralMethods.meth24  rC   r   N)r$   r%   r&   r^  r`  r   r   r   ÚISeveralMethodsrZ  1  s   „ òór   ra  c                   ó   — e Zd Zy)ú>Test_verifyClass.test_multiple_invalid.<locals>.SeveralMethodsNr#   r   r   r   ÚSeveralMethodsrc  7  r(   r   rd  é   r  é   c                  ó   — y)NÚHir   )r
   r]  s     r   r   z8Test_verifyClass.test_multiple_invalid.<locals>.<lambda>F  rC   r   )r-   rX  r    r<   r,   r   r2   r.   r   Ú	exceptionÚassertEqualÚlenÚ
exceptionsÚassertIsInstancer^  )
r
   rX  r    r<   r   r2   ra  rd  ÚexcÚexs
             r   Útest_multiple_invalidz&Test_verifyClass.test_multiple_invalid*  s  € Ý=Ý>ÝBÝ,Ý2ô	˜iô 	÷	ñ 	ð ×Ñ˜Ó/ð 	;°3Ø�M‰M˜/¨>Ô:÷	;ð �]‰]ˆØ×Ñ˜œC §¡Ó.Ô/Ø×Ñ˜bŸm™m¨AÑ.Ð0@ÔAØ×Ñ˜bŸm™m¨AÑ.Ð0DÔEØ×Ñ˜bŸm™m¨AÑ.Ð0DÔEñ 	˜¨Ô8Ù6ˆÔà×ÑÐ3Ó4ñ 	;Ø�M‰M˜/¨>Ô:÷	;ð 	;÷	;ð 	;ú÷	;ð 	;ús   ÁD,ÄD8Ä,D5Ä8E))r$   r%   r&   r   r   Úclassmethodr   r   r   r/   r7   rJ   rX   rc   rm   ry   r…   r�   r™   r¢   rª   r´   r½   rÆ   rÎ   rØ   rà   rè   rñ   rù   r  r  r  r  r$  r8  rF  rM  rR  rV  rp  r   r   r   r   r      sÎ   „ à€Hò(ð ñó ðñ $5Ð ò'ò

Nò)ò<ò )ò <ò&)ò&)ò$<ò&<ò&<ò&<ò&)ò")ò"<ò&)ò")ò"<ò&)ò")ò")ò"<ò(<ò()ò <ò )ò)ò)ò.)ò,:ò7ò
<ó;r   r   c                   ó:   — e Zd Zed„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)ÚTest_verifyObjectc                 ó   — ddl m} |S )Nr   ©ÚverifyObject)r   rv  )r   rv  s     r   r   zTest_verifyObject._get_FUTM  s   € å6ØÐr   c                 óR   — t        |t        t        t        «      f«      r |«       }|S r   )Ú
isinstanceÚtypeÚOldSkool)r
   Útargets     r   r   z.Test_verifyObject._adjust_object_before_verifyR  s!   € Ü�fœt¤T¬(£^Ð4Ô5Ù“XˆFØˆr   c                 ó¶   ‡— ddl mŠ ddl m} ddl m} ddlm}  G ˆfd„d|«      } ||«       G d„ d	«      «       }| j                  || j                  ||«       y )
Nr   r  r   r9   r;   c                   ó    •— e Zd Z W ° d«      Zy)úMTest_verifyObject.test_class_misses_attribute_for_attribute.<locals>.ICurrentr  Nr  r  s   €r   r'   r~  ^  r
  r   r'   c                   ó   — e Zd Zy)úLTest_verifyObject.test_class_misses_attribute_for_attribute.<locals>.CurrentNr#   r   r   r   r+   r€  a  rH   r   r+   )r,   r  r   r:   r-   r<   r.   r   )r
   r   r:   r<   r'   r+   r  s         @r   r$  z;Test_verifyObject.test_class_misses_attribute_for_attributeW  sW   ø€ å,Ý,Ý.ÝBö	2�yô 	2ñ 
�XÓ	÷	ð 	ó 
ð	ð 	×ÑÐ.ØŸ-™-¨°7õ	<r   c                 ó@   — ddl m} ddlm} | j	                  ||«       y )Nr   )ÚIDummyModule©Údummy)Úzope.interface.tests.idummyr‚  Úzope.interface.testsr„  r   )r
   r‚  r„  s      r   Útest_module_hitz!Test_verifyObject.test_module_hith  s   € Ý<Ý.à�‰�l EÕ*r   c                 óz   — ddl m} ddlm} ddlm}  G d„ d|«      }| j                  || j                  ||«       y )Nr   r   rƒ  r   c                   ó   — e Zd Zy)ú8Test_verifyObject.test_module_miss.<locals>.IDummyModuleNr#   r   r   r   r‚  rŠ  t  r(   r   r‚  )r,   r   r†  r„  r-   r    r.   r   )r
   r   r„  r    r‚  s        r   Útest_module_missz"Test_verifyObject.test_module_missn  s5   € Ý,Ý.Ý>ô	˜9ô 	ð 	×ÑÐ*ØŸ-™-¨°uõ	>r   c                 óz   — ddl m} ddl m} ddlm}  G d„ d|«      } ||«       G d„ d«      «       } |||«       y )	Nr   r   )Úproviderru  c                   ó   — e Zd Zd„ Zy)ú>Test_verifyObject.test_staticmethod_hit_on_class.<locals>.IFooc                  ó   — y)zThe bar methodNr   ©rs   rx   s     r   ÚbarzBTest_verifyObject.test_staticmethod_hit_on_class.<locals>.IFoo.bar�  rC   r   N)r$   r%   r&   r’  r   r   r   ÚIFoor�    s   „ ó!r   r“  c                   ó   — e Zd Zed„ «       Zy)ú=Test_verifyObject.test_staticmethod_hit_on_class.<locals>.Fooc                 ó   — t        d«      ‚)NzWe're never actually called)ÚAssertionErrorr‘  s     r   r’  zATest_verifyObject.test_staticmethod_hit_on_class.<locals>.Foo.bar‡  s   € ä$Ð%BÓCÐCr   N)r$   r%   r&   Ústaticmethodr’  r   r   r   ÚFoor•  „  s   „ ð ñDó ñDr   r™  )r,   r   r�  r   rv  )r
   r   r�  rv  r“  r™  s         r   Útest_staticmethod_hit_on_classz0Test_verifyObject.test_staticmethod_hit_on_classz  sC   € Ý,Ý+Ý6ô	!�9ô 	!ñ
 
�$‹÷	Dð 	Dó 
ð	Dñ 	�T˜3Õr   N)
r$   r%   r&   rq  r   r   r$  r‡  r‹  rš  r   r   r   rs  rs  K  s-   „ àñó ðòò
<ò"+ò
>ó r   rs  c                   ó   — e Zd Zy)rz  Nr#   r   r   r   rz  rz  �  s   „ Ør   rz  )Ú__doc__ÚunittestÚTestCaser   rs  rz  r   r   r   ú<module>rŸ     s<   ðñã ôu;�x×(Ñ(ô u;ônB Ð(ô B ÷H	ò 	r   