Your IP : 216.73.217.129


Current Path : /opt/alt/python35/lib64/python3.5/test/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/test/__pycache__/test_dynamic.cpython-35.opt-1.pyc



��Yf<�@smddlZddlZddlZddlmZmZGdd�dej�Zedkriej	�dS)�N)�	swap_item�	swap_attrc@s�eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dS)�RebindBuiltinsTestsz=Test all the ways that we can change/shadow globals/builtins.cGsdS)a�Perform TestCase-specific configuration on a function before testing.

        By default, this does nothing. Example usage: spinning a function so
        that a JIT will optimize it. Subclasses should override this as needed.

        Args:
            func: function to configure.
            *args: any arguments that should be passed to func, if calling it.

        Returns:
            Nothing. Work will be performed on func in-place.
        N�)�self�func�argsrr�6/opt/alt/python35/lib64/python3.5/test/test_dynamic.py�configure_funcs
z"RebindBuiltinsTests.configure_funcc
Csfdd�}|j|�|j|�d�tt�ddd���|j|�d�WdQRXdS)NcSstdddg�S)N���)�lenrrrr	�foosz=RebindBuiltinsTests.test_globals_shadow_builtins.<locals>.foor
rcSsdS)N�r)�xrrr	�<lambda>$szBRebindBuiltinsTests.test_globals_shadow_builtins.<locals>.<lambda>r)r
�assertEqualr�globals)rrrrr	�test_globals_shadow_builtinss

z0RebindBuiltinsTests.test_globals_shadow_builtinsc
Cscdd�}|j|�|j|�d�ttddd���|j|�d�WdQRXdS)NcSstdddg�S)Nrrr
)rrrrr	r)sz5RebindBuiltinsTests.test_modify_builtins.<locals>.foor
rcSsdS)Nrr)rrrr	r.sz:RebindBuiltinsTests.test_modify_builtins.<locals>.<lambda>r)r
rr�builtins)rrrrr	�test_modify_builtins's

z(RebindBuiltinsTests.test_modify_builtinsc
Csrdd�}|j|�|�}|jt|�d�ttddd���|jt|�d�WdQRXdS)Ncss&td�}t|�Vt|�VdS)Nr
)�ranger)rrrr	r3szLRebindBuiltinsTests.test_modify_builtins_while_generator_active.<locals>.foor
rcSsdS)Nrr)rrrr	r;szQRebindBuiltinsTests.test_modify_builtins_while_generator_active.<locals>.<lambda>r)r
r�nextrr)rr�grrr	�+test_modify_builtins_while_generator_active1s
	z?RebindBuiltinsTests.test_modify_builtins_while_generator_activecCshttdt��Odd�}dd�}|j|dd��|j||�dd	g�WdQRXdS)
NrcSsdd�t_dS)NcSsdS)N�r)rrrr	rCszZRebindBuiltinsTests.test_modify_builtins_from_leaf_function.<locals>.bar.<locals>.<lambda>)rrrrrr	�barBszHRebindBuiltinsTests.test_modify_builtins_from_leaf_function.<locals>.barcSsCg}|jttd���|�|jttd���|S)Nr)�appendrr)Zmodifier�lrrr	rEs
zHRebindBuiltinsTests.test_modify_builtins_from_leaf_function.<locals>.foocSsdS)Nrrrrr	rKszMRebindBuiltinsTests.test_modify_builtins_from_leaf_function.<locals>.<lambda>rr)rrrr
r)rrrrrr	�'test_modify_builtins_from_leaf_function>s
z;RebindBuiltinsTests.test_modify_builtins_from_leaf_functioncCs�dd�}|j|�ddd�i}d|d|ddd�i}|jtd	|�d
�|jtd	d|i�d
�dS)NcSstdddg�S)Nrrr
)rrrrr	rPszQRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_eval.<locals>.foorcSsdS)Nrr)rrrr	rUszVRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_eval.<locals>.<lambda>r�__builtins__cSsdS)N�r)rrrr	rWszfoo()r
)r
r�eval)rr�
builtins_dict�globals_dictrrr	�0test_cannot_change_globals_or_builtins_with_evalOs
zDRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_evalcCs�dd�}|j|�d|i}td|�|j|dd�ddd	�i}d|d
|ddd	�i}td|�|j|dd�dS)NcSstdddg�S)Nrrr
)rrrrr	r]szQRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_exec.<locals>.foorz	x = foo()rr
rcSsdS)Nrr)rrrr	rfszVRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_exec.<locals>.<lambda>r!cSsdS)Nr"r)rrrr	rhs)r
�execr)rrr%r$rrr	�0test_cannot_change_globals_or_builtins_with_exec\s


zDRebindBuiltinsTests.test_cannot_change_globals_or_builtins_with_execc
Cs{dd�}|j|�|�}|jt|�d�tt�dddd�i��|jt|�d�WdQRXdS)Ncss&td�}t|�Vt|�VdS)Nr
)rr)rrrr	rnszORebindBuiltinsTests.test_cannot_replace_builtins_dict_while_active.<locals>.foor
r!rcSsdS)Nrr)rrrr	rvszTRebindBuiltinsTests.test_cannot_replace_builtins_dict_while_active.<locals>.<lambda>)r
rrrr)rrrrrr	�.test_cannot_replace_builtins_dict_while_activems
	"zBRebindBuiltinsTests.test_cannot_replace_builtins_dict_while_activec
Csldd�}|j|�|j|�d�tt�dddd�i��|j|�d�WdQRXdS)NcSstdddg�S)Nrrr
)rrrrr	rzszPRebindBuiltinsTests.test_cannot_replace_builtins_dict_between_calls.<locals>.foor
r!rcSsdS)Nrr)rrrr	rszURebindBuiltinsTests.test_cannot_replace_builtins_dict_between_calls.<locals>.<lambda>)r
rrr)rrrrr	�/test_cannot_replace_builtins_dict_between_callsys

"zCRebindBuiltinsTests.test_cannot_replace_builtins_dict_between_callscCsEddd�i}td|�}|j|�|j|�d�dS)NrcSsdS)Nrr)rrrr	r�szKRebindBuiltinsTests.test_eval_gives_lambda_custom_globals.<locals>.<lambda>zlambda: len([])r)r#r
r)rr%rrrr	�%test_eval_gives_lambda_custom_globals�s
z9RebindBuiltinsTests.test_eval_gives_lambda_custom_globalsN)�__name__�
__module__�__qualname__�__doc__r
rrrr r&r(r)r*r+rrrr	r
s



	r�__main__)
r�
contextlibZunittestZtest.supportrrZTestCaserr,�mainrrrr	�<module>s