Ë
    D^(h¤  ã                   óX   — d dl mZ d dlZd dlZd dlmZmZ  G d„ d«      Z G d„ d«      Z	y)é    )ÚBytesION)Úedges_equalÚnodes_equalc                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚTestSparseGraph6c                 ó¼   — d}t        j                  |«      }t        t        |j	                  «       «      g d¢«      sJ ‚t        |j                  «       g d¢«      sJ ‚y )Nó   :Q___eDcdFcDeFcE`GaJ`IaHbKNbLM©r   é   é   é   é   é   é   é   é   é	   é
   é   é   é   é   é   é   é   ))r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )ÚnxÚfrom_sparse6_bytesr   ÚsortedÚnodesr   Úedges)ÚselfÚdataÚGs      úc/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/networkx/readwrite/tests/test_sparse6.pyÚtest_from_sparse6_bytesz(TestSparseGraph6.test_from_sparse6_bytes
   s\   € Ø0ˆÜ×!Ñ! $Ó'ˆÜÜ�1—7‘7“9ÓÚJô
ð 	
ð 
ô Ø�G‰G‹Iòô
ð 	
ñ 
ó    c                 óØ   — d}t        j                  |«      }t        |«      t         j                  k(  sJ ‚d}t        j                  |«      }t        |«      t         j                  k(  sJ ‚y )Ns   :Ans   :Ab)r   r   ÚtypeÚGraphÚ
MultiGraph)r!   Ú
graph_datar#   Úmultigraph_dataÚMs        r$   Ú test_from_bytes_multigraph_graphz1TestSparseGraph6.test_from_bytes_multigraph_graph2   sX   € Øˆ
Ü×!Ñ! *Ó-ˆÜ�A‹wœ"Ÿ(™(Ò"Ð"Ð"Ø ˆÜ×!Ñ! /Ó2ˆÜ�A‹wœ"Ÿ-™-Ò'Ð'Ñ'r&   c                 ó  — d}t        j                  |«      }t        |«      }t        j                  |«      }t	        |j                  «       |j                  «       «      sJ ‚t        |j                  «       |j                  «       «      sJ ‚y )Nr	   )r   r   r   Úread_sparse6r   r   r   r    )r!   r"   r#   ÚfhÚGins        r$   Útest_read_sparse6z"TestSparseGraph6.test_read_sparse6:   sf   € Ø0ˆÜ×!Ñ! $Ó'ˆÜ�T‹]ˆÜ�o‰o˜bÓ!ˆÜ˜1Ÿ7™7›9 c§i¡i£kÔ2Ð2Ð2Ü˜1Ÿ7™7›9 c§i¡i£kÔ2Ð2Ñ2r&   c                 ó²   — d}t        |«      }t        j                  |«      }t        |«      dk(  sJ ‚|D ]   }t	        |j                  «       g d¢«      rŒ J ‚ y )Ns>   :Q___eDcdFcDeFcE`GaJ`IaHbKNbLM
:Q___dCfDEdcEgcbEGbFIaJ`JaHN`IMr   r
   )r   r   r0   Úlenr   r   )r!   r"   r1   Úglistr#   s        r$   Útest_read_many_graph6z&TestSparseGraph6.test_read_many_graph6B   s[   € àUˆÜ�T‹]ˆÜ—‘ Ó#ˆÜ�5‹z˜QŠÐˆØò 	ˆAÜØ—‘“	ÚNõð ð ñ	r&   N)Ú__name__Ú
