????

Your IP : 18.116.100.166


Current Path : /lib/python3.6/site-packages/zope/component/tests/__pycache__/
Upload File :
Current File : //lib/python3.6/site-packages/zope/component/tests/__pycache__/test_zcml.cpython-36.opt-1.pyc

3

,�W}��@s�dZddlZdd�ZGdd�dej�ZGdd�dej�ZGd	d
�d
ej�ZGdd�dej�ZGd
d�dej�ZGdd�dej�Z	Gdd�dej�Z
Gdd�dej�ZGdd�dej�Zdd�Z
dd�ZdS)zTests for ZCML directives.
�NcCs*yddl}Wntk
r$dd�SX|S)NrcSsdS)N�)�selfrr�/usr/lib/python3.6/test_zcml.py�<lambda>sz"skipIfNoSecurity.<locals>.<lambda>)Z
zope.security�ImportError)ZtestfuncZzoperrr�skipIfNoSecuritys

rc@seZdZdd�Zdd�ZdS)�Test_handlercOsddlm}|||�S)Nr)�handler)�zope.component.zcmlr	)r�args�kwr	rrr�_callFUTszTest_handler._callFUTcs�ddlm}ddlm}ddlm}m}ddlm}|��d	�fdd�	}|j	|�z(|j
d|||�|j�j|�|k�Wd|j
�XdS)
Nr)�
Components)�getSiteManager)�comp�IApp)�_BLANKcs�S)Nr)�context)�registryrr�dummy'sz=Test_handler.test_uses_configured_site_manager.<locals>.dummy�registerUtility)N)Zzope.interface.registryr�zope.componentr�#zope.component.testfiles.componentsrrZzope.component._compatrZsethookr
�
assertTrueZ
getUtility�reset)rrrrrrrr)rr�!test_uses_configured_site_manager s
z.Test_handler.test_uses_configured_site_managerN)�__name__�
__module__�__qualname__r
rrrrrrsrc@s$eZdZdd�Zdd�Zdd�ZdS)�Test__rolledUpFactorycOsddlm}|||�S)Nr)�_rolledUpFactory)r
r )rrrr rrrr
4szTest__rolledUpFactory._callFUTcsJt�}t���fdd�}|j|g�}|j|j|k�|j||��k�dS)Ncs�S)Nr)�obj)�_CREATEDrr�_factory;sz5Test__rolledUpFactory.test_with_one.<locals>._factory)�objectr
r�factory)r�_OBJr#�rolledr)r"r�
test_with_one8sz#Test__rolledUpFactory.test_with_onecsrt�}t��t��t���fdd�}�fdd�}�fdd�}|j|||g�}|j|j|k�|j||��k�dS)Ncs�S)Nr)r!)�	_CREATED1rr�	_factory1Fsz;Test__rolledUpFactory.test_with_multiple.<locals>._factory1cs�S)Nr)r!)�	_CREATED2rr�	_factory2Hsz;Test__rolledUpFactory.test_with_multiple.<locals>._factory2cs�S)Nr)r!)�	_CREATED3rr�	_factory3Jsz;Test__rolledUpFactory.test_with_multiple.<locals>._factory3)r$r
rr%)rr&r*r,r.r'r)r)r+r-r�test_with_multipleAsz(Test__rolledUpFactory.test_with_multipleN)rrrr
r(r/rrrrr2s	rc@speZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	e
dd��Ze
dd��Ze
dd��Z
dd�ZdS)�Test_adaptercOsddlm}|||�S)Nr)�adapter)r
r1)rrrr1rrrr
SszTest_adapter._callFUTcCsJddlm}ddlm}Gdd�d|�}t�}|j||j|g|g|�dS)Nr)�	Interface)�ComponentConfigurationErrorc@seZdZdS)z-Test_adapter.test_empty_factory.<locals>.IFooN)rrrrrrr�IFooZsr4)�zope.interfacer2r
r3�_makeConfigContext�assertRaisesr
)rr2r3r4�_cfg_ctxrrr�test_empty_factoryWszTest_adapter.test_empty_factorycCs�ddlm}ddlm}Gdd�d|�}Gdd�d|�}Gdd	�d	t�}Gd
d�dt�}t�}|j||j|||g||g|�dS)Nr)r2)r3c@seZdZdS)z>Test_adapter.test_multiple_factory_multiple_for_.<locals>.IFooN)rrrrrrrr4csr4c@seZdZdS)z>Test_adapter.test_multiple_factory_multiple_for_.<locals>.IBarN)rrrrrrr�IBaresr:c@seZdZdS)z=Test_adapter.test_multiple_factory_multiple_for_.<locals>.FooN)rrrrrrr�Foogsr;c@seZdZdS)z=Test_adapter.test_multiple_factory_multiple_for_.<locals>.BarN)rrrrrrr�Barisr<)r5r2r
r3r$r6r7r
)rr2r3r4r:r;r<r8rrr�#test_multiple_factory_multiple_for_`sz0Test_adapter.test_multiple_factory_multiple_for_cCs.Gdd�dt�}t�}|jt|j||g�dS)Nc@seZdZdd�ZdS)z>Test_adapter.test_no_for__factory_not_adapts.<locals>._FactorycSs
||_dS)N)r)rrrrr�__init__sszGTest_adapter.test_no_for__factory_not_adapts.<locals>._Factory.__init__N)rrrr>rrrr�_Factoryrsr?)r$r6r7�	TypeErrorr
)rr?r8rrr�test_no_for__factory_not_adaptspsz,Test_adapter.test_no_for__factory_not_adaptsc
Cs�ddlm}Gdd�d|�}Gdd�d|�}ddlm}m}ddlm}||�||�|d	�Gd
d�dt����}t�}|j||g�|j	dd}	|j
|	d
dd	�dS)Nr)r2c@seZdZdS)z'Test_adapter.test_no_name.<locals>.IFooN)rrrrrrrr4zsr4c@seZdZdS)z'Test_adapter.test_no_name.<locals>.IBarN)rrrrrrrr:|sr:)r1�named)�implementer�barc@seZdZdd�ZdS)z+Test_adapter.test_no_name.<locals>._FactorycSs
||_dS)N)r)rrrrrr>�sz4Test_adapter.test_no_name.<locals>._Factory.__init__N)rrrr>rrrrr?�sr?�r�)r5r2rr1rBrCr$r6r
�_actions�assertEqual)
rr2r4r:r1rBrCr?r8�actionrrr�test_no_namexszTest_adapter.test_no_namecCsNddlm}ddlm}||�Gdd�dt��}t�}|jt|j||g�dS)Nr)r2)r1c@seZdZdd�ZdS)z]Test_adapter.test_no_for__factory_adapts_no_provides_factory_not_implements.<locals>._FactorycSs
||_dS)N)r)rrrrrr>�szfTest_adapter.test_no_for__factory_adapts_no_provides_factory_not_implements.<locals>._Factory.__init__N)rrrr>rrrrr?�sr?)	r5r2�zope.component._declarationr1r$r6r7r@r
)rr2r1r?r8rrr�>test_no_for__factory_adapts_no_provides_factory_not_implements�szKTest_adapter.test_no_for__factory_adapts_no_provides_factory_not_implementsc	Csddlm}ddlm}ddlm}Gdd�d|�}Gdd�dt�}Gd	d
�d
t�}t�}|j|||g||gdd�|j	t
|j�d
�|j	|jddf�|jdd}|j	|d|�|j	|dd|f|df�|j	|ddd�|j	|ddj|�|j	|dd|f�|j	|dd
|�|j	|ddd�|j	|ddd�|j	|jddf�|jdd}|j	|d|�|j	|dd�|j	|dd|f�|j	|jddf�|jdd}|j	|d|�|j	|dd�|j	|dd|f�dS)Nr)r2)�provideInterface)r	c@seZdZdS)zCTest_adapter.test_multiple_factory_single_for__w_name.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)zBTest_adapter.test_multiple_factory_single_for__w_name.<locals>.FooN)rrrrrrrr;�sr;c@seZdZdS)zBTest_adapter.test_multiple_factory_single_for__w_name.<locals>.BarN)rrrrrrrr<�sr<�test)�name�rE�callable�
discriminatorr1r�registerAdapter�rF��TESTING�)
r5r2�zope.component.interfacerMr
r	r$r6r
rH�lenrGr%)	rr2rMr	r4r;r<r8rIrrr�(test_multiple_factory_single_for__w_name�s<
z5Test_adapter.test_multiple_factory_single_for__w_namec	CsZddlm}ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||g||gd	d
�|j	t
|j�d�|j	|jddf�|jdd}|j	|d
|�|j	|dd|f|df�|j	|ddd�|dd}|jt
||��|j|jj|k�|j	|dd|f�|j	|dd|�|j	|ddd�|j	|ddd�dS)Nr)r2)�LocatingUntrustedAdapterFactory)r	c@seZdZdS)zFTest_adapter.test_single_factory_single_for_w_permission.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)zETest_adapter.test_single_factory_single_for_w_permission.<locals>.FooN)rrrrrrrr;�sr;�testing)�
permissionrPrErQrRr1rWrrSrTrFrUrV)r5r2�zope.security.adapterr[r
r	r$r6r
rHrYrGr�
isinstancer%)	rr2r[r	r4r;r8rI�
factory_proxyrrr�+test_single_factory_single_for_w_permission�s,
z8Test_adapter.test_single_factory_single_for_w_permissionc	CsXddlm}ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||g||gd	d
�|j	t
|j�d�|j	|jddf�|jdd}|j	|d
|�|j	|dd|f|df�|j	|ddd�|dd}|jt
||��|j|j|k�|j	|dd|f�|j	|dd|�|j	|ddd�|j	|ddd�dS)Nr)r2)r[)r	c@seZdZdS)zPTest_adapter.test_single_factory_single_for_w_locate_no_permission.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)zOTest_adapter.test_single_factory_single_for_w_locate_no_permission.<locals>.FooN)rrrrrrrr;�sr;T)�locaterPrErQrRr1rWrrSrTrFrUrV)r5r2r^r[r
r	r$r6r
rHrYrGrr_r%)	rr2r[r	r4r;r8rIr`rrr�5test_single_factory_single_for_w_locate_no_permission�s,
zBTest_adapter.test_single_factory_single_for_w_locate_no_permissionc	CsXddlm}ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||g||gd	d
�|j	t
|j�d�|j	|jddf�|jdd}|j	|d
|�|j	|dd|f|df�|j	|ddd�|dd}|jt
||��|j|j|k�|j	|dd|f�|j	|dd|�|j	|ddd�|j	|ddd�dS)Nr)r2)�TrustedAdapterFactory)r	c@seZdZdS)zQTest_adapter.test_single_factory_single_for_w_trusted_no_permission.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)zPTest_adapter.test_single_factory_single_for_w_trusted_no_permission.<locals>.FooN)rrrrrrrr;�sr;T)�trustedrPrErQrRr1rWrrSrTrFrUrV)r5r2r^rdr
r	r$r6r
rHrYrGrr_r%)	rr2rdr	r4r;r8rIr`rrr�6test_single_factory_single_for_w_trusted_no_permission�s*
zCTest_adapter.test_single_factory_single_for_w_trusted_no_permissionc	Cs�ddlm}ddlm}ddlm}ddlm}Gdd�d|�}||�||�Gdd	�d	t���}t�}|j	||g�|j
t|j�d
�|j
|jddf�|jdd}|j
|d|�|j
|d
d|f|df�|j
|dd||f|ddf�dS)Nr)r2)rC)r1)r	c@seZdZdS)zUTest_adapter.test_no_for__no_provides_factory_adapts_factory_implements.<locals>.IFooN)rrrrrrrr4sr4c@seZdZdd�ZdS)zYTest_adapter.test_no_for__no_provides_factory_adapts_factory_implements.<locals>._FactorycSs
||_dS)N)r)rrrrrr>szbTest_adapter.test_no_for__no_provides_factory_adapts_factory_implements.<locals>._Factory.__init__N)rrrr>rrrrr?sr?rPrErQrRr1rWrrSrV)
r5r2rCrKr1r
r	r$r6r
rHrYrG)	rr2rCr1r	r4r?r8rIrrr�:test_no_for__no_provides_factory_adapts_factory_implementss&



