
    Og8                        d Z ddlZ G d dej                        Z G d dej                        Z G d dej                        Z G d	 d
ej                        Z G d dej                        Z G d dej                        Z G d dej                        Z	 G d dej                        Z
 G d dej                        Zd Zy)zTests for z.c.interface
    Nc                   @    e Zd ZddlmZmZ d Zd Zd Zd Z	d Z
d Zy	)
Test_provideInterfacer   setUptearDownc                     ddl m}  ||i |S )Nr   )provideInterface)zope.component.interfacer	   )selfargskwr	   s       ^/var/www/djangounited/venv/lib/python3.12/site-packages/zope/component/tests/test_interface.py_callFUTzTest_provideInterface._callFUT   s    =,,,    c                 X    | j                  t        | j                  dt                      y )Nxxx)assertRaises	TypeErrorr   objectr   s    r   test_w_interface_not_IInterfacez5Test_provideInterface.test_w_interface_not_IInterface   s    )T]]E68Dr   c                     ddl m} ddlm}  G d d|      } |d      }| j	                  t
        | j                  d||       y )Nr   	Interface)InterfaceClassc                       e Zd Zy)DTest_provideInterface.test_w_iface_type_not_IInterface.<locals>.IFooN__name__
__module____qualname__ r   r   IFoor   !       r   r#   IBarr   )zope.interfacer   zope.interface.interfacer   r   r   r   )r   r   r   r#   r%   s        r    test_w_iface_type_not_IInterfacez6Test_provideInterface.test_w_iface_type_not_IInterface   s8    ,;	9 	f%)T]]E4Fr   c           	      *   ddl m} ddlm}  |       } G d d|      } G d dt              }| j                  d||       | j                  |j                  |             | j                  t        t        |j                  |                  d       y )	Nr   
IInterfacegetGlobalSiteManagerc                       e Zd Zy)0Test_provideInterface.test_w_class.<locals>.IBarNr   r"   r   r   r%   r/   *   r$   r   r%   c                       e Zd Zy)/Test_provideInterface.test_w_class.<locals>.FooNr   r"   r   r   Foor1   ,   r$   r   r2    )zope.interface.interfacesr+   zope.component.globalregistryr-   r   r   assertFalse
providedByassertEquallenlistgetUtilitiesFor)r   r+   r-   gsmr%   r2   s         r   test_w_classz"Test_provideInterface.test_w_class&   st    8F"$	: 		& 	b#t$-.T#"5"5d";<=qAr   c                    ddl m} ddlm} ddlm}  |       } G d d|      } G d d|      }| j                  d	||       | j                  |j                  |             d
}| j                  |j                  ||      |u        y )Nr   r   r*   r,   c                       e Zd Zy)=Test_provideInterface.test_wo_name_w_iface_type.<locals>.IFooNr   r"   r   r   r#   r@   7   r$   r   r#   c                       e Zd Zy)=Test_provideInterface.test_wo_name_w_iface_type.<locals>.IBarNr   r"   r   r   r%   rB   9   r$   r   r%   r3   (zope.component.tests.test_interface.IFoo
r&   r   r4   r+   r5   r-   r   
assertTruer7   
getUtility)r   r   r+   r-   r<   r#   r%   nms           r   test_wo_name_w_iface_typez/Test_provideInterface.test_wo_name_w_iface_type2   sq    ,8F"$	9 		: 	b$%-.7tR0D89r   c                     ddl m} ddlm} ddlm}  |       } G d d|      }| j                  d|       | j                  |j                  |             |j                  |d      }| j                  ||u        y )	Nr   r   r*   r,   c                       e Zd Zy)=Test_provideInterface.test_w_name_wo_ifact_type.<locals>.IFooNr   r"   r   r   r#   rK   E   r$   r   r#   foo)namerD   )r   r   r+   r-   r<   r#   
registereds          r   test_w_name_wo_ifact_typez/Test_provideInterface.test_w_name_wo_ifact_type@   sg    ,8F"$	9 	eT"
--d34^^JU^;

