HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.7/lib2to3/tests/__pycache__/test_pytree.cpython-37.pyc
B

 ��g�?�@sjdZddlmZddlmZyeWnek
r@dd�ZYnXGdd�dej�ZGd	d
�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.
�)�support�)�pytreecCst|�}|��|S)N)�list�sort)Zlst�l�r�5/usr/local/lib/python3.7/lib2to3/tests/test_pytree.py�sortedsr
c@seZdZdZdd�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|�ttj�dS)N)�assertRaises�AssertionErrorrZBase)�selfrrr	�test_instantiate_baseszTestNodes.test_instantiate_basecCs,t�dd�}|�|jd�|�|jd�dS)N�d�foo)r�Leaf�assertEqual�type�value)r�l1rrr	�	test_leaf"szTestNodes.test_leafcCs t�dd�}|�t|�d�dS)NrrzLeaf(100, 'foo'))rrr�repr)rrrrr	�test_leaf_repr'szTestNodes.test_leaf_reprcCs@t�dd�}|�t|�d�tjdddd�}|�t|�d�dS)Nrr)� )�
r)�contextz foo)rrr�str)rr�l2rrr	�
test_leaf_str+szTestNodes.test_leaf_strcCs&t�dd�}d|_|�t|�d�dS)N��Zfoo_Zfoo_5)rr�prefixrr)rrrrr	�test_leaf_str_numeric_value1sz%TestNodes.test_leaf_str_numeric_valuecCs\t�dd�}tjdddd�}|�||�t�dd�}t�dd�}|�||�|�||�dS)Nrr)r)rr)r�e�bar)rrr�assertNotEqual)rrr�l3�l4rrr	�test_leaf_equality8szTestNodes.test_leaf_equalitycCsJt�dd�}|�|jd�|�|j�d|_|�|jd�|�|j�dS)Nrr�z  ##

)rrrr"�assertFalse�was_changed�
assertTrue)rrrrr	�test_leaf_prefixAszTestNodes.test_leaf_prefixcCsLt�dd�}t�dd�}t�d||g�}|�|jd�|�|j||g�dS)Nrr��r%i�)rr�Noderr�children)rrr�n1rrr	�	test_nodeIs
zTestNodes.test_nodecCsPt�dd�}tjdddd�}t�d||g�}|�t|�dt|�t|�f�dS)Nrrr%)r)rr)ri�zNode(1000, [%s, %s]))rrr0rr)rrrr2rrr	�test_node_reprPs