zGTest_adapter.test_no_for__no_provides_factory_adapts_factory_implementsN)rrrr
r9r=rArJrLrZrrarcrfrgrrrrr0Qs	
&r0c@s8eZdZdd�ZeZdd�Zedd��Zedd��Zd	S)
�Test_zcml_functionalcCsddlm}|�dS)Nr)�	clearZCML)Zzope.component.tests.examplesri)rrirrr�setUp/szTest_zcml_functional.setUpcCs"ddlm}d|}|j|�dS)Nr)�	xmlconfigz�        <configure xmlns='http://namespaces.zope.org/zope'
                   i18n_domain="zope">
           <include package="zope.component" file="meta.zcml" />
           %s
        </configure>)Zzope.configurationrk�string)rZsnippetrk�templaterrr�_runSnippet4sz Test_zcml_functional._runSnippetc
Cs�ddlm}ddlm}ddlm}ddlm}m}ddl	m
}|jd�|�}||�}||�}	|j||	��|jt
||	��|k�dS)Nr)�isProxy)�removeSecurityProxy)�Content)�I1�A1)�ProxyFactorya
            <adapter
            for="zope.component.testfiles.components.IContent"
            provides="zope.component.testfiles.adapter.I1"
            factory="zope.component.testfiles.adapter.A1"
            permission="zope.Public"
            trusted="yes"
             />)�
