Your IP : 216.73.216.85


Current Path : /opt/alt/python35/lib64/python3.5/lib2to3/tests/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/lib2to3/tests/__pycache__/test_pytree.cpython-35.pyc



��YfA@�@s�dZddlmZddlZddlZddlmZddlmZye	Wne
k
rvdd�Z	YnXGd	d
�d
ej�ZGdd�dej�Z
dS)
aUnit tests for pytree.py.

NOTE: Please *don't* add doc strings to individual test methods!
In verbose mode, printing of the module, class and method name is much
more helpful than printing of (the first line of) the docstring,
especially when debugging a test.
�)�with_statementN�)�support)�pytreecCst|�}|j�|S)N)�list�sort)Zlst�l�r	�>/opt/alt/python35/lib64/python3.5/lib2to3/tests/test_pytree.py�sorteds
rc@s�eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�Zd:d;�Z d<d=�Z!d>d?�Z"d@dA�Z#dBS)C�	TestNodesz(Unit tests for nodes (Base, Leaf, Node).cCs|jttj�dS)N)�assertRaises�AssertionErrorrZBase)�selfr	r	r
�test_instantiate_base"szTestNodes.test_instantiate_basecCs<tjdd�}|j|jd�|j|jd�dS)N�d�foo)r�Leaf�assertEqual�type�value)r�l1r	r	r
�	test_leaf'szTestNodes.test_leafcCs,tjdd�}|jt|�d�dS)NrrzLeaf(100, 'foo'))rrr�repr)rrr	r	r
�test_leaf_repr,szTestNodes.test_leaf_reprcCsZtjdd�}|jt|�d�tjdddd	�}|jt|�d�dS)
Nrr�context� �
rz foo�rr)rr)rrr�str)rr�l2r	r	r
�
test_leaf_str0szTestNodes.test_leaf_strcCs5tjdd�}d|_|jt|�d�dS)N��Zfoo_Zfoo_5)rr�prefixrr)rrr	r	r
�test_leaf_str_numeric_value6s	z%TestNodes.test_leaf_str_numeric_valuecCs�tjdd�}tjdddd
�}|j||�tjdd�}tjdd�}|j||�|j||�dS)Nrrrrrr�e�bar�rr)rr()rrr�assertNotEqual)rrr �l3�l4r	r	r
�test_leaf_equality=szTestNodes.test_leaf_equalitycCsetjdd�}|j|jd�|j|j�d|_|j|jd�|j|j�dS)Nrr�z  ##

)rrrr$�assertFalse�was_changed�
assertTrue)rrr	r	r
�test_leaf_prefixFs	zTestNodes.test_leaf_prefixcCsltjdd�}tjdd�}tjd||g�}|j|jd�|j|j||g�dS)Nrr��r'i�)rr�Noderr�children)rrr �n1r	r	r
�	test_nodeNs
zTestNodes.test_nodecCsrtjdd�}tjdddd�}tjd||g�}|jt|�d	t|�t|�f�dS)Nrrr'rrrri�zNode(1000, [%s, %s])�rr)rr7)rrr3rr)rrr r5r	r	r
�test_node_reprUs
zTestNodes.test_node_reprcCs\tjdd�}tjdddd�}tjd||g�}|jt|�d	�dS)Nrrr'rrrri�zfoo bar�rr)rr9)rrr3rr)rrr r5r	r	r
�
test_node_str\szTestNodes.test_node_strcCs�tjdd�}|j|jd�tjd|g�}|j|jd�d|_|j|jd�|j|jd�dS)Nrrr-i�r)rrrr$r3)rrr5r	r	r
�test_node_prefixbs	zTestNodes.test_node_prefixcCstjdddd�}tjdddd�}tjd||g�}|j|j�|j�|j|j�d�|j|j�d�tjdddd	�}tjd||g�}|j|j�|j�|j|j�d�|j|j�d�dS)
Nrrr$�ar'�bi�r-�c)rrr3rZ
get_suffixr$)rrr r5r*�n2r	r	r
�test_get_suffixkszTestNodes.test_get_suffixcCs`tjdf�}tjdgdd�}|j||�tjdf�}|j||�dS)	Ni�rrrri��rr)rrA)rr3rr))rr5r?�n3r	r	r
�test_node_equality{s
zTestNodes.test_node_equalitycCs�tjdd�}tjdd�}tjd|g�}tjd|g�}|j||�tjdd�}tjd|g�}|j||�dS)Nrri�r')rrr3rr))rrr r5r?r*rBr	r	r
�test_node_recursive_equality�sz&TestNodes.test_node_recursive_equalitycCs�tjdd�}tjdd�}tjdd�}tjd|||g�}|j|j|||g�|j|jt�|j|j�tjdd�}|j	|�|j|j|||g�|j|jt�|j
|j�dS)Nrr�+r'i��-)rrr3rr4�assertIsInstancerr.r/�replacer0)rrr r*r5Zl2newr	r	r
�test_replace�s
zTestNodes.test_replacecCs�tjdd�}tjdd�}tjdd�}tjd|||g�}|jtjdd�tjdd�g�|jt|�d�|j|jt�dS)NrrrEr'i��*zfoo**bar)	rrr3rHrrrGr4r)rrr r*r5r	r	r
�test_replace_with_list�s+z TestNodes.test_replace_with_listcCs�tjdd�}tjdd�}tjdd�}tjd||g�}tjd|g�}tjd||g�}|jt|j��|||g�dS)Nrrr'�fooeyi�)rrr3rr�leaves)rrr r*r?rBr5r	r	r
�test_leaves�szTestNodes.test_leavescCs�tjdd�}tjdd�}tjd||g�}tjdg�}tjd||g�}|j|j�d�|j|j�d�|j|j�d�dS)Nrrr'i�r"rr)rrr3rZdepth)rrr r?rBr5r	r	r
�
test_depth�szTestNodes.test_depthcCs�tjdd�}tjdd�}tjdd�}tjd||g�}tjd||g�}|jt|j��|||||g�dS)Nrrr'rLi�)rrr3rrZ
post_order)rrr r*�c1r5r	r	r
�test_post_order�szTestNodes.test_post_ordercCs�tjdd�}tjdd�}tjdd�}tjd||g�}tjd||g�}|jt|j��|||||g�dS)Nrrr'rLi�)rrr3rrZ	pre_order)rrr r*rPr5r	r	r
�test_pre_order�szTestNodes.test_pre_ordercCsatjdd�}|j|j�|j�|j|j�tjdd�}tjd|g�}|j|j�|j�|j|j�tjdd�}tjdd�}tjdd�}tjd|||g�}tjd|g�}|j|j�|j|j�|j|j�|j�|j|j�|j|j�|j|j�dS)Nr�fi�rrEr')rrr.r/Zchangedr0r3)rrr5r r*r?r	r	r
�test_changed�s*


zTestNodes.test_changedcCsZxSdD]K}tjddd|�}|jt|�|d�|j|j|�qWdS)N�xyz_r-rrr$)rUr-)rrr0rrr$)rr$rr	r	r
�test_leaf_constructor_prefix�s
z&TestNodes.test_leaf_constructor_prefixcCs�x�d
D]�}tjdd�}tjdddd�}tjd||gd|�}|jt|�|d	�|j|j|�|j|j|�|j|jd�qWdS)NrUr-rrrr$�_i�Zself_foo)rUr-)rrr3r0rrr$)rr$rr r5r	r	r
�test_node_constructor_prefix�s
z&TestNodes.test_node_constructor_prefixcCsotjdd�}tjdd�}tjd||g�}tjd|g�}|j|j�d�|j|jg�|j|j|�|j|jd�|j|jd�|j|j�|j	|j�|j|j�d�|j|j�d�|j|jg�|j|jd�|j|jd�|j|jd�|j	|j�|j	|j�dS)Nrri�rr)
rrr3r�remover4�parentr.r/r0)rrr r5r?r	r	r
�test_remove�s&zTestNodes.test_removecCsbtjdg�}|j�|j|jd�tjdd�}|j�|j|jd�dS)Ni�rr)rr3rYrrZr)rr5rr	r	r
�test_remove_parentless
s

z TestNodes.test_remove_parentlesscCs/tjdd�}tjd|g�}tjdd�}|jd|�|j|jd�|j|j|�|j|j|g�tjd|g�}|jd|�|j|jd�|j|j|�|j|jd�|j|j|g�|jt|jd|�|jt	|jdt
�dS)Nrri�r'r�)rrr3Z	set_childrrZr4r
�
IndexError�	Exceptionr)rrr5r r?r	r	r
�test_node_set_childszTestNodes.test_node_set_childcCs�tjdd�}tjd|g�}tjdd�}|jd|�|j|j|�|j|j||g�tjdd�}|jd|�|j|j|||g�|jt|jdt	�dS)Nrri�r'r�abcr")
rrr3Zinsert_childrrZr4r
r_r)rrr5r r*r	r	r
�test_node_insert_child(sz TestNodes.test_node_insert_childcCs�tjdg�}tjdd�}|j|�|j|j|�|j|j|g�tjdd�}|j|�|j|j|�|j|j||g�|jt|jt	�dS)Ni�rrr')
rr3rZappend_childrrZr4r
r_r)rr5rr r	r	r
�test_node_append_child8s

z TestNodes.test_node_append_childcCsytjdg�}tjdg�}tjd||g�}|j|j|�|j|jd�|j|jd�dS)Ni�)rr3�assertIs�next_siblingr)rr5r?�p1r	r	r
�test_node_next_siblingHsz TestNodes.test_node_next_siblingcCsytjdd�}tjdd�}tjd||g�}|j|j|�|j|jd�|j|jd�dS)Nrr<r=i�)rrr3rdrer)rrr rfr	r	r
�test_leaf_next_siblingQsz TestNodes.test_leaf_next_siblingcCsytjdg�}tjdg�}tjd||g�}|j|j|�|j|jd�|j|jd�dS)Ni�)rr3rd�prev_siblingr)rr5r?rfr	r	r
�test_node_prev_siblingZsz TestNodes.test_node_prev_siblingcCsytjdd�}tjdd�}tjd||g�}|j|j|�|j|jd�|j|jd�dS)Nrr<r=i�)rrr3rdrir)rrr rfr	r	r
�test_leaf_prev_siblingcsz TestNodes.test_leaf_prev_siblingN)$�__name__�
__module__�__qualname__�__doc__rrrr!r%r,r1r6r8r:r;r@rCrDrIrKrNrOrQrRrTrVrXr[r\r`rbrcrgrhrjrkr	r	r	r
rsB		



				rc@sFeZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)�TestPatternsz&Unit tests for tree matching patterns.c
