§
    bŠtjX  ã                   ó<   — d Z ddlZddlmZmZ  G d„ d¦  «        ZdS )z
Pajek tests
é    N)Úedges_equalÚnodes_equalc                   óT   — e Zd Zed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
S )Ú	TestPajekc                 óÒ   — d| _         t          j        ¦   «         | _        | j                             g d¢¦  «         | j                             g d¢¦  «         d| j        j        d<   d S )Na`  *network Tralala
*vertices 4
   1 "A1"         0.0938 0.0896   ellipse x_fact 1 y_fact 1
   2 "Bb"         0.8188 0.2458   ellipse x_fact 1 y_fact 1
   3 "C"          0.3688 0.7792   ellipse x_fact 1
   4 "D2"         0.9583 0.8563   ellipse x_fact 1
*arcs
1 1 1  h2 0 w 3 c Blue s 3 a1 -130 k1 0.6 a2 -130 k2 0.6 ap 0.5 l "Bezier loop" lc BlueViolet fos 20 lr 58 lp 0.3 la 360
2 1 1  h2 0 a1 120 k1 1.3 a2 -120 k2 0.3 ap 25 l "Bezier arc" lphi 270 la 180 lr 19 lp 0.5
1 2 1  h2 0 a1 40 k1 2.8 a2 30 k2 0.8 ap 25 l "Bezier arc" lphi 90 la 0 lp 0.65
4 2 -1  h2 0 w 1 k1 -2 k2 250 ap 25 l "Circular arc" c Red lc OrangeRed
3 4 1  p Dashed h2 0 w 2 c OliveGreen ap 25 l "Straight arc" lc PineGreen
1 3 1  p Dashed h2 0 w 5 k1 -1 k2 -20 ap 25 l "Oval arc" c Brown lc Black
3 3 -1  h1 6 w 1 h2 12 k1 -2 k2 -15 ap 0.5 l "Circular loop" c Red lc OrangeRed lphi 270 la 180©ÚA1ÚBbÚCÚD2©)r	   r	   )r	   r
   )r	   r   )r
   r	   )r   r   )r   r   )r   r
   ÚTralalaÚname)ÚdataÚnxÚMultiDiGraphÚGÚadd_nodes_fromÚadd_edges_fromÚgraph)Úclss    úa/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/networkx/readwrite/tests/test_pajek.pyÚsetup_classzTestPajek.setup_class
   sw   € ð GˆŒÝ”Ñ!Ô!ˆŒØŒ×ÒÐ4Ð4Ð4Ñ5Ô5Ð5ØŒ×Òðð ð ñ
	
ô 
	
ð 
	
ð (ˆŒŒ�FÑÐÐó    c                 óÐ   — d}t          j        |¦  «        }t          |                     ¦   «         ¦  «        ddgk    sJ ‚t	          |                     ¦   «         ddg¦  «        sJ ‚d S )Nz&*Vertices 2
1 "1"
2 "2"
*Edges
1 2
2 1Ú1Ú2)r   r   )r   Úparse_pajekÚsortedÚnodesr   Úedges©Úselfr   r   s      r   Útest_parse_pajek_simplez!TestPajek.test_parse_pajek_simple   sd   € à@ˆÝŒN˜4Ñ Ô ˆÝ�a—g’g‘i”iÑ Ô  S¨# JÒ.Ð.Ð.Ð.Ý˜1Ÿ7š7™9œ9 z°:Ð&>Ñ?Ô?Ð?Ð?Ð?Ð?Ð?r   c                 óÚ   — t          j        | j        ¦  «        }t          |                     ¦   «         ¦  «        g d¢k    sJ ‚t          |                     ¦   «         g d¢d¬¦  «        sJ ‚d S )Nr   r   T©Údirected)r   r   r   r   r    r   r!   )r#   r   s     r   Útest_parse_pajekzTestPajek.test_parse_pajek$   s…   € ÝŒN˜4œ9Ñ%Ô%ˆÝ�a—g’g‘i”iÑ Ô Ð$;Ð$;Ð$;Ò;Ð;Ð;Ð;ÝØ�GŠG‰IŒIðð ð ð ð
ñ 
ô 
ð 	
ð 	
ð 
ð 	
ð 	
r   c                 óþ   — d}t          j        |¦  «        }t          |                     ¦   «         ¦  «        h d£k    sJ ‚|j        d         ddik    sJ ‚t	          |                     ¦   «         g d¢d¬¦  «        sJ ‚d S )	Nz@*Vertices 3
1 "one"
2 "two"
3 "three"
*Matrix
1 1 0
0 1 0
0 1 0
>   ÚoneÚtwoÚthreer+   Úidr   ))r*   r*   )r*   r+   )r+   r+   )r,   r+   Tr&   )r   r   Úsetr    r   r!   r"   s      r   Útest_parse_pajek_matzTestPajek.test_parse_pajek_mat5   s™   € Ø]ˆÝŒN˜4Ñ Ô ˆÝ�1—7’7‘9”9‰~Œ~Ð!8Ð!8Ð!8Ò8Ð8Ð8Ð8ØŒw�uŒ~ $¨ Ò,Ð,Ð,Ð,ÝØ�GŠG‰IŒIØNÐNÐNØð
ñ 
ô 
ð 	
ð 	
ð 
ð 	
ð 	
r   c                 ó„  — t          j        | j        ¦  «        }|dz  }t          |d¦  «        5 }|                     | j                             d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        |¦  «        }t          |                     ¦   «         ¦  «        t          |                     ¦   «         ¦  «        k    sJ ‚t          | 
                    ¦   «         | 
                    ¦   «         d¬¦  «        sJ ‚| j        j        |j        k    sJ ‚|D ] }|j        |         |j        |         k    sJ ‚Œ!d S )Nztest.pjkÚwbzUTF-8Tr&   )r   r   r   ÚopenÚwriteÚencodeÚ
read_pajekr   r    r   r!   r   r   )r#   Útmp_pathr   ÚfnameÚfhÚGinÚns          r   Útest_read_pajekzTestPajek.test_read_pajek@   s^  € ÝŒN˜4œ9Ñ%Ô%ˆà˜:Ñ%ˆÝ�%˜ÑÔð 	0 "Ø�HŠH�T”Y×%Ò% gÑ.Ô.Ñ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0õ Œm˜EÑ"Ô"ˆÝ�a—g’g‘i”iÑ Ô ¥F¨3¯9ª9©;¬;Ñ$7Ô$7Ò7Ð7Ð7Ð7Ý˜1Ÿ7š7™9œ9 c§i¢i¡k¤k¸DÐAÑAÔAÐAÐAÐAØŒvŒ|˜sœyÒ(Ð(Ð(Ð(Øð 	.ð 	.ˆAØ”7˜1”: ¤¨1¤Ò-Ð-Ð-Ð-Ð-ð	.ð 	.s   ¯.A)Á)A-Á0A-c                 ó¬  — dd l }t          j        | j        ¦  «        }|                     ¦   «         }t          j        ||¦  «         |                     d¦  «         t          j        |¦  «        }t          t          |¦  «        t          |¦  «        ¦  «        sJ ‚t          |                     ¦   «         |                     ¦   «         d¬¦  «        sJ ‚d S )Nr   Tr&   )Úior   r   r   ÚBytesIOÚwrite_pajekÚseekr5   r   Úlistr   r!   )r#   r=   r   r8   ÚHs        r   Útest_write_pajekzTestPajek.test_write_pajekN   s¬   € Øˆ	ˆ	ˆ	åŒN˜4œ9Ñ%Ô%ˆØ�ZŠZ‰\Œ\ˆÝ
Œ�q˜"ÑÔÐØ
�Š�‰
Œ
ˆ
ÝŒM˜"ÑÔˆÝ�4 ™7œ7¥D¨¡G¤GÑ,Ô,Ð,Ð,Ð,Ý˜1Ÿ7š7™9œ9 a§g¢g¡i¤i¸$Ð?Ñ?Ô?Ð?Ð?Ð?Ð?Ð?r   c                 óÔ  — dd l }t          j        ¦   «         }|                     ¦   «         }|                     dd¬¦  «         |                     dd¬¦  «         |                     ddd¬¦  «         |                     ddd¬¦  «         dd l}|                     d¬	¦  «        5 }t          j        ||¦  «         t          |¦  «        d
k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr   é   )Úint_attré   z  )Ú
empty_attré   T)Úrecordé   )
r=   r   ÚGraphr>   Úadd_nodeÚadd_edgeÚwarningsÚcatch_warningsr?   Úlen)r#   r=   r   r8   rO   Úws         r   Útest_ignored_attributez TestPajek.test_ignored_attribute[   s'  € Øˆ	ˆ	ˆ	åŒH‰JŒJˆØ�ZŠZ‰\Œ\ˆØ	�
Š
�1˜qˆ
Ñ!Ô!Ð!Ø	�
Š
�1 ˆ
Ñ&Ô&Ð&Ø	�
Š
�1�a !ˆ
Ñ$Ô$Ð$Ø	�
Š
�1�a Dˆ
Ñ)Ô)Ð)àˆˆˆà×$Ò$¨DÐ$Ñ1Ô1ð 	°QÝŒN˜1˜bÑ!Ô!Ð!Ý�q‘6”6˜Q’;�;�;�;�;ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Â$+CÃC!Ã$C!c                 ó¦   — d}| j                              d¦  «        dd …         }|d                     |¦  «        z   }t          j        |¦  «        }d S )Nz	*network
ú
rE   )r   ÚsplitÚjoinr   r   )r#   ÚlineÚother_linesr   r   s        r   Útest_nonamezTestPajek.test_nonamek   sN   € ð ˆØ”i—o’o dÑ+Ô+¨A¨B¨BÔ/ˆØ�d—i’i Ñ,Ô,Ñ,ˆÝŒN˜4Ñ Ô ˆˆˆr   c                 óà  — dd l }t          j        ¦   «         }t          d¦  «        t          d¦  «        z   t          d¦  «        z   }t          d¦  «        t          d¦  «        z   t          d¦  «        z   }|                     |d|¬	¦  «         |                     ¦   «         }t          j        ||¦  «         |                     d¦  «         t          j        |¦  «        }t          t          |¦  «        t          |¦  «        ¦  «        sJ ‚t          t          |                     ¦   «         ¦  «        t          |                     ¦   «         ¦  «        ¦  «        sJ ‚|j        |j        k    sJ ‚d S )
Nr   i(	  é{   i�  i§  i  iD  Ú	Radiohead)Úfoo)r=   r   rL   ÚchrrN   r>   r?   r@   r5   r   rA   r   r!   r   )r#   r=   r   Úname1Úname2r8   rB   s          r   Útest_unicodezTestPajek.test_unicodes   s  € Øˆ	ˆ	ˆ	åŒH‰JŒJˆÝ�D‘	”	�C ™HœHÑ$¥s¨4¡y¤yÑ0ˆÝ�D‘	”	�C ™IœIÑ%­¨C©¬Ñ0ˆØ	�
Š
�5˜+¨5ˆ
Ñ1Ô1Ð1Ø�ZŠZ‰\Œ\ˆÝ
Œ�q˜"ÑÔÐØ
�Š�‰
Œ
ˆ
ÝŒM˜"ÑÔˆÝ�4 ™7œ7¥D¨¡G¤GÑ,Ô,Ð,Ð,Ð,Ý�4 §¢¡	¤	™?œ?­D°·²±´©O¬OÑ<Ô<Ð<Ð<Ð<ØŒw˜!œ'Ò!Ð!Ð!Ð!Ð!Ð!r   N)Ú__name__Ú
__module__Ú__qualname__Úclassmethodr   r$   r(   r/   r;   rC   rS   rZ   rb   © r   r   r   r   	   s«   € € € € € Øð(ð (ñ „[ð(ð$@ð @ð @ð
ð 
ð 
ð"	
ð 	
ð 	
ð.ð .ð .ð	@ð 	@ð 	@ðð ð ð !ð !ð !ð"ð "ð "ð "ð "r   r   )Ú__doc__Únetworkxr   Únetworkx.utilsr   r   r   rg   r   r   ú<module>rk      sq   ððð ð Ð Ð Ð Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3ðw"ð w"ð w"ð w"ð w"ñ w"ô w"ð w"ð w"ð w"r   