zope.proxyro�zope.security.proxyrprrq� zope.component.testfiles.adapterrrrs�zope.security.checkerrtrnr�type)
rrorprqrrrsrt�ob�p�arrr�)test_with_proxy_factory_public_permission?sz>Test_zcml_functional.test_with_proxy_factory_public_permissionc
Cs�ddlm}ddlm}ddlm}ddlm}ddlm	}ddl
m}|jd�|�}||�}||�}	|j
||	��|j
t||	��|k�dS)	Nr)ro)rp)rq)rr)rt)�
LocationProxya
        <adapter
          for="zope.component.testfiles.components.IContent"
          provides="zope.component.testfiles.adapter.I1"
          factory="zope.component.testfiles.adapter.A1"
          trusted="yes"
          locate="yes"
          />
        )rurorvrprrqrwrrrxrtZzope.location.locationr~rnrry)
rrorprqrrrtr~rzr{r|rrr�test_located_proxy_factoryYsz/Test_zcml_functional.test_located_proxy_factoryN)	rrrrjZtearDownrnrr}rrrrrrh,s
rhc@speZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
edd��Zedd��Z
edd��ZdS)�Test_subscribercOsddlm}|||�S)Nr)�
subscriber)r
r�)rrrr�rrrr
vszTest_subscriber._callFUTcCs*ddlm}t�}|jt|j||f�dS)Nr)r2)r5r2r6r7r@r
)rr2r8rrr�test_no_factory_no_handlerzsz*Test_subscriber.test_no_factory_no_handlercCsHddlm}Gdd�d|�}dd�}t�}|jt|j||f||d�dS)Nr)r2c@seZdZdS)zBTest_subscriber.test_no_factory_w_handler_w_provides.<locals>.IFooN)rrrrrrrr4�sr4cWsdS)Nr)rrrr�_handler�szFTest_subscriber.test_no_factory_w_handler_w_provides.<locals>._handler)r	�provides)r5r2r6r7r@r
)rr2r4r�r8rrr�$test_no_factory_w_handler_w_provides�s
z4Test_subscriber.test_no_factory_w_handler_w_providescCsHddlm}Gdd�dt�}dd�}t�}|jt|j||f||d�dS)Nr)r2c@seZdZdS)z5Test_subscriber.test_w_factory_w_handler.<locals>.FooN)rrrrrrrr;�sr;cWsdS)Nr)rrrrr��sz:Test_subscriber.test_w_factory_w_handler.<locals>._handler)r	)r5r2r$r6r7r@r
)rr2r;r�r8rrr�test_w_factory_w_handler�sz(Test_subscriber.test_w_factory_w_handlercCs<ddlm}Gdd�dt�}t�}|jt|j||f|�dS)Nr)r2c@seZdZdS)z7Test_subscriber.test_w_factory_no_provides.<locals>.FooN)rrrrrrrr;�sr;)r5r2r$r6r7r@r
)rr2r;r8rrr�test_w_factory_no_provides�s
z*Test_subscriber.test_w_factory_no_providescCsLddlm}Gdd�d|�}Gdd�dt�}t�}|jt|j|||d�dS)Nr)r2c@seZdZdS)zQTest_subscriber.test_w_factory_w_provides_no_for_factory_wo_adapter.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)zPTest_subscriber.test_w_factory_w_provides_no_for_factory_wo_adapter.<locals>.FooN)rrrrrrrr;�sr;)r%r�)r5r2r$r6r7r@r
)rr2r4r;r8rrr�3test_w_factory_w_provides_no_for_factory_wo_adapter�szCTest_subscriber.test_w_factory_w_provides_no_for_factory_wo_adaptercCs\ddlm}ddlm}ddlm}dd�}t�}|j||f|d�|jt	|j
�d�|j|j
ddf�|j
dd}|j|d	|�|j|d
d�|j|ddd�|j|dd|�|j|dd|f�|j|dd
d�|j|ddd�|j|j
ddf�|j
dd}|j|d	|�|j|d
d�|j|dd|f�dS)Nr)r2)rM)r	cWsdS)Nr)rrrrr��szGTest_subscriber.test_no_factory_w_handler_no_provides.<locals>._handlerrTrErQrRrZregisterHandlerrPrWrFrV)r5r2rXrMr
r	r6r
rHrYrG)rr2rMr	r�r8rIrrr�%test_no_factory_w_handler_no_provides�s*z5Test_subscriber.test_no_factory_w_handler_no_providesc	Cs�ddlm}ddlm}ddlm}Gdd�d|�}Gdd�dt�}d	d
�}t�}|j||f||d�|j	t
|j�d�|j	|jddf�|jdd
}|j	|d|�|j	|dd�|j	|ddd�|j	|dd
|�|j	|dd|f�|j	|dd|�|j	|ddd�|j	|ddd�|j	|jd
df�|jd
d
}|j	|d|�|j	|dd�|j	|dd|f�|j	|jddf�|jdd
}|j	|d|�|j	|dd�|j	|dd|f�dS)Nr)r2)rM)r	c@seZdZdS)z7Test_subscriber.test_w_factory_w_provides.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)z6Test_subscriber.test_w_factory_w_provides.<locals>.FooN)rrrrrrrr;�sr;cWsdS)Nr)rrrrr��sz;Test_subscriber.test_w_factory_w_provides.<locals>._handler)r�rPrErQrRr�registerSubscriptionAdapterrTrFrWrUrV)r5r2rXrMr
r	r$r6r
rHrYrG)	rr2rMr	r4r;r�r8rIrrr�test_w_factory_w_provides�s:z)Test_subscriber.test_w_factory_w_providesc
Cs
ddlm}ddlm}ddlm}ddlm}Gdd�d|�}Gdd	�d	t�}t	�}|j
||f||d
d�|jt|j
�d�|j|j
ddf�|j
dd
}|j|d|�|j|dd�|j|ddd�|dd
}	|jt|	|��|j|	jj|k�|j|dd|f�|j|dd|�|j|ddd�|j|ddd�|j|j
d
df�|j
d
d
}|j|d|�|j|dd�|j|dd|f�|j|j
ddf�|j
dd
}|j|d|�|j|dd�|j|dd|f�dS)Nr)r2)r[)rM)r	c@seZdZdS)zDTest_subscriber.test_w_factory_w_provides_w_permission.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)zCTest_subscriber.test_w_factory_w_provides_w_permission.<locals>.FooN)rrrrrrrr;�sr;r\)r�r]rPrErQrRrr�rTrFrWrUrV)r5r2r^r[rXrMr
r	r$r6r
rHrYrGrr_r%)
rr2r[rMr	r4r;r8rIr`rrr�&test_w_factory_w_provides_w_permission�sB
z6Test_subscriber.test_w_factory_w_provides_w_permissionc
Csddlm}ddlm}ddlm}ddlm}Gdd�d|�}Gdd	�d	t�}t	�}|j
||f||d
d�|jt|j
�d�|j|j
ddf�|j
dd
}|j|d|�|j|dd�|j|ddd�|dd
}	|jt|	|��|j|	j|k�|j|dd|f�|j|dd|�|j|ddd�|j|ddd�|j|j
d
df�|j
d
d
}|j|d|�|j|dd�|j|dd|f�|j|j
ddf�|j
dd
}|j|d|�|j|dd�|j|dd|f�dS)Nr)r2)r[)rM)r	c@seZdZdS)zNTest_subscriber.test_w_factory_w_provides_wo_permission_w_locate.<locals>.IFooN)rrrrrrrr4sr4c@seZdZdS)zMTest_subscriber.test_w_factory_w_provides_wo_permission_w_locate.<locals>.FooN)rrrrrrrr;sr;T)r�rbrPrErQrRrr�rTrFrWrUrV)r5r2r^r[rXrMr
r	r$r6r
rHrYrGrr_r%)
rr2r[rMr	r4r;r8rIr`rrr�0test_w_factory_w_provides_wo_permission_w_locates@z@Test_subscriber.test_w_factory_w_provides_wo_permission_w_locatec
Csddlm}ddlm}ddlm}ddlm}Gdd�d|�}Gdd	�d	t�}t	�}|j
||f||d
d�|jt|j
�d�|j|j
ddf�|j
dd
}|j|d|�|j|dd�|j|ddd�|dd
}	|jt|	|��|j|	j|k�|j|dd|f�|j|dd|�|j|ddd�|j|ddd�|j|j
d
df�|j
d
d
}|j|d|�|j|dd�|j|dd|f�|j|j
ddf�|j
dd
}|j|d|�|j|dd�|j|dd|f�dS)Nr)r2)rd)rM)r	c@seZdZdS)zOTest_subscriber.test_w_factory_w_provides_wo_permission_w_trusted.<locals>.IFooN)rrrrrrrr4Csr4c@seZdZdS)zNTest_subscriber.test_w_factory_w_provides_wo_permission_w_trusted.<locals>.FooN)rrrrrrrr;Esr;T)r�rerPrErQrRrr�rTrFrWrUrV)r5r2r^rdrXrMr
r	r$r6r
rHrYrGrr_r%)
rr2rdrMr	r4r;r8rIr`rrr�1test_w_factory_w_provides_wo_permission_w_trusted=s@zATest_subscriber.test_w_factory_w_provides_wo_permission_w_trustedN)rrrr
r�r�r�r�r�r�r�rr�r�r�rrrrr�ts%+*r�c@s`eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zedd��Z
dS)�Test_utilitycOsddlm}|||�S)Nr)�utility)r
r�)rrrr�rrrr
jszTest_utility._callFUTcCs4Gdd�dt�}t}t�}|jt|j|||d�dS)Nc@seZdZdS)z9Test_utility.test_w_factory_w_component.<locals>._FactoryN)rrrrrrrr?osr?)r%�	component)r$r6r7r@r
)rr?�
_COMPONENTr8rrr�test_w_factory_w_componentnsz'Test_utility.test_w_factory_w_componentcCs.Gdd�dt�}t�}|jt|j||d�dS)Nc@seZdZdS)zOTest_utility.test_w_factory_wo_provides_factory_no_implements.<locals>._FactoryN)rrrrrrrr?xsr?)r%)r$r6r7r@r
)rr?r8rrr�0test_w_factory_wo_provides_factory_no_implementswsz=Test_utility.test_w_factory_wo_provides_factory_no_implementscCs"t}t�}|jt|j||d�dS)N)r�)r$r6r7r@r
)rr�r8rrr�2test_w_component_wo_provides_component_no_provides~sz?Test_utility.test_w_component_wo_provides_component_no_providescCs�ddlm}ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j|||d	�|j	t
|j�d
�|j	|jddf�|jdd}|j	|d|�|j	|d
d|df�|j	|ddd�|j	|ddd�|j	|dd
|�|j	|ddd�|j	|ddd�|j	|dd|i�|j	|jddf�|jdd}|j	|d|�|j	|d
d�|j	|dd|f�dS)Nr)r2)rM)r	c@seZdZdS)z4Test_utility.test_w_factory_w_provides.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)z3Test_utility.test_w_factory_w_provides.<locals>.FooN)rrrrrrrr;�sr;)r%r�rTrErQrRr�rWrrrPrFrVrr%)r5r2rXrMr
r	r$r6r
rHrYrG)rr2rMr	r4r;r8rIrrrr��s.z&Test_utility.test_w_factory_w_providesc	Cs�ddlm}ddlm}ddlm}ddlm}Gdd�d|�}||�Gdd	�d	t��}t�}|j	||d
�|j
t|j�d�|j
|jddf�|jdd}|j
|d
|�|j
|dd|df�|j
|ddd�|j
|ddd�|j
|dd|�|j
|ddd�|j
|ddd�|j
|dd|i�|j
|jddf�|jdd}|j
|d
|�|j
|dd�|j
|dd|f�dS)Nr)r2)rC)rM)r	c@seZdZdS)zHTest_utility.test_w_factory_wo_provides_factory_implements.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)zGTest_utility.test_w_factory_wo_provides_factory_implements.<locals>.FooN)rrrrrrrr;�sr;)r%rTrErQrRr�rWrrrPrFrVrr%)
r5r2rCrXrMr
r	r$r6r
rHrYrG)	rr2rCrMr	r4r;r8rIrrr�-test_w_factory_wo_provides_factory_implements�s2z:Test_utility.test_w_factory_wo_provides_factory_implementscCsnddlm}ddlm}ddlm}Gdd�d|�}t�}t�}|j||d|d�|j	t
|j�d	�|j	|jddf�|jdd
}|j	|d|�|j	|dd
|df�|j	|ddd�|j	|dd
|�|j	|dd	|�|j	|ddd�|j	|ddd�|j	|jd
df�|jd
d
}|j	|d|�|j	|dd�|j	|dd|f�dS)Nr)r2)rM)r	c@seZdZdS)z=Test_utility.test_w_component_w_provides_w_name.<locals>.IFooN)rrrrrrrr4�sr4rN)r�rOr�rTrErQrRr�rrrPrFrVrW)r5r2rXrMr
r	r$r6r
rHrYrG)rr2rMr	r4r�r8rIrrr�"test_w_component_w_provides_w_name�s.
z/Test_utility.test_w_component_w_provides_w_namec
Cs�ddlm}m}m}ddlm}Gdd�d|�}||�|d�Gdd�dt���}|�}t�}|j||d	�|j	dd
}	|j
|	dd
|�|j
|	dd|�|j
|	dd
d�dS)Nr)r2rCrB)r	c@seZdZdS)z?Test_utility.test_w_component_wo_provides_wo_name.<locals>.IFooN)rrrrrrrr4�sr4�fooc@seZdZdS)z>Test_utility.test_w_component_wo_provides_wo_name.<locals>.FooN)rrrrrrrr;�sr;)r�rErrTrP)r5r2rCrBr
r	r$r6r
rGrH)
rr2rCrBr	r4r;r�r8rIrrr�$test_w_component_wo_provides_wo_name�s
z1Test_utility.test_w_component_wo_provides_wo_namec
Cs�ddlm}ddlm}ddlm}ddlm}Gdd�d|�}Gdd	�d	t�}|�}|||�t�}|j	||d
�|j
t|j�d�|j
|jddf�|jdd}	|j
|	d
|�|j
|	dd|df�|j
|	ddd�|j
|	dd|�|j
|	dd|�|j
|	ddd�|j
|	ddd�|j
|jddf�|jdd}	|j
|	d
|�|j
|	dd�|j
|	dd|f�dS)Nr)r2)�directlyProvides)rM)r	c@seZdZdS)zJTest_utility.test_w_component_wo_provides_component_provides.<locals>.IFooN)rrrrrrrr4�sr4c@seZdZdS)zITest_utility.test_w_component_wo_provides_component_provides.<locals>.FooN)rrrrrrrr;�sr;)r�rTrErQrRr�rWrrrPrFrV)
r5r2r�rXrMr
r	r$r6r
rHrYrG)
rr2r�rMr	r4r;r�r8rIrrr�/test_w_component_wo_provides_component_provides�s2
z<Test_utility.test_w_component_wo_provides_component_providescCs�ddlm}ddlm}ddlm}ddlm}ddlm	}Gdd�d|�}Gd	d
�d
t
�}|�}t�}	|j|	||dd�|j
t|	j�d
�|j
|	jddf�|	jdd}
|j
|
d|�|j
|
dd|df�|j
|
ddd�|
dd}|jt||��|j||�|k�|j
|jjddi�|j
|
dd
|�|j
|
ddd�|j
|
ddd�|j
|	jddf�|	jdd}
|j
|
d|�|j
|
dd�|j
|
dd|f�dS)Nr)r2)�removeAllProxies)rM)�PermissionProxy)r	c@seZdZdd�ZdS)zCTest_utility.test_w_component_w_provides_w_permission.<locals>.IFoocSsdS)Nr)rrrrrDszGTest_utility.test_w_component_w_provides_w_permission.<locals>.IFoo.barN)rrrrDrrrrr4sr4c@seZdZdd�ZdS)zBTest_utility.test_w_component_w_provides_w_permission.<locals>.FoocSsdS)Nr)rrrrrDszFTest_utility.test_w_component_w_provides_w_permission.<locals>.Foo.barN)rrrrDrrrrr;sr;r\)r�r�r]rTrErQrRr�rWrrrDrPrFrV)r5r2rur�rXrMZzope.component.securityr�r
r	r$r6r
rHrYrGrr_�__Security_checker__�get_permissions)rr2r�rMr�r	r4r;r�r8rIZcomponent_proxyrrr�(test_w_component_w_provides_w_permissions<


z5Test_utility.test_w_component_w_provides_w_permissionN)rrrr
r�r�r�r�r�r�r�r�rr�rrrrr�hs	r�c@s$eZdZdd�Zdd�Zdd�ZdS)�Test_interfacecOsddlm}|||�S)Nr)�	interface)r
r�)rrrr�rrrr
5szTest_interface._callFUTcCs�ddlm}ddlm}Gdd�d|�}t�}|j||�|jt|j�d�|j|jddf�|jdd}|j|d|�|j|dd�|j|d	d
|df�dS)Nr)r2)rMc@seZdZdS)z1Test_interface.test_wo_name_wo_type.<locals>.IFooN)rrrrrrrr4<sr4rErQrRrrW)	r5r2rXrMr6r
rHrYrG)rr2rMr4r8rIrrr�test_wo_name_wo_type9sz#Test_interface.test_wo_name_wo_typecCs�ddlm}ddlm}Gdd�d|�}Gdd�d|�}t�}|j||d|d	�|jt|j�d
�|j|jddf�|jdd
}|j|d|�|j|dd�|j|d
d||f�dS)Nr)r2)rMc@seZdZdS)z/Test_interface.test_w_name_w_type.<locals>.IFooN)rrrrrrrr4Jsr4c@seZdZdS)z/Test_interface.test_w_name_w_type.<locals>.IBarN)rrrrrrrr:Lsr:r�)rOryrErQrRr)	r5r2rXrMr6r
rHrYrG)rr2rMr4r:r8rIrrr�test_w_name_w_typeGsz!Test_interface.test_w_name_w_typeN)rrrr
r�r�rrrrr�3sr�c@speZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
edd��Zedd��Z
edd��ZdS)�	Test_viewcOsddlm}|||�S)Nr)�view)r
r�)rrrr�rrrr
ZszTest_view._callFUTc
Cstddlm}ddlm}Gdd�d|�}Gdd�d|�}Gdd	�d	t�}t�}|j||j||f|d
||f|d�dS)Nr)r2)r3c@seZdZdS)zCTest_view.test_w_allowed_interface_wo_permission.<locals>.IViewTypeN)rrrrrrr�	IViewTypeasr�c@seZdZdd�Zdd�ZdS)z?Test_view.test_w_allowed_interface_wo_permission.<locals>.IViewcSsdS)Nrrrrrr�dszCTest_view.test_w_allowed_interface_wo_permission.<locals>.IView.foocSsdS)NrrrrrrDfszCTest_view.test_w_allowed_interface_wo_permission.<locals>.IView.barN)rrrr�rDrrrr�IViewcsr�c@s$eZdZdd�Zdd�Zdd�ZdS)z?Test_view.test_w_allowed_interface_wo_permission.<locals>._ViewcSs
||_dS)N)r)rrrrrr>iszHTest_view.test_w_allowed_interface_wo_permission.<locals>._View.__init__cSsdS)Nrrrrrr�kszCTest_view.test_w_allowed_interface_wo_permission.<locals>._View.foocSsdS)NrrrrrrDmszCTest_view.test_w_allowed_interface_wo_permission.<locals>._View.barN)rrrr>r�rDrrrr�_Viewhsr�rW)�for_�allowed_interface)r5r2r
r3r$r6r7r
)rr2r3r�r�r�r8rrr�&test_w_allowed_interface_wo_permission^sz0Test_view.test_w_allowed_interface_wo_permissionc
Csdddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||j||f|d||fdd�dS)
Nr)r2)r3c@seZdZdS)zDTest_view.test_w_allowed_attributes_wo_permission.<locals>.IViewTypeN)rrrrrrrr�xsr�c@s$eZdZdd�Zdd�Zdd�ZdS)z@Test_view.test_w_allowed_attributes_wo_permission.<locals>._ViewcSs
||_dS)N)r)rrrrrr>{szITest_view.test_w_allowed_attributes_wo_permission.<locals>._View.__init__cSsdS)Nrrrrrr�}szDTest_view.test_w_allowed_attributes_wo_permission.<locals>._View.foocSsdS)NrrrrrrDszDTest_view.test_w_allowed_attributes_wo_permission.<locals>._View.barN)rrrr>r�rDrrrrr�zsr�rWr�rD)r��allowed_attributes)r�rD)r5r2r
r3r$r6r7r
)rr2r3r�r�r8rrr�'test_w_allowed_attributes_wo_permissionusz1Test_view.test_w_allowed_attributes_wo_permissionc	CsPddlm}ddlm}Gdd�d|�}t�}|j||j|f|d||fd�dS)Nr)r2)r3c@seZdZdS)z4Test_view.test_w_factory_as_empty.<locals>.IViewTypeN)rrrrrrrr��sr�rW)r�)r5r2r
r3r6r7r
)rr2r3r�r8rrr�test_w_factory_as_empty�sz!Test_view.test_w_factory_as_emptyc	Cstddlm}ddlm}Gdd�d|�}Gdd�dt�}Gdd	�d	t�}t�}|j||j|||f|d
||fd�dS)Nr)r2)r3c@seZdZdS)zBTest_view.test_w_multiple_factory_multiple_for_.<locals>.IViewTypeN)rrrrrrrr��sr�c@seZdZdS)z<Test_view.test_w_multiple_factory_multiple_for_.<locals>.FooN)rrrrrrrr;�sr;c@seZdZdS)z<Test_view.test_w_multiple_factory_multiple_for_.<locals>.BarN)rrrrrrrr<�sr<rW)r�)r5r2r
r3r$r6r7r
)rr2r3r�r;r<r8rrr�%test_w_multiple_factory_multiple_for_�sz/Test_view.test_w_multiple_factory_multiple_for_c	Cs^ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||j||f|dfd	�dS)
Nr)r2)r3c@seZdZdS)z1Test_view.test_w_for__as_empty.<locals>.IViewTypeN)rrrrrrrr��sr�c@seZdZdd�ZdS)z-Test_view.test_w_for__as_empty.<locals>._ViewcSs
||_dS)N)r)rrrrrr>�sz6Test_view.test_w_for__as_empty.<locals>._View.__init__N)rrrr>rrrrr��sr�rW)r�)r5r2r
r3r$r6r7r
)rr2r3r�r�r8rrr�test_w_for__as_empty�szTest_view.test_w_for__as_emptycCsLddlm}ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||f|d	|fd
�|j	t
|j�d�|j	|jddf�|jdd}|j	|d
|�|j	|dd||fd	|f�|j	|ddd�|j	|dd|�|j	|dd||f�|j	|dd|�|j	|ddd	�|j	|ddd�|j	|jddf�|jdd}|j	|d
|�|j	|dd�|j	|dd|f�|j	|jddf�|jdd}|j	|d
|�|j	|dd�|j	|dd|f�|j	|jddf�|jdd}|j	|d
|�|j	|dd�|j	|dd|f�dS)Nr)r2)r	)rMc@seZdZdS)zSTest_view.test_w_single_factory_single_for__wo_permission_w_name.<locals>.IViewTypeN)rrrrrrrr��sr�c@seZdZdd�ZdS)zOTest_view.test_w_single_factory_single_for__wo_permission_w_name.<locals>._ViewcSs
||_dS)N)r)rrrrrr>�szXTest_view.test_w_single_factory_single_for__wo_permission_w_name.<locals>._View.__init__N)rrrr>rrrrr��sr�rN)r�rFrErQrRr�rrSrTrPrUrVrW)r5r2r
r	rXrMr$r6r
rHrYrG)rr2r	rMr�r�r8rIrrr�6test_w_single_factory_single_for__wo_permission_w_name�sD
z@Test_view.test_w_single_factory_single_for__wo_permission_w_namecCs�ddlm}ddlm}Gdd�d|�}Gdd�dt�}Gdd	�d	t�}t�}|j|||g|d
|fd�|j|jddf�|jdd}|j|d
|�|j|dd||fd
|f�|j|ddd�|dd}|j	|j
|k�t�}	t�}
||	|
�}|j	t||��|j	|j|
k�|j	t|j
|��|j	|j
j
|	k�|j|dd||f�|j|dd|�|j|ddd
�|j|ddd�dS)Nr)r2)r	c@seZdZdS)zNTest_view.test_w_multiple_factory_single_for__wo_permission.<locals>.IViewTypeN)rrrrrrrr��sr�c@seZdZdd�ZdS)zJTest_view.test_w_multiple_factory_single_for__wo_permission.<locals>._ViewcSs
||_dS)N)r)rrrrrr>�szSTest_view.test_w_multiple_factory_single_for__wo_permission.<locals>._View.__init__N)rrrr>rrrrr��sr�c@seZdZdd�ZdS)zKTest_view.test_w_multiple_factory_single_for__wo_permission.<locals>._View2cSs||_||_dS)N)r�request)rrr�rrrr>�szTTest_view.test_w_multiple_factory_single_for__wo_permission.<locals>._View2.__init__N)rrrr>rrrr�_View2�sr�rW)r�rErQrRr�rrSrTrPrFrUrV)r5r2r
r	r$r6r
rHrGrr%r_r�r)rr2r	r�r�r�r8rIr%rr�r�rrr�1test_w_multiple_factory_single_for__wo_permission�s6


