U
    ¹mœd(  ã                   @   s>   d dl Z d dlZd dlmZmZ d dlmZ G dd„ dƒZdS )é    N)Úread_p2gÚ	write_p2g)Úedges_equalc                   @   s0   e Zd Zedd„ ƒZdd„ Zdd„ Zdd„ Zd	S )
ÚTestP2Gc                 C   sH   t jdd�| _ddddddg}| j |¡ | j d	¡ t  | j¡| _d S )
NÚtest)Úname©ÚaÚb©r
   Úc)r   Úd)r   Úe)r   Úf)r	   r   Úg)ÚnxZGraphÚGÚadd_edges_fromÚadd_nodeÚDiGraphZDG)Úclsr   © r   úZ/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/networkx/readwrite/tests/test_p2g.pyÚsetup_class	   s
    zTestP2G.setup_classc                 C   sj   d}t  |¡}t|ƒ}|jdks$t‚t|ƒdddgks:t‚dd„ | ¡ D ƒ}t| ¡ dd	d
dgƒsft‚d S )Ns   name
3 4
a
1 2
b

c
0 2
r   r	   r
   r   c                 S   s    g | ]\}}t |ƒt |ƒf‘qS r   )Ústr)Ú.0ÚuÚvr   r   r   Ú
<listcomp>    s     z)TestP2G.test_read_p2g.<locals>.<listcomp>)r	   r   r   )r   r	   )r   r   )ÚioÚBytesIOr   r   ÚAssertionErrorÚsortedÚedgesr   )ÚselfÚsZbytesIOr   r#   r   r   r   Útest_read_p2g   s    

zTestP2G.test_read_p2gc                 C   sT   d}t  ¡ }t ¡ }d|_| ddg¡ t||ƒ | d¡ | ¡ }||ksPt	‚d S )Ns   foo
3 2
1
1 
2
2 
3

Úfoo)é   é   )r)   é   r   )
r   r    r   r   r   r   r   ÚseekÚreadr!   )r$   r%   Úfhr   Úrr   r   r   Útest_write_p2g#   s    	

zTestP2G.test_write_p2gc                 C   sZ   t  ¡ }t ¡ }d|_| ddg¡ t||ƒ | d¡ t|ƒ}t	| 
¡ | 
¡ ƒsVt‚d S )Nr'   r   r   r   )r   r    r   r   r   r   r   r+   r   r   r#   r!   )r$   r-   r   ÚHr   r   r   Útest_write_read_p2g6   s    

zTestP2G.test_write_read_p2gN)Ú__name__Ú
__module__Ú__qualname__Úclassmethodr   r&   r/   r1   r   r   r   r   r      s
   
r   )	r   Znetworkxr   Znetworkx.readwrite.p2gr   r   Znetworkx.utilsr   r   r   r   r   r   Ú<module>   s   