Cs�tjdd�}tjdd�}tjdd�}tjd||g�}tjd|g�}tjd||g�}tjdddd�}i}|j|j|d|��|j|i�|j|j|d|��|j|i�|j|j|d|��|j|i�|j|j|d|��|j|d|i�i}|j|j|d|��|j|i�tjd|gdd�}	|j|	j|d|��|j|i�|j|	j|d|��|j|i�|j|	j|d|��|j|d|d|i�i}|j|	j|d|��|j|i�|j|	j|d|��|j|i�dS)	Nrrr'i��name�plZresults�pn)	rrr3�LeafPatternr.�matchrr0�NodePattern)
rrr r*r5r?�rootrr�rrsr	r	r
�test_basic_patternsqs>z TestPatterns.test_basic_patternscCs:tjdd�}tjdd�}tjdd�}tjd||g�}tjd|g�}tjd||g�}tjdddd�}tjd|gdd�}tj|g||ggdd�}	i}
|j|	j|g|
��|j|
i�|j|	j|g|
��|j|
i�|j	|	j|g|
��|jt
|
j��dddg�|j|
d|�|j|
d|�|j|
d|g�|j|
d|d|d|gi�i}
|j	|	j||g|
��|j|
d|d||gi�|j|
d|�i}
dS)	Nrrr'i�rqrrrs�pw)
rrr3rtrv�WildcardPatternr.Z	match_seqrr0r�keysrd)rrr r*r5r?rwrrrsrzrxr	r	r
�
test_wildcard�s2$%%"zTestPatterns.test_wildcardcCs�tjdd�}tjdd�}tjdd�}tjdd�}tjdd�}tjdd�}||||||g}tjd|�}tjddd	�}	tjddd
�}
tjddd�}tjddd�}tjddd
�}
tjddd�}tj|	|
|g||
g|	|
g||g|
|ggdddddd�}|jdd�|j|�D�dddddg�tjddd|gdd�}ttj|g|g��}|jt	|�d�|d\}}|j|d�|jt
|d�d�|j|d||||||g�x2dD]*}|j|d|tjd|��qVWdS) Nrr<r=r>�d�erSi��pa�pb�pc�pd�pe�pf�min�maxr]rqrzcSsg|]}|d�qS)rr	)�.0�xr	r	r
�
<listcomp>�s	z6TestPatterns.test_generate_matches.<locals>.<listcomp>�r#r"�rZcontent�prrZabcdef�p)rrr3rtr{rZgenerate_matchesrvr�lenr)rZlaZlbZlcZld�leZlfrMrwr�r�r�r�r�r�rzr�Zmatchesr>rxr	r	r
�test_generate_matches�s8!!&
z"TestPatterns.test_generate_matchescCs�tjdtjd�tjdd�tjd�f�}tjdd�}tjdd�}tjdd	�}tjd|||g�}i}|j|j||��|j|d|g�dS)
NiK�rq�args��(r�r��))	rrvrtr{rr3r0rur)r�patternrr r*Znoderxr	r	r
�test_has_key_example�s	z!TestPatterns.test_has_key_exampleN)rlrmrnroryr}r�r�r	r	r	r
rpms
$rp)roZ
__future__r�sys�warningsr-rZlib2to3rr�	NameErrorZTestCaserrpr	r	r	r
�<module>
s
�P