U
    9%eY
                     @   s,   d dl mZ d dlmZ dd Zdd ZdS )    Prufer)raisesc                  C   s  t ddgddgddgddggdjdks,tt ddgddgddgddggjdksVtt ddgddgddgddgg} | jdkst| jdkst| jdddgkstt ddgddgddgddgddgg} | jdkst| jdkst| jddgddgddgddgddggkst| jddddgks.tt ddddgdddgdddgddgddgddgddgddgddggd	fkstt dgd jt dgd j  krd
ksn tdddddddg}dd |D }t |j|ksttt t	|jt|kstt
tdd  t
tdd  t t ddgddg jddgksPtt
tdd  t
tdd  t
tdd  t ddgddgddgg} |  }|jddgddgddggkst|jdkstd S )Nr                  i        i  )r   r   )r   r	   )r   r   )r   r   )r   r
   )r   r   )r   r   c                 S   s   g | ]}t |qS  )list).0tr   r   d/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/sympy/combinatorics/tests/test_prufer.py
<listcomp>   s     ztest_prufer.<locals>.<listcomp>c                   S   s   t ddgddggS )Nr   r   r   r   r   r   r   r   r   <lambda>       ztest_prufer.<locals>.<lambda>c                   S   s   t ddgddggS )Nr   r   r   r   r   r   r   r   r       r   c                   S   s   t ddgddgS )Nr   r   r   r   edgesr   r   r   r   r   "   s    c                   S   s   t ddgddgS )Nr   r   r	   r
   r   r   r   r   r   r   $   r   c                   S   s
   t g gS )Nr   r   r   r   r   r   %   r   )r   ZnodesAssertionErrorrankprufer_repr	tree_reprr   sizesortedsetr   
ValueErrornext)atreeZ
tree_listsbr   r   r   test_prufer   s:    ,* &. *
6 ("r"   c                  C   s   dd } | ddggg  | dddggdg | dddggdg | dddggdg | dddgddggddg | ddddggddg | dddgddggddg | ddddggddg | ddddggddg | ddddggddg | ddddggddg | ddddggddg | ddddggddg | dddgddggddg | ddddggddg | dddgddggddg | ddddggddg | ddddggddg | ddddggddg | ddddgdddd	gdd
ggddddddg d S )Nc                 S   sp   t j|  \}}t ||} t| j}dd |D }| j|ks>ttt |j|ksTtt | j|j|ksltd S )Nc                 S   s   g | ]}|d  qS )r   r   )r   ir   r   r   r   2   s     z1test_round_trip.<locals>.doit.<locals>.<listcomp>)r   r   r   r   r   r   Zunrankr   )r   r!   enr   r   r   r   doit.   s    

ztest_round_trip.<locals>.doitr   r   r   r   r
   r	      r   r   )r&   r   r   r   test_round_trip-   s*    	r(   N)Zsympy.combinatorics.pruferr   Zsympy.testing.pytestr   r"   r(   r   r   r   r   <module>   s   (