z;Test_view.test_w_multiple_factory_single_for__wo_permissioncCsfddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||g|d|fd	d
�|j|jddf�|jdd}|j|d|�|j|d
d||fd|f�|j|ddd�|dd}t�}t�}	|||	�}
|j	|
j
|k�|j	|
j|	k�|j	|j|k�|j|dd||f�|j|dd|�|j|ddd�|j|ddd�dS)Nr)r2)r	c@seZdZdS)zKTest_view.test_w_single_factory_single_for__w_permission.<locals>.IViewTypeN)rrrrrrrr��sr�c@seZdZdd�ZdS)zGTest_view.test_w_single_factory_single_for__w_permission.<locals>._ViewcSs||_||_dS)N)rr�)rrr�rrrr>szPTest_view.test_w_single_factory_single_for__w_permission.<locals>._View.__init__N)rrrr>rrrrr�sr�rWr\)r�r]rErQrRr�rrSrTrPrFrUrV)
r5r2r
r	r$r6r
rHrGrrr�r%)rr2r	r�r�r8rIr%rr�r�rrr�.test_w_single_factory_single_for__w_permission�s0

z8Test_view.test_w_single_factory_single_for__w_permissionc		Cs�ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||g|d|fd	dd�|j|jddf�|jdd}|j|d
|�|j|dd||fd|f�|j|ddd�|dd}|j	}|j|j
d
d	i�dS)Nr)r2)r	c@seZdZdS)z]Test_view.test_w_single_factory_single_for__w_permission_and_allowed_attrs.<locals>.IViewTypeN)rrrrrrrr�sr�c@seZdZdd�Zdd�ZdS)zYTest_view.test_w_single_factory_single_for__w_permission_and_allowed_attrs.<locals>._ViewcSs||_||_dS)N)rr�)rrr�rrrr>!szbTest_view.test_w_single_factory_single_for__w_permission_and_allowed_attrs.<locals>._View.__init__cSsdS)Nr)rrrrrD$sz]Test_view.test_w_single_factory_single_for__w_permission_and_allowed_attrs.<locals>._View.barN)rrrr>rDrrrrr� sr�rWr\rD)r�r]r�rErQrRr�rrS)rD)r5r2r
r	r$r6r
rHrG�checkerr�)	rr2r	r�r�r8rIr%r�rrr�@test_w_single_factory_single_for__w_permission_and_allowed_attrss 