d*+r   N)r   r    r!   zope.component.testingr   r   r   r   r(   r=   rH   rO   r"   r   r   r   r      s&    6-EG
B:
,r   r   c                   .    e Zd ZddlmZmZ d Zd Zd Zy)Test_getInterfacer   r   c                     ddl m}  ||i |S )Nr   )getInterface)r
   rT   )r   r   r   rT   s       r   r   zTest_getInterface._callFUTQ   s    9T(R((r   c                 \    ddl m} | j                  || j                  t	               d       y Nr   )ComponentLookupErrornonesuchzope.component.interfacesrW   r   r   r   r   rW   s     r   	test_misszTest_getInterface.test_missU   #    B.--:	?r   c                     ddl m} ddlm} ddlm}  |       } G d d|      }|j                  ||d       | j                  | j                  t               d      |u        y )Nr   r   r*   r,   c                       e Zd Zy)(Test_getInterface.test_hit.<locals>.IFooNr   r"   r   r   r#   r`   _   r$   r   r#   rL   )
r&   r   r4   r+   r5   r-   registerUtilityrE   r   r   r   r   r+   r-   r<   r#   s         r   test_hitzTest_getInterface.test_hitZ   sO    ,8F"$	9 	D*e4fh6$>?r   N	r   r    r!   rP   r   r   r   r\   rc   r"   r   r   rR   rR   M   s    6)?
@r   rR   c                   .    e Zd ZddlmZmZ d Zd Zd Zy)Test_queryInterfacer   r   c                     ddl m}  ||i |S )Nr   )queryInterface)r
   rh   )r   r   r   rh   s       r   r   zTest_queryInterface._callFUTi   s    ;t*r**r   c                 `    t               }| j                  | j                  d|      |u        y )NrX   )default)r   rE   r   )r   _DEFAULTs     r   r\   zTest_queryInterface.test_missm   s+    8MM*hM78C	Er   c                     ddl m} ddlm} ddlm}  |       } G d d|      }|j                  ||d       | j                  | j                  d      |u        y )Nr   r   r*   r,   c                       e Zd Zy)*Test_queryInterface.test_hit.<locals>.IFooNr   r"   r   r   r#   rn   w   r$   r   r#   rL   )	r&   r   r4   r+   r5   r-   ra   rE   r   rb   s         r   rc   zTest_queryInterface.test_hitr   sK    ,8F"$	9 	D*e4e,45r   Nrd   r"   r   r   rf   rf   e   s    6+E
6r   rf   c                   :    e Zd ZddlmZmZ d Zd Zd Zd Z	d Z
y)	Test_searchInterfacer   r   c                     ddl m}  ||i |S )Nr   )searchInterface)r
   rr   )r   r   r   rr   s       r   r   zTest_searchInterface._callFUT       <+++r   c                 V    | j                  | j                  t                     g        y Nr8   r   r   r   s    r   
test_emptyzTest_searchInterface.test_empty       vx0"5r   c                     ddl m} ddlm} ddlm}  |       } G d d|      }|j                  ||d       | j                  | j                  t                     |g       y )Nr   r   r*   r,   c                       e Zd Zy)@Test_searchInterface.test_no_search_string_no_base.<locals>.IFooNr   r"   r   r   r#   r{      r$   r   r#   rL   
r&   r   r4   r+   r5   r-   ra   r8   r   r   rb   s         r   test_no_search_string_no_basez2Test_searchInterface.test_no_search_string_no_base   sN    ,8F"$	9 	D*e4vx04&9r   c                    ddl m} ddlm} ddlm}  |       } G d d|      } G d d|      }|j                  ||d	       |j                  ||d
       | j                  | j                  t               d      |g       y )Nr   r   r*   r,   c                       e Zd Zy)?Test_searchInterface.test_w_search_string_no_base.<locals>.IFooNr   r"   r   r   r#   r      r$   r   r#   c                       e Zd Zy)?Test_searchInterface.test_w_search_string_no_base.<locals>.IBarNr   r"   r   r   r%   r      r$   r   r%   rL   barr|   r   r   r+   r-   r<   r#   r%   s          r   test_w_search_string_no_basez1Test_searchInterface.test_w_search_string_no_base   sn    ,8F"$	9 		9 	D*e4D*e4vx84&Ar   c                    ddl m} ddlm} ddlm}  |       } G d d|      } G d d|      } G d	 d
|      }|j                  ||d       |j                  ||d       | j                  | j                  t               |      |g       y )Nr   r   r*   r,   c                       e Zd Zy)@Test_searchInterface.test_no_search_string_w_base.<locals>.IBaseNr   r"   r   r   IBaser      r$   r   r   c                       e Zd Zy)?Test_searchInterface.test_no_search_string_w_base.<locals>.IFooNr   r"   r   r   r#   r      r$   r   r#   c                       e Zd Zy)?Test_searchInterface.test_no_search_string_w_base.<locals>.IBarNr   r"   r   r   r%   r      r$   r   r%   rL   r   baser|   r   r   r+   r-   r<   r   r#   r%   s           r   test_no_search_string_w_basez1Test_searchInterface.test_no_search_string_w_base   s|    ,8F"$	I 		5 		9 	D*e4D*e4vxe<tfEr   Nr   r    r!   rP   r   r   r   rw   r}   r   r   r"   r   r   rp   rp   }   s     6,6:BFr   rp   c                   :    e Zd ZddlmZmZ d Zd Zd Zd Z	d Z
y)	Test_searchInterfaceIdsr   r   c                     ddl m}  ||i |S )Nr   )searchInterfaceIds)r
   r   )r   r   r   r   s       r   r   z Test_searchInterfaceIds._callFUT   s    ?!4.2..r   c                 V    | j                  | j                  t                     g        y ru   rv   r   s    r   rw   z"Test_searchInterfaceIds.test_empty   rx   r   c                     ddl m} ddlm} ddlm}  |       } G d d|      }|j                  ||d       | j                  | j                  t                     dg       y )Nr   r   r*   r,   c                       e Zd Zy)CTest_searchInterfaceIds.test_no_search_string_no_base.<locals>.IFooNr   r"   r   r   r#   r      r$   r   r#   rL   r|   rb   s         r   r}   z5Test_searchInterfaceIds.test_no_search_string_no_base   sN    ,8F"$	9 	D*e4vx05':r   c                    ddl m} ddlm} ddlm}  |       } G d d|      } G d d|      }|j                  ||d	       |j                  ||d
       | j                  | j                  t               d      d	g       y )Nr   r   r*   r,   c                       e Zd Zy)BTest_searchInterfaceIds.test_w_search_string_no_base.<locals>.IFooNr   r"   r   r   r#   r      r$   r   r#   c                       e Zd Zy)BTest_searchInterfaceIds.test_w_search_string_no_base.<locals>.IBarNr   r"   r   r   r%   r      r$   r   r%   rL   r   r|   r   s          r   r   z4Test_searchInterfaceIds.test_w_search_string_no_base   sn    ,8F"$	9 		9 	D*e4D*e4vx85'Br   c                    ddl m} ddlm} ddlm}  |       } G d d|      } G d d|      } G d	 d
|      }|j                  ||d       |j                  ||d       | j                  | j                  t               |      dg       y )Nr   r   r*   r,   c                       e Zd Zy)CTest_searchInterfaceIds.test_no_search_string_w_base.<locals>.IBaseNr   r"   r   r   r   r      r$   r   r   c                       e Zd Zy)BTest_searchInterfaceIds.test_no_search_string_w_base.<locals>.IFooNr   r"   r   r   r#   r      r$   r   r#   c                       e Zd Zy)BTest_searchInterfaceIds.test_no_search_string_w_base.<locals>.IBarNr   r"   r   r   r%   r      r$   r   r%   rL   r   r   r|   r   s           r   r   z4Test_searchInterfaceIds.test_no_search_string_w_base   s|    ,8F"$	I 		5 		9 	D*e4D*e4vxe<ugFr   Nr   r"   r   r   r   r      s     6/6;CGr   r   c                   @    e Zd ZddlmZmZ d Zd Zd Zd Z	d Z
d Zy	)
Test_searchInterfaceUtilitiesr   r   c                     ddl m}  ||i |S )Nr   )searchInterfaceUtilities)r
   r   )r   r   r   r   s       r   r   z&Test_searchInterfaceUtilities._callFUT   s    E'444r   c                 V    | j                  | j                  t                     g        y ru   rv   r   s    r   rw   z(Test_searchInterfaceUtilities.test_empty   rx   r   c                     ddl m} ddlm} ddlm}  |       } G d d|      }|j                  ||d       | j                  | j                  t                     d|fg       y )Nr   r   r*   r,   c                       e Zd Zy)ITest_searchInterfaceUtilities.test_no_search_string_no_base.<locals>.IFooNr   r"   r   r   r#   r      r$   r   r#   rL   r|   rb   s         r   r}   z;Test_searchInterfaceUtilities.test_no_search_string_no_base   sR    ,8F"$	9 	D*e4vx0E4=/Br   c                    ddl m} ddlm} ddlm}  |       } G d d|      } G d d|      }|j                  ||d	       |j                  ||d
       | j                  | j                  t               d      d	|fg       y )Nr   r   r*   r,   c                       e Zd Zy)HTest_searchInterfaceUtilities.test_w_search_string_no_base.<locals>.IFooNr   r"   r   r   r#   r      r$   r   r#   c                       e Zd Zy)HTest_searchInterfaceUtilities.test_w_search_string_no_base.<locals>.IBarNr   r"   r   r   r%   r      r$   r   r%   rL   r   r|   r   s          r   r   z:Test_searchInterfaceUtilities.test_w_search_string_no_base   sr    ,8F"$	9 		9 	D*e4D*e4vx8E4=/Jr   c                     ddl m} ddlm} ddlm}  |       } G d d|      } G d d|      } G d	 d
|      }|j                  ||d       |j                  ||d       | j                  | j                  t               |      d|fg       y )Nr   r   r*   r,   c                       e Zd Zy)ITest_searchInterfaceUtilities.test_no_search_string_w_base.<locals>.IBaseNr   r"   r   r   r   r     r$   r   r   c                       e Zd Zy)HTest_searchInterfaceUtilities.test_no_search_string_w_base.<locals>.IFooNr   r"   r   r   r#   r   
  r$   r   r#   c                       e Zd Zy)HTest_searchInterfaceUtilities.test_no_search_string_w_base.<locals>.IBarNr   r"   r   r   r%   r     r$   r   r%   rL   r   r   r|   r   s           r   r   z:Test_searchInterfaceUtilities.test_no_search_string_w_base  s    ,8F"$	I 		5 		9 	D*e4D*e4vxe<t}oNr   c                 
   ddl m} ddlm} ddlm}  |       } G d d|      } G d d|      }|j                  ||d	       |j                  ||d
       | j                  | j                  t               |      d	|fg       y )Nr   r   r*   r,   c                       e Zd Zy)PTest_searchInterfaceUtilities.test_no_search_string_w_base_is_same.<locals>.IFooNr   r"   r   r   r#   r     r$   r   r#   c                       e Zd Zy)PTest_searchInterfaceUtilities.test_no_search_string_w_base_is_same.<locals>.IBarNr   r"   r   r   r%   r     r$   r   r%   rL   r   r   r|   r   s          r   $test_no_search_string_w_base_is_samezBTest_searchInterfaceUtilities.test_no_search_string_w_base_is_same  st    ,8F"$	9 		9 	D*e4D*e4vxd;udm_Mr   N)r   r    r!   rP   r   r   r   rw   r}   r   r   r   r"   r   r   r   r      s'    656CKONr   r   c                   $    e Zd Zd Zd Zd Zd Zy)Test_getInterfaceAllDocsc                     ddl m}  ||i |S )Nr   )getInterfaceAllDocs)r
   r   )r   r   r   r   s       r   r   z!Test_getInterfaceAllDocs._callFUT"  s    @"D/B//r   c                 d     G d dt               }| j                  | j                  |      d       y )Nc                       e Zd ZdZdZd Zy)2Test_getInterfaceAllDocs.test_w_class.<locals>.Foo	DOCSTRINGNc                      yBAZNr"   r   s    r   bazz6Test_getInterfaceAllDocs.test_w_class.<locals>.Foo.baz*      r   r   r    r!   __doc__r   r   r"   r   r   r2   r   '  s    Cr   r2   z1zope.component.tests.test_interface.foo
docstring)r   r8   r   )r   r2   s     r   r=   z%Test_getInterfaceAllDocs.test_w_class&  s.    	& 	
 	s+%	&r   c                 h    ddl m}  G d d|      }| j                  | j                  |      d       y )Nr   r   c                       e Zd ZdZy)BTest_getInterfaceAllDocs.test_w_interface_no_members.<locals>.IFoor   N)r   r    r!   r   r"   r   r   r#   r   2  s    r   r#   z2zope.component.tests.test_interface.ifoo
docstring)r&   r   r8   r   r   r   r#   s      r   test_w_interface_no_membersz4Test_getInterfaceAllDocs.test_w_interface_no_members0  s/    ,	9 	t,%	&r   c                 z    ddl m ddl m}  G fdd|      }| j                  | j	                  |      d       y )Nr   	Attributer   c                   ,    e Zd ZdZ W  dd      Zd Zy)ATest_getInterfaceAllDocs.test_w_interface_w_members.<locals>.IFoor   r   zDo barc                      yr   r"   r   s    r   r   zETest_getInterfaceAllDocs.test_w_interface_w_members.<locals>.IFoo.baz>  r   r   Nr   r   s   r   r#   r   ;  s    E8,Cr   r#   z=zope.component.tests.test_interface.ifoo
docstring
do bar
baz)r&   r   r   r8   r   )r   r   r#   r   s      @r   test_w_interface_w_membersz3Test_getInterfaceAllDocs.test_w_interface_w_members8  s5    ,,	9 	
 	t,	 r   N)r   r    r!   r   r=   r   r   r"   r   r   r   r      s    0&& r   r   c                   4    e Zd ZddlmZmZ d Zd Zd Zd Z	y)Test_nameToInterfacer   r   c                     ddl m}  ||i |S )Nr   )nameToInterface)r
   r   )r   r   r   r   s       r   r   zTest_nameToInterface._callFUTK  rs   r   c                 Z    | j                  | j                  t               d      d u        y NNone)rE   r   r   r   s    r   test_w_Nonez Test_nameToInterface.test_w_NoneO  s     fh74?@r   c                 \    ddl m} | j                  || j                  t	               d       y rV   rY   r[   s     r   r\   zTest_nameToInterface.test_missR  r]   r   c                     ddl m} ddlm} ddlm}  |       } G d d|      }|j                  ||d       | j                  t               d      }| j                  ||u        y )Nr   r   r*   r,   c                       e Zd Zy)+Test_nameToInterface.test_hit.<locals>.IFooNr   r"   r   r   r#   r   \  r$   r   r#   rL   )
r&   r   r4   r+   r5   r-   ra   r   r   rE   )r   r   r+   r-   r<   r#   founds          r   rc   zTest_nameToInterface.test_hitW  sS    ,8F"$	9 	D*e4fh.&r   N)
r   r    r!   rP   r   r   r   r   r\   rc   r"   r   r   r   r   G  s    6,A?
	'r   r   c                   4    e Zd ZddlmZmZ d Zd Zd Zd Z	y)Test_interfaceToNamer   r   c                     ddl m}  ||i |S )Nr   )interfaceToName)r
   r   )r   r   r   r   s       r   r   zTest_interfaceToName._callFUTg  rs   r   c                 X    | j                  | j                  t               d       d       y r   rv   r   s    r   r   z Test_interfaceToName.test_w_Nonek  s    vx6?r   c                 z    ddl m}  G d d|      }| j                  | j                  t	               |      d       y )Nr   r   c                       e Zd Zy)6Test_interfaceToName.test_w_unregistered.<locals>.IFooNr   r"   r   r   r#   r   p  r$   r   r#   rC   )r&   r   r8   r   r   r   s      r   test_w_unregisteredz(Test_interfaceToName.test_w_unregisteredn  s2    ,	9 	vx6C	Er   c                     ddl m} ddlm} ddlm}  |       } G d d|      }|j                  ||d       | j                  | j                  t               |      d       y )	Nr   r   r*   r,   c                       e Zd Zy)4Test_interfaceToName.test_w_registered.<locals>.IFooNr   r"   r   r   r#   r   z  r$   r   r#   rL   rC   r|   rb   s         r   test_w_registeredz&Test_interfaceToName.test_w_registeredu  sR    ,8F"$	9 	D*e4vx6C	Er   N)
r   r    r!   rP   r   r   r   r   r   r   r"   r   r   r   r   c  s    6,@E	Er   r   c                     t        j                  t        j                  t              t        j                  t              t        j                  t
              t        j                  t              t        j                  t              t        j                  t              t        j                  t              t        j                  t              t        j                  t              f	      S ru   )unittest	TestSuite	makeSuiter   rR   rf   rp   r   r   r   r   r   r"   r   r   
test_suiter     s    01,-.//0238934/0/0
 
 
r   )r   r   TestCaser   rR   rf   rp   r   r   r   r   r   r   r"   r   r   <module>r      s    7,H-- 7,t@)) @06(++ 60/F8,, /Fd/Gh// /Gd<NH$5$5 <N~$ x00 $ N'8,, '8E8,, E<r   