__module__Ú__qualname__r%   r.   r3   r7   © r&   r$   r   r   	   s   „ ò&
òP(ò3ó
r&   r   c                   óX   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zy)ÚTestWriteSparse6zˆUnit tests for writing graphs in the sparse6 format.

    Most of the test cases were checked against the sparse6 encoder in Sage.

    c                 ó–   — t        j                  «       }t        «       }t        j                  ||«       |j	                  «       dk(  sJ ‚y )Nó   >>sparse6<<:?
)r   Ú
null_graphr   Úwrite_sparse6Úgetvalue©r!   r#   Úresults      r$   Útest_null_graphz TestWriteSparse6.test_null_graphV   s:   € Ü�M‰M‹OˆÜ“ˆÜ
×Ñ˜˜FÔ#Ø�‰Ó Ð$6Ò6Ð6Ñ6r&   c                 ó–   — t        j                  «       }t        «       }t        j                  ||«       |j	                  «       dk(  sJ ‚y )Ns   >>sparse6<<:@
)r   Útrivial_graphr   rA   rB   rC   s      r$   Útest_trivial_graphz#TestWriteSparse6.test_trivial_graph\   s=   € Ü×ÑÓˆÜ“ˆÜ
×Ñ˜˜FÔ#Ø�‰Ó Ð$6Ò6Ð6Ñ6r&   c                 ó˜   — t        j                  d«      }t        «       }t        j                  ||«       |j	                  «       dk(  sJ ‚y )Nr   s   >>sparse6<<:D
©r   Úempty_graphr   rA   rB   rC   s      r$   Útest_empty_graphz!TestWriteSparse6.test_empty_graphb   s=   € Ü�N‰N˜1ÓˆÜ“ˆÜ
×Ñ˜˜FÔ#Ø�‰Ó Ð$6Ò6Ð6Ñ6r&   c                 ó˜   — t        j                  d«      }t        «       }t        j                  ||«       |j	                  «       dk(  sJ ‚y )NéD   s   >>sparse6<<:~?@C
rJ   rC   s      r$   Útest_large_empty_graphz'TestWriteSparse6.test_large_empty_graphh   s=   € Ü�N‰N˜2ÓˆÜ“ˆÜ
×Ñ˜˜FÔ#Ø�‰Ó Ð$9Ò9Ð9Ñ9r&   c                 ó˜   — t        j                  d«      }t        «       }t        j                  ||«       |j	                  «       dk(  sJ ‚y )Nið s   >>sparse6<<:~~???~?@
rJ   rC   s      r$   Útest_very_large_empty_graphz,TestWriteSparse6.test_very_large_empty_graphn   s=   € Ü�N‰N˜6Ó"ˆÜ“ˆÜ
×Ñ˜˜FÔ#Ø�‰Ó Ð$=Ò=Ð=Ñ=r&   c                 ó˜   — t        j                  d«      }t        «       }t        j                  ||«       |j	                  «       dk(  sJ ‚y )Nr   s   >>sparse6<<:CcKI
©r   Úcomplete_graphr   rA   rB   rC   s      r$   Útest_complete_graphz$TestWriteSparse6.test_complete_grapht   s?   € Ü×Ñ˜aÓ ˆÜ“ˆÜ
×Ñ˜˜FÔ#Ø�‰Ó Ð$9Ò9Ð9Ñ9r&   c                 óœ   — t        j                  d«      }t        «       }t        j                  ||d¬«       |j	                  «       dk(  sJ ‚y )Nr   F©Úheaders   :CcKI
rS   rC   s      r$   Útest_no_headerzTestWriteSparse6.test_no_headerz   s@   € Ü×Ñ˜aÓ ˆÜ“ˆÜ
×Ñ˜˜F¨5Õ1Ø�‰Ó  JÒ.Ð.Ñ.r&   c                 óÐ   — d}t        |d¬«      D ]T  \  }}t        j                  |«      }t        «       }t        j                  ||d¬«       |j                  «       |dz   k(  rŒTJ ‚ y )N)s   :Cdvs   :DaYns   :EaYnNs   :FaYnLs   :GaYnLzr   )ÚstartFrW   ó   
)Ú	enumerater   Ú
path_graphr   rA   rB   )r!   ÚcodesÚnÚcoder#   rD   s         r$   Útest_paddingzTestWriteSparse6.test_padding€   sa   € ØEˆÜ  ¨aÔ0ò 	5‰GˆAˆtÜ—‘˜aÓ ˆAÜ“YˆFÜ×Ñ˜Q ¨uÕ5Ø—?‘?Ó$¨¨u©Ó4Ð4Ð4ñ		5r&   c                 óž   — t        j                  dd«      }t        «       }t        j                  ||«       d}|j	                  «       |k(  sJ ‚y )Nr   r   s<   >>sparse6<<:Nk?G`cJ?G`cJ?G`cJ?G`cJ?G`cJ?G`cJ?G`cJ?G`cJ?G`cJ
)r   Úcomplete_bipartite_graphr   rA   rB   )r!   r#   rD   Úexpecteds       r$   Útest_complete_bipartitez(TestWriteSparse6.test_complete_bipartiteˆ   sE   € Ü×'Ñ'¨¨1Ó-ˆÜ“ˆÜ
×Ñ˜˜FÔ#à;ˆØ�‰Ó  HÒ,Ð,Ñ,r&   c                 óò  — t        t        d«      «      g d¢z   D ]Û  }t        d|z  ||z  dz  «      }t        j                  j                  |||¬«      }t        «       }t        j                  ||d¬«       |j                  «       j                  «       }t        j                  |«      }|j                  «       |j                  «       k(  sJ ‚t        |j                  «       |j                  «       «      rŒÛJ ‚ y )Nr   )é   é/   é>   é?   é@   éH   r   )ÚseedFrW   )ÚlistÚrangeÚminr   Úrandom_graphsÚgnm_random_graphr   rA   rB   Úrstripr   Úorderr   r    )r!   ÚiÚmÚgÚgstrÚg2s         r$   Útest_read_write_inversez(TestWriteSparse6.test_read_write_inverse�   sÇ   € Ü”e˜B“i“Ò#;Ñ;ò 		6ˆAÜ�A˜‘E˜1˜q™5 A™:Ó&ˆAÜ× Ñ ×1Ñ1°!°Q¸QÐ1Ó?ˆAÜ“9ˆDÜ×Ñ˜Q ¨UÕ3à—=‘=“?×)Ñ)Ó+ˆDÜ×&Ñ& tÓ,ˆBØ—8‘8“: §¡£Ò*Ð*Ð*Ü˜rŸx™x›z¨1¯7©7«9Õ5Ð5Ð5ñ		6r&   c                 óÔ   — t        j                  t        j                  «      5  t        j                  t        j
                  «       t        «       «       d d d «       y # 1 sw Y   y xY w)N)ÚpytestÚraisesr   ÚNetworkXNotImplementedrA   ÚDiGraphr   )r!   s    r$   Útest_no_directed_graphsz(TestWriteSparse6.test_no_directed_graphsœ   sA   € Ü�]‰]œ2×4Ñ4Ó5ñ 	6Ü×ÑœRŸZ™Z›\¬7«9Ô5÷	6÷ 	6ñ 	6ús   ¤1AÁA'c                 óà   — t        |dz  «      }t        j                  t        j                  «       |«       t	        |d¬«      5 }|j                  «       dk(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nztest.s6Úrb)Úmoder?   )Ústrr   rA   r@   ÚopenÚread)r!   Útmp_pathÚfullfilenamer1   s       r$   Útest_write_pathz TestWriteSparse6.test_write_path    s]   € ä˜8 iÑ/Ó0ˆä
×ÑœŸ™›¨,Ô7Ü�, TÔ*ð 	3¨bØ—7‘7“9Ð 2Ò2Ð2Ñ2÷	3÷ 	3ñ 	3ús   ÁA$Á$A-N)r8   r9   r:   Ú__doc__rE   rH   rL   rO   rQ   rU   rY   rb   rf   r{   r�   rŠ   r;   r&   r$   r=   r=   O   sC   „ ñò7ò7ò7ò:ò>ò:ò/ò5ò-ò
6ò6ó3r&   r=   )
Úior   r}   Únetworkxr   Únetworkx.utilsr   r   r   r=   r;   r&   r$   ú<module>r�      s*   ðÝ ã ã ß 3÷Cñ C÷LW3ò W3r&   