zJTest_view.test_w_single_factory_single_for__w_permission_and_allowed_attrsc		Cs�ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||g|d|fd	|fd
�|j|jddf�|jdd}|j|d|�|j|d
d||fd|f�|j|ddd�|dd}|j	}|j|j
dd	i�dS)Nr)r2)r	c@seZdZdd�ZdS)z]Test_view.test_w_single_factory_single_for__w_permission_and_allowed_iface.<locals>.IViewTypecSsdS)Nr)rrrrrD9szaTest_view.test_w_single_factory_single_for__w_permission_and_allowed_iface.<locals>.IViewType.barN)rrrrDrrrrr�8sr�c@seZdZdd�Zdd�ZdS)zYTest_view.test_w_single_factory_single_for__w_permission_and_allowed_iface.<locals>._ViewcSs||_||_dS)N)rr�)rrr�rrrr><szbTest_view.test_w_single_factory_single_for__w_permission_and_allowed_iface.<locals>._View.__init__cSsdS)Nr)rrrrrD?sz]Test_view.test_w_single_factory_single_for__w_permission_and_allowed_iface.<locals>._View.barN)rrrr>rDrrrrr�;sr�rWr\)r�r]r�rErQrRr�rrSrD)r5r2r
r	r$r6r
rHrGr�r�)	rr2r	r�r�r8rIr%r�rrr�@test_w_single_factory_single_for__w_permission_and_allowed_iface4s 
zJTest_view.test_w_single_factory_single_for__w_permission_and_allowed_ifaceN)rrrr
r�r�r�r�r�r�r�rr�r�r�rrrrr�Xs

