Your IP : 216.73.216.213


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



��Yf(�@s�dZddlZddlmZmZmZddlZddlmZm	Z
eedd���Z
eedd���ZGdd	�d	e�Zed
kr�e
�dS)z/
   Test cases for pyclbr.py
   Nick Mathewson
�N)�FunctionType�
MethodType�BuiltinFunctionType)�TestCase�maincCsdS)N�rrr�5/opt/alt/python35/lib64/python3.5/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)�
PyclbrTestcCsat|�t|�At|�}|r]td|||fdtj�|jd|j��dS)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.assertListEqcCsS||krdSt||�s,td|�|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.assertHasattrcCsF||krdS||kr2td|dtj�|j||�dS)z* succeed iff key in obj or key in ignore. Nz***r)rrrZassertIn)rr�keyrrrr�assertHaskey%s
zPyclbrTest.assertHaskeycCs,||kr(||kr(|j||�dS)z2 succeed iff a == b or a in ignore or b in ignore N)�assertEqual)r�a�brrrr�assertEqualsOrIgnored,sz PyclbrTest.assertEqualsOrIgnoredNcCst|�tdg�B}|dkr@t|t�idg�}tj|�}dd�}xL|j�D]>\}}||kr�qh|j|||�t||�}t|tj	�r�|j
|ttf�|j
|kr�qh|j|j
|j�qh|j
|t�|j
|krqhdd�|jD�}	dd�|jD�}
y|j|	|
|�Wn"td	|d
tj��YnXg}x?|jj�D].}||t||�|�r�|j|�q�Wg}
xh|jj�D]W}|dd�dkr*|dd�dkr*|
jd
||�q�|
j|�q�WyF|j|
||�|j|j
|j�|j|j|j|�Wqhtd	|d
tj��YqhXqhWdd�}xZt|�D]L}t||�}t|ttf�r�|||�r�|j|||�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}||kS)NF�__z_%s%s)	�__dict__�
isinstancer�ClassMethodType�__self__r�__name__�
startswith�endswith)Zoclassr�nameZ	classdictZobjnamerrr�ismethod@s		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.`s	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�appendZmethodsr r'r*�dirr)rZ
moduleNamer6r�dictr+r*�valueZpy_itemZ
real_basesZpyclbr_basesZ
actualMethods�mZfoundMethodsr7r5rrr�checkModule1sb	
,zPyclbrTest.checkModulecCsD|jd�|jd�|jddd�|jd	dd�dS)
Nr;ZastZdoctestr�TestResults�	_SpoofOut�DocTestCase�
_DocTestSuiteZdifflib�Match)rGrHrIrJ)rK)rF)rrrr�	test_easy�s


zPyclbrTest.test_easycCs|jdddg�dS)Nztest.pyclbr_inputrZom)rF)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)rN)rO)rQrR)rTrU)rF)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 rFrLrMrXrZrrrrrs[r�__main__)�__doc__r�typesrrrr;ZunittestrrZ
unittest_mainr2�staticmethodZStaticMethodType�classmethodr%rr'rrrr�<module>s	