zTestNodes.test_node_reprcCs@t�dd�}tjdddd�}t�d||g�}|�t|�d�dS)Nrrr%)r)rr)ri�zfoo bar)rrr0rr)rrrr2rrr	�
test_node_strWszTestNodes.test_node_strcCs\t�dd�}|�|jd�t�d|g�}|�|jd�d|_|�|jd�|�|jd�dS)Nrrr*i�r)rrrr"r0)rrr2rrr	�test_node_prefix]szTestNodes.test_node_prefixcCs�tjdddd�}tjdddd�}t�d||g�}|�|��|j�|�|��d�|�|��d�tjddd	d�}t�d||g�}|�|��|j�|�|��d�|�|��d�dS)
Nrr�a)r"r%�bi�r*�c)rrr0rZ
get_suffixr")rrrr2r'�n2rrr	�test_get_suffixfszTestNodes.test_get_suffixcCsDt�dd�}tjdgdd�}|�||�t�dd�}|�||�dS)Ni�r)r)rr)ri�)rr0rr&)rr2r:�n3rrr	�test_node_equalityvs
zTestNodes.test_node_equalitycCsjt�dd�}t�dd�}t�d|g�}t�d|g�}|�||�t�dd�}t�d|g�}|�||�dS)Nrri�r%)rrr0rr&)rrrr2r:r'r<rrr	�test_node_recursive_equality}sz&TestNodes.test_node_recursive_equalitycCs�t�dd�}t�dd�}t�dd�}t�d|||g�}|�|j|||g�|�|jt�|�|j�t�dd�}|�	|�|�|j|||g�|�|jt�|�
|j�dS)Nrr�+r%i��-)rrr0rr1�assertIsInstancerr+r,�replacer-)rrrr'r2Zl2newrrr	�test_replace�s
zTestNodes.test_replacecCsvt�dd�}t�dd�}t�dd�}t�d|||g�}|�t�dd�t�dd�g�|�t|�d�|�|jt�dS)Nrrr?r%i��*zfoo**bar)	rrr0rBrrrAr1r)rrrr'r2rrr	�test_replace_with_list�sz TestNodes.test_replace_with_listcCspt�dd�}t�dd�}t�dd�}t�d||g�}t�d|g�}t�d||g�}|�t|���|||g�dS)Nrrr%�fooeyi�)rrr0rr�leaves)rrrr'r:r<r2rrr	�test_leaves�szTestNodes.test_leavescCsxt�dd�}t�dd�}t�d||g�}t�dg�}t�d||g�}|�|��d�|�|��d�|�|��d�dS)Nrrr%i�r rr)rrr0r�depth)rrrr:r<r2rrr	�
test_depth�szTestNodes.test_depthcCsft�dd�}t�dd�}t�dd�}t�d||g�}t�d||g�}|�t|���|||||g�dS)Nrrr%rFi�)rrr0rrZ
post_order)rrrr'�c1r2rrr	�test_post_order�szTestNodes.test_post_ordercCsft�dd�}t�dd�}t�dd�}t�d||g�}t�d||g�}|�t|���|||||g�dS)Nrrr%rFi�)rrr0rrZ	pre_order)rrrr'rKr2rrr	�test_pre_order�szTestNodes.test_pre_ordercCs�t�dd�}|�|j�|��|�|j�t�dd�}t�d|g�}|�|j�|��|�|j�t�dd�}t�dd�}t�dd�}t�d|||g�}t�d|g�}|�|j�|�|j�|�|j�|��|�|j�|�|j�|�|j�dS)Nr�fi�rr?r%)rrr+r,Zchangedr-r0)rrr2rr'r:rrr	�test_changed�s*zTestNodes.test_changedcCsDx>dD]6}tjdd|d�}|�t|�|d�|�|j|�qWdS)N)�xyz_r*rr)r")rrr-rrr")rr"rrrr	�test_leaf_constructor_prefix�s
z&TestNodes.test_leaf_constructor_prefixcCs�xzdD]r}t�dd�}tjdddd�}tjd||g|d�}|�t|�|d�|�|j|�|�|j|�|�|jd�qWdS)	N)rPr*rrr�_)r"i�Zself_foo)rrr0r-rrr")rr"rrr2rrr	�test_node_constructor_prefix�s
z&TestNodes.test_node_constructor_prefixcCs
t�dd�}t�dd�}t�d||g�}t�d|g�}|�|��d�|�|jg�|�|j|�|�|jd�|�|jd�|�|j�|�	|j�|�|��d�|�|��d�|�|jg�|�|jd�|�|jd�|�|jd�|�	|j�|�	|j�dS)Nrri�rr)
rrr0r�remover1�parentr+r,r-)rrrr2r:rrr	�test_remove�s&zTestNodes.test_removecCsHt�dg�}|��|�|jd�t�dd�}|��|�|jd�dS)Ni�rr)rr0rTrrUr)rr2rrrr	�test_remove_parentlesssz TestNodes.test_remove_parentlesscCs�t�dd�}t�d|g�}t�dd�}|�d|�|�|jd�|�|j|�|�|j|g�t�d|g�}|�d|�|�|jd�|�|j|�|�|jd�|�|j|g�|�t|jd|�|�t	|jdt
�dS)Nrri�r%r�)rrr0Z	set_childrrUr1r�
IndexError�	Exceptionr)rrr2rr:rrr	�test_node_set_childszTestNodes.test_node_set_childcCs�t�dd�}t�d|g�}t�dd�}|�d|�|�|j|�|�|j||g�t�dd�}|�d|�|�|j|||g�|�t|jdt	�dS)Nrri�r%r�abcr )
rrr0Zinsert_childrrUr1rrZr)rrr2rr'rrr	�test_node_insert_child#sz TestNodes.test_node_insert_childcCs�t�dg�}t�dd�}|�|�|�|j|�|�|j|g�t�dd�}|�|�|�|j|�|�|j||g�|�t|jt	�dS)Ni�rrr%)
rr0rZappend_childrrUr1rrZr)rr2rrrrr	�test_node_append_child3s

