Ë
    …ÐVh˜	  ã                   óT   — d dl Z d dlZd dlZd dlZd dlmZmZ d dlm	Z	  G d„ d«      Z
y)é    N)Úadjacency_dataÚadjacency_graph)Úgraphs_equalc                   ó<   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y	)
ÚTestAdjacencyc                 ór   — t        j                  d«      }t        t        |«      «      }t	        ||«      sJ ‚y ©Né   )ÚnxÚ
path_graphr   r   r   ©ÚselfÚGÚHs      úb/home/dcms/DCMS/lib/python3.12/site-packages/networkx/readwrite/json_graph/tests/test_adjacency.pyÚ
test_graphzTestAdjacency.test_graph   s/   € ÜM‰M˜!ÓˆÜœN¨1Ó-Ó.ˆÜ˜A˜qÔ!Ð!Ñ!ó    c                 ó¤  — t        j                  d«      }|j                  dd¬«       |j                  ddd¬«       d|j                  d	<   d
|j                  d<   t        t        |«      «      }t        ||«      sJ ‚|j                  d	   dk(  sJ ‚|j                  d   d   dk(  sJ ‚|d   d   d   dk(  sJ ‚t        j                  t        |«      «      }t        t        j                  |«      «      }t        ||«      sJ ‚|j                  d	   dk(  sJ ‚|j                  d   d
k(  sJ ‚|j                  d   d   dk(  sJ ‚|d   d   d   dk(  sJ ‚y )Nr
   é   Úred)Úcoloré   é   )ÚwidthÚbarÚfooÚoner   r   )r   r   Úadd_nodeÚadd_edgeÚgraphr   r   r   ÚnodesÚjsonÚdumpsÚloads)r   r   r   Úds       r   Útest_graph_attributesz#TestAdjacency.test_graph_attributes   sN  € ÜM‰M˜!ÓˆØ	
‰
1˜Eˆ
Ô"Ø	
‰
1a˜qˆ
Ô!Øˆ‰‰Øˆ‰‰
äœN¨1Ó-Ó.ˆÜ˜A˜qÔ!Ð!Ð!Øw‰wu‰~ Ò&Ð&Ð&Øw‰wq‰z˜'Ñ" eÒ+Ð+Ð+Ø‰tA‰wwÑ 1Ò$Ð$Ð$äJ‰J”~ aÓ(Ó)ˆÜœDŸJ™J q›MÓ*ˆÜ˜A˜qÔ!Ð!Ð!Øw‰wu‰~ Ò&Ð&Ð&Øw‰wq‰z˜UÒ"Ð"Ð"Øw‰wq‰z˜'Ñ" eÒ+Ð+Ð+Ø‰tA‰wwÑ 1Ò$Ð$Ñ$r   c                 óÄ   — t        j                  «       }t        j                  |g d¢«       t        t	        |«      «      }|j                  «       sJ ‚t        ||«      sJ ‚y ©N)r   r   é   )r   ÚDiGraphÚadd_pathr   r   Úis_directedr   r   s      r   Útest_digraphzTestAdjacency.test_digraph&   sH   € ÜJ‰J‹LˆÜ
‰A’yÔ!ÜœN¨1Ó-Ó.ˆØ}‰}ŒÐˆÜ˜A˜qÔ!Ð!Ñ!r   c                 óè   — t        j                  «       }t        j                  |g d¢«       t        t	        |«      «      }|j                  «       sJ ‚|j                  «       sJ ‚t        ||«      sJ ‚y r(   )r   ÚMultiDiGraphr+   r   r   r,   Úis_multigraphr   r   s      r   Útest_multidigraphzTestAdjacency.test_multidigraph-   sY   € ÜO‰OÓˆÜ
‰A’yÔ!ÜœN¨1Ó-Ó.ˆØ}‰}ŒÐˆØ‰Ô Ð Ð Ü˜A˜qÔ!Ð!Ñ!r   c                 óè   — t        j                  «       }|j                  ddd¬«       |j                  dddd¬«       t        t	        |«      «      }t        ||«      sJ ‚|d   d   d   d   dk(  sJ ‚y )	Nr   r   Úfirst)ÚkeyÚsecondÚblue)r4   r   r   )r   Ú
MultiGraphr   r   r   r   r   s      r   Útest_multigraphzTestAdjacency.test_multigraph5   sr   € ÜM‰M‹OˆØ	
‰
1a˜Wˆ
Ô%Ø	
‰
1a˜X¨Vˆ
Ô4ÜœN¨1Ó-Ó.ˆÜ˜A˜qÔ!Ð!Ð!Ø‰tA‰wxÑ  Ñ)¨VÒ3Ð3Ñ3r   c                 óª   — t        j                  d«      }t        |«      }t        j                  |«      }t        |t        |«      «      sJ ‚||k(  sJ ‚y r	   )r   r   r   ÚcopyÚdeepcopyr   r   )r   r   Ú
input_dataÚ	orig_datas       r   Ú3test_input_data_is_not_modified_when_building_graphzATestAdjacency.test_input_data_is_not_modified_when_building_graph=   sK   € ÜM‰M˜!ÓˆÜ# AÓ&ˆ
Ü—M‘M *Ó-ˆ	ä˜Aœ¨zÓ:Ô;Ð;Ð;Ø˜YÒ&Ð&Ñ&r   c           	      ó¾   — t        j                  d«      }t        t        j                  t        j
                  t        |«      «      «      «      }t        ||«      sJ ‚y r	   )r   r   r   r"   r$   r#   r   r   r   s      r   Ú%test_adjacency_form_json_serialisablez3TestAdjacency.test_adjacency_form_json_serialisableE   sA   € ÜM‰M˜!ÓˆÜœDŸJ™J¤t§z¡z´.ÀÓ2CÓ'DÓEÓFˆÜ˜A˜qÔ!Ð!Ñ!r   c                 ó¾   — t        j                  t        j                  «      5  t        j                  «       }dddœ}t        ||«       d d d «       y # 1 sw Y   y xY w)NÚnode)Úidr4   )ÚpytestÚraisesr   ÚNetworkXErrorr/   r   )r   r   Úattrss      r   Útest_exceptionzTestAdjacency.test_exceptionJ   sI   € Ü]‰]œ2×+Ñ+Ó,ñ 	%Ü—‘Ó!ˆAØ!¨&Ñ1ˆEÜ˜1˜eÔ$÷	%÷ 	%ñ 	%ús   ¤&AÁAN)Ú__name__Ú
__module__Ú__qualname__r   r&   r-   r1   r8   r>   r@   rH   © r   r   r   r      s*   „ ò"ò
%ò*"ò"ò4ò'ò"ó
%r   r   )r:   r"   rD   Únetworkxr   Únetworkx.readwrite.json_graphr   r   Únetworkx.utilsr   r   rL   r   r   ú<module>rP      s#   ðÛ Û ã ã ß IÝ '÷C%ò C%r   