Your IP : 216.73.216.213


Current Path : /proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/
Upload File :
Current File : //proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/test_pyclbr.cpython-34.pyc

�
f fc�@s�dZddlmZddlZddlmZmZmZddlZddl	m
Z
eedd���Z
eedd���ZGd	d
�d
e
�Zdd�Zed
kr�e�ndS)z/
   Test cases for pyclbr.py
   Nick Mathewson
�)�run_unittestN)�FunctionType�
MethodType�BuiltinFunctionType)�TestCasecCsdS)N�rrr�5/opt/alt/python34/lib64/python3.4/test/test_pyclbr.py�<lambda>sr	cCsdS)Nr)�crrrr	sc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	fd
d�Zdd
�Zdd�Z	dd�Z
dd�Zd	S)�
PyclbrTestcCsdt|�t|�At|�}|r`td|||fdtj�|jd|j��ndS)z0 succeed iff {l1} - {ignore} == {l2} - {ignore} zl1=%r
l2=%r
ignore=%r�filez
%r missingN)�set�print�sys�stderrZfail�pop)�self�l1�l2�ignoreZmissingrrr�assertListEqs  zPyclbrTest.assertListEqcCsV||krdSt||�s/td|�n|jt||�d||f�dS)z2 succeed iff hasattr(obj,attr) or attr in ignore. Nz???zexpected hasattr(%r, %r))�hasattrrZ
assertTrue)r�obj�attrrrrr�
assertHasattrszPyclbrTest.assertHasattrcCsI||krdS||kr5td|dtj�n|j||�dS)z* succeed iff key in obj or key in ignore. Nz***r)rrrZassertIn)rr�keyrrrr�assertHaskey&s
zPyclbrTest.assertHaskeycCs/||kr+||kr+|j||�ndS)z2 succeed iff a == b or a in ignore or b in ignore N)�assertEqual)r�a�brrrr�assertEqualsOrIgnored-sz PyclbrTest.assertEqualsOrIgnoredNcCs,t|�tdg�B}|dkrCt|t�idg�}ntj|�}dd�}xX|j�D]J\}}||kr�qkn|j|||�t||�}t|tj	�r|j
|ttf�|j
|kr�qkn|j|j
|j�qk|j
|t�|j
|kr&qkndd�|jD�}	dd�|jD�}
y|j|	|
|�Wn"td	|d
tj��YnXg}xB|jj�D]1}||t||�|�r�|j|�q�q�Wg}
xh|jj�D]W}|dd�dkr9|dd�dkr9|
jd
||�q�|
j|�q�WyF|j|
||�|j|j
|j�|j|j|j|�Wqktd	|d
tj��YqkXqkWdd�}x`t|�D]R}t||�}t|ttf�r�|||�r$|j|||�q$q�q�WdS)z� succeed iff pyclbr.readmodule_ex(modulename) corresponds
            to the actual module object, module.  Any identifiers in
            ignore are ignored.   If no module is provided, the appropriate
            module is loaded with __import__.�objectNz<silly>cSs�|j}t|t�rBt||t�s;|j|k	rUdSnt|t�sUdS|j}|jd�r�|jd�r�d|j|f}n||kS)NF�__z_%s%s)	�__dict__�
isinstancer�ClassMethodType�__self__r�__name__�
startswith�endswith)Zoclassr�nameZ	classdictZobjnamerrr�ismethodAs		z(PyclbrTest.checkModule.<locals>.ismethodcSsg|]}|j�qSr)r')�.0�baserrr�
<listcomp>`s	z*PyclbrTest.checkModule.<locals>.<listcomp>cSs"g|]}t|d|��qS)r*)�getattr)r,r-rrrr.as	zclass=%sr�r"�_cSsBt|t�r|j|jkSt|t�r>|j|jkSdS)NF)r$�type�
__module__r'r�__globals__r#)�item�modulerrr�
defined_in�s
z*PyclbrTest.checkModule.<locals>.defined_in���) r
�
__import__�globals�pyclbr�
readmodule_ex�itemsrr/r$ZFunctionZassertIsInstancerrr3rr6r2�	__bases__�superrrrrr#�keys�append�methodsr r'r*�dirr)rZ
moduleNamer6r�dictr+r*�valueZpy_itemZ
real_basesZpyclbr_basesZ
actualMethods�mZfoundMethodsr7r5rrr�checkModule2sb	
,zPyclbrTest.checkModulecCsD|jd�|jd�|jddd�|jd	dd�dS)
Nr;ZastZdoctestr�TestResults�	_SpoofOut�DocTestCase�
_DocTestSuiteZdifflib�Match)rHrIrJrK)rL)rG)rrrr�	test_easy�s


zPyclbrTest.test_easycCs|jdddg�dS)Nztest.pyclbr_inputrZom)rG)rrrr�test_decorators�szPyclbrTest.test_decoratorscCs|j}|ddd�|ddd�|d�|ddd�|d
dd�|d
�|d�|d�|d�dS)NZrandomr�RandomZcgi�log�pickleZaifc�openfp�_aifc_params�	sre_parse�dump�groupsZpdb�pydoczemail.parserztest.test_pyclbr)rO)zlog)rRrS)zdumpzgroups)rG)r�cmrrr�test_others�s	



zPyclbrTest.test_otherscCs|jttjd�dS)Nzasyncore.foo)ZassertRaises�ImportErrorr;r<)rrrr�test_issue_14798�szPyclbrTest.test_issue_14798)r'r3�__qualname__rrrr rGrMrNrYr[rrrrrs[rcCstt�dS)N)rrrrrr�	test_main�sr]�__main__)�__doc__Ztest.supportrr�typesrrrr;Zunittestrr2�staticmethodZStaticMethodType�classmethodr%rr]r'rrrr�<module>s	