z TestNodes.test_node_append_childcCsVt�dg�}t�dg�}t�d||g�}|�|j|�|�|jd�|�|jd�dS)Ni�)rr0�assertIs�next_siblingr)rr2r:�p1rrr	�test_node_next_siblingCsz TestNodes.test_node_next_siblingcCsVt�dd�}t�dd�}t�d||g�}|�|j|�|�|jd�|�|jd�dS)Nrr7r8i�)rrr0r_r`r)rrrrarrr	�test_leaf_next_siblingLsz TestNodes.test_leaf_next_siblingcCsVt�dg�}t�dg�}t�d||g�}|�|j|�|�|jd�|�|jd�dS)Ni�)rr0r_�prev_siblingr)rr2r:rarrr	�test_node_prev_siblingUsz TestNodes.test_node_prev_siblingcCsVt�dd�}t�dd�}t�d||g�}|�|j|�|�|jd�|�|jd�dS)Nrr7r8i�)rrr0r_rdr)rrrrarrr	�test_leaf_prev_sibling^sz TestNodes.test_leaf_prev_siblingN)$�__name__�
__module__�__qualname__�__doc__rrrrr#r)r.r3r4r5r6r;r=r>rCrErHrJrLrMrOrQrSrVrWr[r]r^rbrcrerfrrrr	rsB		



				rc@s0eZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)�TestPatternsz&Unit tests for tree matching patterns.c
Cs�t�dd�}t�dd�}t�dd�}t�d||g�}t�d|g�}t�d||g�}tjdddd�}i}|�|j||d��|�|i�|�|j||d��|�|i�|�|j||d��|�|i�|�|j||d��|�|d|i�i}|�|j||d��|�|i�tjd|gdd�}	|�|	j||d��|�|i�|�|	j||d��|�|i�|�|	j||d��|�|||d	��i}|�|	j||d��|�|i�|�|	j||d��|�|i�dS)
Nrrr%i��pl)�name)�results�pn)rorl)	rrr0�LeafPatternr+�matchrr-�NodePattern)
rrrr'r2r:�rootrl�rrorrr	�test_basic_patternsls>z TestPatterns.test_basic_patternscCs�t�dd�}t�dd�}t�dd�}t�d||g�}t�d|g�}t�d||g�}tjdddd�}tjd|gdd�}tj|g||ggdd�}	i}
|�|	�|g|
��|�|
i�|�|	�|g|
��|�|
i�|�	|	�|g|
��|�t
|
���dddg�|�|
d|�|�|
d|�|�|
d|g�|�|
|||gd	��i}
|�	|	�||g|
��|�|
|||gd
��|�|
d|�i}
dS)Nrrr%i�rl)rmro�pw)rlrorv)rlrv)
rrr0rprr�WildcardPatternr+Z	match_seqrr-r
�keysr_)rrrr'r2r:rsrlrorvrtrrr	�
test_wildcard�s2zTestPatterns.test_wildcardc	Cs�t�dd�}t�dd�}t�dd�}t�dd�}t�dd�}t�dd�}||||||g}t�d|�}t�ddd	�}	t�ddd
�}
t�ddd�}t�ddd�}t�ddd
�}
t�ddd�}tj|	|
|g||
g|	|
g||g|
|ggdddd�}|�dd�|�|�D�dddddg�tjd|gdd�}tt�|g|g��}|�t	|�d�|d\}}|�|d�|�t
|d�d�|�|d||||||g�x*dD]"}|�|d|t�d|���q�WdS)Nrr7r8r9�d�erNi��pa�pb�pc�pd�pe�pfrXrv)�min�maxrmcSsg|]}|d�qS)rr)�.0�xrrr	�
<listcomp>�sz6TestPatterns.test_generate_matches.<locals>.<listcomp>�r!r ��pr)rZcontentrmrZabcdef�p)rrr0rprwrZgenerate_matchesrrr�lenr)rZlaZlbZlcZld�leZlfrGrsr|r}r~rr�r�rvr��matchesr9rtrrr	�test_generate_matches�s8
z"TestPatterns.test_generate_matchescCs�t�dt�d�tjdd�t�d�f�}t�dd�}t�dd�}t�dd	�}t�d|||g�}i}|�|�||��|�|d|g�dS)
NiK��args)rm��(r�r��))	rrrrprwrr0r-rqr)r�patternrrr'Znodertrrr	�test_has_key_example�s
z!TestPatterns.test_has_key_exampleN)rgrhrirjruryr�r�rrrr	rkhs
$rkN)
rjr*rZlib2to3rr
�	NameErrorZTestCaserrkrrrr	�<module>
sQ