*$ r�c@s8eZdZdd�Zdd�Zdd�Zdd�Zed	d
��ZdS)�
Test_resourcecOsddlm}|||�S)Nr)�resource)r
r�)rrrr�rrrr
RszTest_resource._callFUTc	Csnddlm}ddlm}Gdd�d|�}Gdd�d|�}Gdd	�d	t�}t�}|j||j||f|d
|d�dS)Nr)r2)r3c@seZdZdS)zKTest_resource.test_w_allowed_interface_wo_permission.<locals>.IResourceTypeN)rrrrrrr�
IResourceTypeYsr�c@seZdZdd�Zdd�ZdS)zCTest_resource.test_w_allowed_interface_wo_permission.<locals>.IViewcSsdS)Nrrrrrr�\szGTest_resource.test_w_allowed_interface_wo_permission.<locals>.IView.foocSsdS)NrrrrrrD^szGTest_resource.test_w_allowed_interface_wo_permission.<locals>.IView.barN)rrrr�rDrrrrr�[sr�c@s$eZdZdd�Zdd�Zdd�ZdS)zGTest_resource.test_w_allowed_interface_wo_permission.<locals>._ResourcecSs
||_dS)N)r)rrrrrr>aszPTest_resource.test_w_allowed_interface_wo_permission.<locals>._Resource.__init__cSsdS)Nrrrrrr�cszKTest_resource.test_w_allowed_interface_wo_permission.<locals>._Resource.foocSsdS)NrrrrrrDeszKTest_resource.test_w_allowed_interface_wo_permission.<locals>._Resource.barN)rrrr>r�rDrrrr�	_Resource`sr�rW)r�)r5r2r
r3r$r6r7r
)rr2r3r�r�r�r8rrrr�Vs
z4Test_resource.test_w_allowed_interface_wo_permissionc	Cs^ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j||j||f|ddd�dS)
Nr)r2)r3c@seZdZdS)zLTest_resource.test_w_allowed_attributes_wo_permission.<locals>.IResourceTypeN)rrrrrrrr�psr�c@s$eZdZdd�Zdd�Zdd�ZdS)zHTest_resource.test_w_allowed_attributes_wo_permission.<locals>._ResourcecSs
||_dS)N)r)rrrrrr>sszQTest_resource.test_w_allowed_attributes_wo_permission.<locals>._Resource.__init__cSsdS)Nrrrrrr�uszLTest_resource.test_w_allowed_attributes_wo_permission.<locals>._Resource.foocSsdS)NrrrrrrDwszLTest_resource.test_w_allowed_attributes_wo_permission.<locals>._Resource.barN)rrrr>r�rDrrrrr�rsr�rWr�rD)r�)r�rD)r5r2r
r3r$r6r7r
)rr2r3r�r�r8rrrr�ms
z5Test_resource.test_w_allowed_attributes_wo_permissioncCs�ddlm}ddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j|||d	�|j	t
|j�d
�|j	|jddf�|jdd}|j	|d|�|j	|d
dd	||f�|j	|ddd�|j	|dd|�|j	|dd|f�|j	|dd
|�|j	|ddd	�|j	|ddd�|j	|jddf�|jdd}|j	|d|�|j	|d
d�|j	|dd|f�|j	|jddf�|jdd}|j	|d|�|j	|d
d�|j	|dd|f�dS)Nr)r2)rM)r	c@seZdZdS)z>Test_resource.test_wo_permission_w_name.<locals>.IResourceTypeN)rrrrrrrr��sr�c@s$eZdZdd�Zdd�Zdd�ZdS)z:Test_resource.test_wo_permission_w_name.<locals>._ResourcecSs
||_dS)N)r)rrrrrr>�szCTest_resource.test_wo_permission_w_name.<locals>._Resource.__init__cSsdS)Nrrrrrr��sz>Test_resource.test_wo_permission_w_name.<locals>._Resource.foocSsdS)NrrrrrrD�sz>Test_resource.test_wo_permission_w_name.<locals>._Resource.barN)rrrr>r�rDrrrrr��sr�rNrPrErQrRr�rrSrTrFrUrVrW)r5r2rXrMr
r	r$r6r
rHrYrG)rr2rMr	r�r�r8rIrrr�test_wo_permission_w_names:
z'Test_resource.test_wo_permission_w_namecCsnddlm}ddlm}Gdd�d|�}Gdd�dt�}t�}|j|||dd	dd�|jt|j	�d�|j|j	ddf�|j	dd
}|j|d|�|j|ddd||f�|j|ddd�|dd
}|j
|j|k�t�}||�}	|	j}
|j|
j
d
d	i�|j
|	j|k�|j|dd|f�|j|dd|�|j|ddd�|j|ddd�dS)Nr)r2)r	c@seZdZdS)z6Test_resource.test_w_permission.<locals>.IResourceTypeN)rrrrrrrr��sr�c@s$eZdZdd�Zdd�Zdd�ZdS)z2Test_resource.test_w_permission.<locals>._ResourcecSs
||_dS)N)r)rrrrrr>�sz;Test_resource.test_w_permission.<locals>._Resource.__init__cSsdS)Nrrrrrr��sz6Test_resource.test_w_permission.<locals>._Resource.foocSsdS)NrrrrrrD�sz6Test_resource.test_w_permission.<locals>._Resource.barN)rrrr>r�rDrrrrr��sr�rNr\r�)r]r�rPrErQrRr�rrSrTrFrUrV)r�)r5r2r
r	r$r6r
rHrYrGrr%r�r�r)rr2r	r�r�r8rIr%rr�r�rrr�test_w_permission�s2

zTest_resource.test_w_permissionN)	rrrr
r�r�r�rr�rrrrr�Ps
)r�cCsGdd�dt�}|�S)Nc@s eZdZdZdd�Zdd�ZdS)z$_makeConfigContext.<locals>._ContextrVcSs
g|_dS)N)rG)rrrrr>�sz-_makeConfigContext.<locals>._Context.__init__c_s|jj||f�dS)N)rG�append)rrrrrrrI�sz+_makeConfigContext.<locals>._Context.actionN)rrr�infor>rIrrrr�_Context�sr�)r$)r�rrrr6�sr6cCsRtjtjt�tjt�tjt�tjt�tjt�tjt�tjt	�tjt
�tjt�f	�S)N)�unittestZ	TestSuiteZ	makeSuiterrr0r�r�r�r�r�rhrrrr�
test_suite�sr�)�__doc__r�rZTestCaserrr0rhr�r�r�r�r�r6r�rrrr�<module>s"\HuL%y}