
    9iOS                         S SK r S SKrS SKrS SKrS r\R                  R                  SS5      \R                  R                  SS5      S 5       5       r " S S	5      r	g)
    Nc                    Sn[        U S-  =nS5       nUR                  U5        SSS5        [        R                  " S/5      n[        R                  " USSS.SS	9  S
0 S.Ul        [        R                  " USS9n[        R                  R                  XT5      (       d   e[        R                  " U5      n[        R                  R                  XT5      (       d   eg! , (       d  f       N= f)z7'Basic graph' example from https://gexf.net/schema.htmlab  <?xml version="1.0" encoding="UTF-8"?>
<gexf xmlns="http://gexf.net/1.3" version="1.3">
    <graph mode="static" defaultedgetype="directed">
        <nodes>
            <node id="0" label="Hello" />
            <node id="1" label="Word" />
        </nodes>
        <edges>
            <edge source="0" target="1" />
        </edges>
    </graph>
</gexf>
z
basic.gexfwN)01HelloWordlabel)namestatic)modeedge_defaultz1.3version)	openwritenxDiGraphset_node_attributesgraph	read_gexfutilsgraphs_equal)tmp_pathdatafnamefhexpectedGs         b/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/networkx/readwrite/tests/test_gexf.pytest_gexf_v1_3r    	   s    D 
</0e#	6"
 
7 zz:,'H87%@wO&;HN 	UE*A88  ---- 	UA88  ---- 
7	6s   C  
C.	time_attr)startenddyn_attr)r   dynamicc                    [         R                  " US9nUR                  S5        SUR                  S   U '   US-  n[         R                  " X45        [        U5       nSUR                  5       ;   d   e SSS5        [         R                  " U5      nUR                  S   S:X  d   e[         R                  R                  UR                  UR                  5      (       d   eg! , (       d  f       Nu= f)	zsEnsure that graphs which have a 'start' or 'stop' attribute get a
'timeformat' attribute upon parsing. See gh-7914.)r   r      zfoo.gexfztimeformat="long"Nr   r%   )r   
MultiGraphadd_nodenodes
write_gexfr   readr   r   r   nodes_equaledges)r!   r$   r   r   r   r   Hs          r   !test_dynamic_graph_has_timeformatr0   *   s    
 	8$AJJqMAGGAJyz!EMM!	e"bggi/// 
 	UA 776?i'''881111 
s   C%%
C3c                       \ rS rSr\S 5       rS rS rS rS r	S r
S rS	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rSrg)TestGEXF@   c                 l   SU l         [        R                  " 5       U l        U R                  R	                  SSS9  U R                  R	                  SSS9  U R                  R                  SSSS9  [        R                  " U R                   R                  S5      5      U l	        S	U l
        [        R                  " 5       U l        S
S0U R                  R                  S'   U R                  R	                  SSSSSS9  U R                  R	                  SSSSSS9  U R                  R	                  SSSSSS9  U R                  R	                  SSSSSS9  U R                  R                  SSSSS9  U R                  R                  SSSS9  U R                  R                  SSSS9  U R                  R                  SSSS9  U R                  R                  SSSS9  [        R                  " U R                  R                  S5      5      U l        SU l        [        R                  " 5       U l        U R                   R	                  SSS9  U R                   R	                  SSS9  U R                   R                  SSSS9  [        R                  " U R                  R                  S5      5      U l        g )Nar  <?xml version="1.0" encoding="UTF-8"?>
<gexf xmlns="http://www.gexf.net/1.2draft" version="1.2">
    <graph mode="static" defaultedgetype="directed">
        <nodes>
            <node id="0" label="Hello" />
            <node id="1" label="Word" />
        </nodes>
        <edges>
            <edge id="0" source="0" target="1" />
        </edges>
    </graph>
</gexf>
r   r   )r	   r   World)idUTF-8a]  <?xml version="1.0" encoding="UTF-8"?><gexf xmlns="http://www.gexf.net/1.2draft" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.gexf.net/1.2draft http://www.gexf.net/1.2draft/gexf.xsd" version="1.2">
  <meta lastmodifieddate="2009-03-20">
    <creator>Gephi.org</creator>
    <description>A Web network</description>
  </meta>
  <graph defaultedgetype="directed">
    <attributes class="node">
      <attribute id="0" title="url" type="string"/>
      <attribute id="1" title="indegree" type="integer"/>
      <attribute id="2" title="frog" type="boolean">
        <default>true</default>
      </attribute>
    </attributes>
    <nodes>
      <node id="0" label="Gephi">
        <attvalues>
          <attvalue for="0" value="https://gephi.org"/>
          <attvalue for="1" value="1"/>
          <attvalue for="2" value="false"/>
        </attvalues>
      </node>
      <node id="1" label="Webatlas">
        <attvalues>
          <attvalue for="0" value="http://webatlas.fr"/>
          <attvalue for="1" value="2"/>
          <attvalue for="2" value="false"/>
        </attvalues>
      </node>
      <node id="2" label="RTGI">
        <attvalues>
          <attvalue for="0" value="http://rtgi.fr"/>
          <attvalue for="1" value="1"/>
          <attvalue for="2" value="true"/>
        </attvalues>
      </node>
      <node id="3" label="BarabasiLab">
        <attvalues>
          <attvalue for="0" value="http://barabasilab.com"/>
          <attvalue for="1" value="1"/>
          <attvalue for="2" value="true"/>
        </attvalues>
      </node>
    </nodes>
    <edges>
      <edge id="0" source="0" target="1" label="foo"/>
      <edge id="1" source="0" target="2"/>
      <edge id="2" source="1" target="0"/>
      <edge id="3" source="2" target="1"/>
      <edge id="4" source="0" target="3"/>
    </edges>
  </graph>
</gexf>
frogTnode_defaultGephizhttps://gephi.orgr'   F)r	   urlindegreer8   Webatlaszhttp://webatlas.fr   2RTGIzhttp://rtgi.fr3BarabasiLabzhttp://barabasilab.comfoor6   r	   4at  <?xml version="1.0" encoding="UTF-8"?>
<gexf xmlns="http://www.gexf.net/1.2draft" version="1.2">
    <graph mode="static" defaultedgetype="undirected">
        <nodes>
            <node id="0" label="Hello" />
            <node id="1" label="Word" />
        </nodes>
        <edges>
            <edge id="0" source="0" target="1" />
        </edges>
    </graph>
</gexf>
)simple_directed_datar   r   simple_directed_graphr)   add_edgeioBytesIOencodesimple_directed_fhattribute_dataattribute_graphr   attribute_fhsimple_undirected_dataGraphsimple_undirected_graphsimple_undirected_fh)clss    r   setup_classTestGEXF.setup_classA   s   $  %'JJL!!!**3g*>!!**3g*>!!**3*<!#C,D,D,K,KG,T!U7p !jjl5;TN!!.1$$w$7!% 	% 	
 	$$z';ae 	% 	
 	$$v#3ad 	% 	
 	$$( 	% 	
 	$$S##U$C$$S##$6$$S##$6$$S##$6$$S##$6::c&8&8&?&?&HI&" ')hhj###,,S,@##,,S,@##,,S##,>#%::&&--g6$
     c                    U R                   n[        R                  " U R                  5      n[	        UR                  5       5      [	        UR                  5       5      :X  d   e[	        UR                  5       5      [	        UR                  5       5      :X  d   e[	        UR                  SS95      [	        UR                  SS95      :X  d   eU R                  R                  S5        g NTr   r   )rG   r   r   rL   sortedr*   r.   seekselfr   r/   s      r   !test_read_simple_directed_graphml*TestGEXF.test_read_simple_directed_graphml   s    &&LL001aggi F1779$5555aggi F1779$5555agg4g()VAGGG4F-GGGG$$Q'rW   c                 6   U R                   n[        R                  " 5       n[        R                  " X5        UR                  S5        [        R                  " U5      n[        UR                  5       5      [        UR                  5       5      :X  d   e[        UR                  5       5      [        UR                  5       5      :X  d   e[        UR                  SS95      [        UR                  SS95      :X  d   eU R                  R                  S5        g )Nr   TrZ   )rG   rI   rJ   r   r+   r\   r   r[   r*   r.   rL   r^   r   r   r/   s       r   'test_write_read_simple_directed_graphml0TestGEXF.test_write_read_simple_directed_graphml   s    &&ZZ\
a

LLaggi F1779$5555aggi F1779$5555agg4g()VAGGG4F-GGGG$$Q'rW   c                    U R                   n[        R                  " U R                  5      n[	        UR                  5       5      [	        UR                  5       5      :X  d   e[	        S UR                  5        5       5      [	        S UR                  5        5       5      :X  d   eU R                  R                  S5        g )Nc              3   8   #    U  H  n[        U5      v   M     g 7fNr[   .0es     r   	<genexpr>?TestGEXF.test_read_simple_undirected_graphml.<locals>.<genexpr>        3AfQii   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   rm            >
(!F1IIyro   r   )rR   r   r   rS   r[   r*   r.   r\   r]   s      r   #test_read_simple_undirected_graphml,TestGEXF.test_read_simple_undirected_graphml   s    ((LL223aggi F1779$5555333v >
 wwy>
 8
 
 	
 
 	!!&&q)rW   c                    U R                   n[        R                  " U R                  5      n[	        UR                  S5      5      [	        UR                  SS95      :X  d   e[	        UR                  SS95      n[	        UR                  SS95      n[        X45       H  u  pVXV:X  a  M   e   U R                  R                  S5        g rY   )	rN   r   r   rO   r[   r*   r.   zipr\   )r^   r   r/   geheabs          r   test_read_attribute_graphml$TestGEXF.test_read_attribute_graphml   s      LL**+aggdm$qwwDw/A(BBBBAGGG&'AGGG&'KDA6M6  q!rW   c                     Sn[         R                  " UR                  S5      5      n[        R                  " [
        R                  [
        R                  U5        g )Na  <?xml version="1.0" encoding="UTF-8"?>
<gexf xmlns="http://www.gexf.net/1.2draft" version='1.2'>
    <graph mode="static" defaultedgetype="undirected" name="">
        <nodes>
            <node id="0" label="Hello" />
            <node id="1" label="Word" />
        </nodes>
        <edges>
            <edge id="0" source="0" target="1" type="directed"/>
        </edges>
    </graph>
</gexf>
r7   rI   rJ   rK   pytestraisesr   NetworkXErrorr   r^   sr   s      r    test_directed_edge_in_undirected)TestGEXF.test_directed_edge_in_undirected   <     ZZ)*b&&b9rW   c                     Sn[         R                  " UR                  S5      5      n[        R                  " [
        R                  [
        R                  U5        g )Na  <?xml version="1.0" encoding="UTF-8"?>
<gexf xmlns="http://www.gexf.net/1.2draft" version='1.2'>
    <graph mode="static" defaultedgetype="directed" name="">
        <nodes>
            <node id="0" label="Hello" />
            <node id="1" label="Word" />
        </nodes>
        <edges>
            <edge id="0" source="0" target="1" type="undirected"/>
        </edges>
    </graph>
</gexf>
r7   r}   r   s      r    test_undirected_edge_in_directed)TestGEXF.test_undirected_edge_in_directed   r   rW   c                     Sn[         R                  " UR                  S5      5      n[        R                  " [
        R                  [
        R                  U5        g )Na   <?xml version="1.0" encoding="UTF-8"?>
<gexf xmlns="http://www.gexf.net/1.2draft" version='1.2'>
    <graph mode="static" defaultedgetype="directed" name="">
        <nodes>
            <node id="0" label="Hello">
              <attvalues>
                <attvalue for='0' value='1'/>
              </attvalues>
            </node>
            <node id="1" label="Word" />
        </nodes>
        <edges>
            <edge id="0" source="0" target="1" type="undirected"/>
        </edges>
    </graph>
</gexf>
r7   r}   r   s      r   test_key_raisesTestGEXF.test_key_raises  s<    " ZZ)*b&&b9rW   c                     Sn[         R                  " UR                  S5      5      n[        R                  " USS9n[        UR                  5       5      SS/:X  d   eg )Nay  <?xml version="1.0" encoding="UTF-8"?>
<gexf xmlns="http://www.gexf.net/1.2draft" version='1.2'>
    <graph mode="static" defaultedgetype="directed" name="">
        <nodes>
            <node id="0" label="Hello" />
            <node id="1" label="Word" />
        </nodes>
        <edges>
            <edge id="0" source="0" target="1"/>
        </edges>
    </graph>
</gexf>
r7   T)relabelr   r   )rI   rJ   rK   r   r   r[   r*   )r^   r   r   r   s       r   test_relabelTestGEXF.test_relabel  sP     ZZ)*LLT*aggi Wf$5555rW   c                    [         R                  " 5       nUR                  SSSS9  [         R                  " U/ SQ5        UR	                  SSSS9  S	S
0UR
                  S'   SS0UR
                  S'   [        R                  " 5       n[         R                  " X5        UR                  S5        [         R                  " U[        S9n[        UR                  5       5      [        UR                  5       5      :X  d   e[        S UR                  5        5       5      [        S UR                  5        5       5      :X  d   eUR
                  S	 UR
                  UR
                  :X  d   eg )Nr'   r   greenr	   color)r   r'   r>      r>   r   )rC   r   yellowr9   rC      r   r   	node_typec              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   2TestGEXF.test_default_attribute.<locals>.<genexpr>9  rn   ro   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r   9  rq   ro   r   )r   rQ   r)   add_pathrH   r   rI   rJ   r+   r\   r   intr[   r*   r.   rb   s       r   test_default_attributeTestGEXF.test_default_attribute-  s   HHJ	

1Cw
/
A|$	

1aQ
#*H"5#(!*ZZ\
a

LLs+aggi F1779$5555333v >
 wwy>
 8
 
 	
 
 GGFOww!''!!!rW   c                 N   [         R                  " 5       nUR                  SSSS9  [        R                  " 5       n[         R
                  " X5        UR                  S5        [         R                  " U[        S9n[        U5      S/:X  d   eUR                  S   S   S:X  d   eg )	Nr'   r   M   rD   r   r   r	   77)r   rQ   r)   rI   rJ   r+   r\   r   r   listr*   rb   s       r   test_serialize_ints_to_strings'TestGEXF.test_serialize_ints_to_stringsB  s~    HHJ	

1"
%ZZ\
a

LLs+Aw1#~~wwqz'"d***rW   c                    [         R                  " 5       nUR                  / SQ5        [        S5       H\  nX!R                  U   S'   X!R                  U   S'   X!R                  U   S'   X!R                  U   S'   US-   UR                  U   S'   M^     S	[
        R                  " S
5       S[         R                   S3nSR                  [         R                  " U5      5      nX4:X  d   eg )N))r   r'   r'   r>   r>   r      r6   r	   pidr"   r'   r#   <gexf xmlns="http://www.gexf.net/1.2draft" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.gexf.net/1.2draft http://www.gexf.net/1.2draft/gexf.xsd" version="1.2">
  <meta lastmodifieddate="%Y-%m-%d">
    <creator>NetworkX a  </creator>
  </meta>
  <graph defaultedgetype="undirected" mode="dynamic" name="" timeformat="long">
    <nodes>
      <node id="0" label="0" pid="0" start="0" end="1" />
      <node id="1" label="1" pid="1" start="1" end="2" />
      <node id="2" label="2" pid="2" start="2" end="3" />
      <node id="3" label="3" pid="3" start="3" end="4" />
    </nodes>
    <edges>
      <edge source="0" target="1" id="0" />
      <edge source="1" target="2" id="1" />
      <edge source="2" target="3" id="2" />
    </edges>
  </graph>
</gexf>
)
r   rQ   add_edges_fromranger*   timestrftime__version__joingenerate_gexf)r^   r   ir   obtaineds        r   test_write_with_node_attributes(TestGEXF.test_write_with_node_attributesL  s    HHJ	12qA GGAJt"#GGAJw !GGAJu"#GGAJw !AAGGAJu   ==45 6~~& '* 99R--a01###rW   c                    [         R                  " 5       nUR                  SSSS04SSSS04S/5        S[        R                  " S5       S[         R
                   S	3nS
R                  [         R                  " U5      5      nX#:X  d   eg )Nr   r'   r6   r>   r   r   r   r   a  </creator>
  </meta>
  <graph defaultedgetype="undirected" mode="static" name="">
    <nodes>
      <node id="0" label="0" />
      <node id="1" label="1" />
      <node id="2" label="2" />
      <node id="3" label="3" />
    </nodes>
    <edges>
      <edge source="0" target="1" id="0" />
      <edge source="1" target="2" id="2" />
      <edge source="2" target="3" id="1" />
    </edges>
  </graph>
</gexf>r   )r   rQ   r   r   r   r   r   r   )r^   r   r   r   s       r   test_edge_id_constructTestGEXF.test_edge_id_constructo  s    HHJ	1a$+aT1I->GH  ==45 6~~& '	* 99R--a01###rW   c                    [         R                  " S5      n[        R                  " S5      n[        R                  " X!R                  S5       Vs0 s H  o3U_M     snS5        UR                  S5      US   S   S'   S[        R                  " S	5       S
[        R                   S3nSR                  [        R                  " U5      5      nXE:X  d   eg s  snf )Nnumpyr   numberg?r   r'   zedge-numberr   r   r   a_  </creator>
  </meta>
  <graph defaultedgetype="undirected" mode="static" name="">
    <attributes mode="static" class="edge">
      <attribute id="1" title="edge-number" type="float" />
    </attributes>
    <attributes mode="static" class="node">
      <attribute id="0" title="number" type="int" />
    </attributes>
    <nodes>
      <node id="0" label="0">
        <attvalues>
          <attvalue for="0" value="0" />
        </attvalues>
      </node>
      <node id="1" label="1">
        <attvalues>
          <attvalue for="0" value="1" />
        </attvalues>
      </node>
      <node id="2" label="2">
        <attvalues>
          <attvalue for="0" value="2" />
        </attvalues>
      </node>
      <node id="3" label="3">
        <attvalues>
          <attvalue for="0" value="3" />
        </attvalues>
      </node>
    </nodes>
    <edges>
      <edge source="0" target="1" id="0">
        <attvalues>
          <attvalue for="1" value="1.1" />
        </attvalues>
      </edge>
      <edge source="1" target="2" id="1" />
      <edge source="2" target="3" id="2" />
    </edges>
  </graph>
</gexf>r   )r~   importorskipr   
path_graphr   arangefloat64r   r   r   r   r   )r^   npr   nr   r   s         r   test_numpy_typeTestGEXF.test_numpy_type  s      )MM!
q1">Aa4">I!#C!Q  ==45 6~~& )'.^ 99R--a01###g #?s   C
c                 *   [         R                  " 5       nUR                  SSS9  [        R                  " 5       n[         R
                  " X5        UR                  S5        [         R                  " U[        S9nUR                  S   S   (       d   eg )Nr'   T)testattrr   r   r   
r   rQ   r)   rI   rJ   r+   r\   r   r   r*   rb   s       r   	test_boolTestGEXF.test_bool  se    HHJ	

1t
$ZZ\
a

LLs+wwqz*%%%rW   c                    SSK Jn  [        S5      [        S5      p2[        R                  " 5       nUR                  SUSSS9  UR                  SUSS	S9  UR                  S
U* SSS9  [        R                  " 5       n[        R                  " XE5        UR                  S5        UR                  5       nUR                  S5        [        R                  " U[        S9nSU;   d   eSU;   d   eSU;   d   eUR                  S   S   U:X  d   eU" UR                  S   S   5      (       d   eUR                  S
   S   U* :X  d   eUR                  S   S   S:X  d   eUR                  S   S   S:X  d   eUR                  S
   S   S:X  d   eUR                  S   S   S:X  d   eUR                  S   S   S	:X  d   eUR                  S
   S   S:X  d   eg )Nr   )isnaninfnanr'   rx   )r   strdatakeyr>   ry   r   z-infcr   s   INFs   NaNs   -INFr   r   networkx_key)mathr   floatr   rQ   r)   rI   rJ   r+   r\   r,   r   r   r*   )r^   r   r   r   r   r   filetextr/   s           r   test_specialsTestGEXF.test_specials  s   <uSHHJ	

1sEs
;	

1sEs
;	

1tV
=ZZ\
a

779

LLs+!!!!!!("""wwqz*%,,,QWWQZ
+,,,,wwqz*%#---wwqz)$---wwqz)$---wwqz)$...wwqz.)S000wwqz.)S000wwqz.)S000rW   c                 0   [         R                  " 5       nSS/nUR                  SUS9  [        R                  " 5       n[         R
                  " X5        UR                  S5        [         R                  " U[        S9nUR                  S   S   U:X  d   eg )N)r'   r>   r   )	   r'   r>   r'   )r   r   r   r   r   )r^   r   
list_valuer   r/   s        r   test_simple_listTestGEXF.test_simple_list  st    HHJ+
	

1*
%ZZ\
a

LLs+wwqz.)Z777rW   c                    [         R                  " 5       nUR                  SSSS9  SUR                  S'   [        R
                  " 5       n[         R                  " X5        UR                  S5        [         R                  " U[        S9n[        UR                  5       5      [        UR                  5       5      :X  d   e[        S	 UR                  5        5       5      [        S
 UR                  5        5       5      :X  d   eg )Nr'   r   r   r   r%   r   r   r   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   -TestGEXF.test_dynamic_mode.<locals>.<genexpr>   rn   ro   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r      rq   ro   )r   rQ   r)   r   rI   rJ   r+   r\   r   r   r[   r*   r.   rb   s       r   test_dynamic_modeTestGEXF.test_dynamic_mode  s    HHJ	

1Cw
/#ZZ\
a

LLs+aggi F1779$5555333v >
 wwy>
 8
 
 	
 
rW   c           
         [         R                  " 5       nUR                  SSSS9  UR                  SSSS9  UR                  SSSSS	SSS
9  UR                  SSSSSSS9  UR                  SS5        [        R
                  " 5       n[         R                  " X5        UR                  S5        [         R                  " U[        S9n[        UR                  5       5      [        UR                  5       5      :X  d   e[        S UR                  5        5       5      [        S UR                  5        5       5      :X  d   eg )Nr   r   r   r   r'   r?   r   r   
undirected)r6   weighttyper"   r#   rC   )r6   r	   r"   r#   r   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   CTestGEXF.test_multigraph_with_missing_attributes.<locals>.<genexpr>  rn   ro   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r     rq   ro   )r   r(   r)   rH   rI   rJ   r+   r\   r   r   r[   r*   r.   rb   s       r   'test_multigraph_with_missing_attributes0TestGEXF.test_multigraph_with_missing_attributes  s   MMO	

1Cw
/	

1Cw
/	

1aCA1
M	

1aCuA1
=	

1aZZ\
a

LLs+aggi F1779$5555333v >
 wwy>
 8
 
 	
 
rW   c                 |   [         R                  " 5       nUR                  SSSS9  SS0UR                  S   S'   SSSS	.UR                  S   S   S
'   SSSS.UR                  S   S   S'   SUR                  S   S   S'   SUR                  S   S   S'   [        R
                  " 5       n[         R                  " XSS9  UR                  S5        [         R                  " U[        S9n[        UR                  5       5      [        UR                  5       5      :X  d   e[        S UR                  5        5       5      [        S UR                  5        5       5      :X  d   e[        R
                  " 5       n[         R                  " XSS9  UR                  S5        [         R                  " U[        S9nUR                  S   S   S   S   S:X  d   e[         R                  " 5       nUR                  SSSS9  SS0UR                  S   S'   SSSS	.UR                  S   S   S
'   SSSSS.UR                  S   S   S'   SUR                  S   S   S'   SUR                  S   S   S'   [        R
                  " 5       n[         R                  " X5        UR                  S5        [         R                  " U[        S9n[        UR                  5       5      [        UR                  5       5      :X  d   e[        S UR                  5        5       5      [        S UR                  5        5       5      :X  d   eg )Nr   r   r   r   size6   vizr'   )xyzposition   )rgry   r   zhttp://random.urlshaper>   	thickness1.1draftr   r   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   7TestGEXF.test_missing_viz_attributes.<locals>.<genexpr>!  rn   ro   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r   !  rq   ro   z1.2draftrx   g      ?g      ?)r   r   ry   rx   zftp://random.urlc              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r   <  rn   ro   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r   <  rq   ro   r   rQ   r)   r*   rI   rJ   r+   r\   r   r   r[   r.   rb   s       r   test_missing_viz_attributes$TestGEXF.test_missing_viz_attributes  s   HHJ	

1Cw
/#RL
5./aa(@
5*%+,13%?
5'"%8
5'")*
5+&ZZ\
aZ0

LLs+aggi F1779$5555333v >
 wwy>
 8
 
 	
 
 ZZ\ 	aZ0

LLs+wwqz% )#.#555 HHJ	

1Cw
/#RL
5./aa(@
5*%+,13S%I
5'"%7
5'")*
5+&ZZ\
a

LLs+aggi F1779$5555333v >
 wwy>
 8
 
 	
 
rW   c                 "   [         R                  " 5       nUR                  SSSS9  S/UR                  S   S'   [        R
                  " 5       n[         R                  " X5        UR                  S5        [         R                  " U[        S9n[        UR                  5       5      [        UR                  5       5      :X  d   e[        S UR                  5        5       5      [        S	 UR                  5        5       5      :X  d   e[         R                  " 5       nUR                  SSSS9  S/UR                  S   S
'   [        R
                  " 5       n[         R                  " XSS9  UR                  S5        [         R                  " U[        S9n[        UR                  5       5      [        UR                  5       5      :X  d   e[        S UR                  5        5       5      [        S UR                  5        5       5      :X  d   eg )Nr   r   r   r   r   spellsr   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   0TestGEXF.test_slice_and_spell.<locals>.<genexpr>J  rn   ro   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r  J  rq   ro   slicesr   r   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r  V  rn   ro   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r  V  rq   ro   r  rb   s       r   test_slice_and_spellTestGEXF.test_slice_and_spell@  s   HHJ	

1Cw
/ &x
8ZZ\
a

LLs+aggi F1779$5555333v >
 wwy>
 8
 
 	
 
 HHJ	

1Cw
/ &x
8ZZ\
aZ0

LLs+aggi F1779$5555333v >
 wwy>
 8
 
 	
 
rW   c                    [         R                  " 5       nUR                  SSSSS/S9  [        R                  " 5       n[         R
                  " X5        UR                  S5        [         R                  " U[        S9n[        UR                  5       5      [        UR                  5       5      :X  d   e[        S UR                  5        5       5      [        S	 UR                  5        5       5      :X  d   eg )
Nr   r   r   r'   r>   )r	   r   parentsr   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   +TestGEXF.test_add_parent.<locals>.<genexpr>b  rn   ro   c              3   8   #    U  H  n[        U5      v   M     g 7frg   rh   ri   s     r   rl   r  b  rq   ro   )r   rQ   r)   rI   rJ   r+   r\   r   r   r[   r*   r.   rb   s       r   test_add_parentTestGEXF.test_add_parentZ  s    HHJ	

1CwA
?ZZ\
a

LLs+aggi F1779$5555333v >
 wwy>
 8
 
 	
 
rW    N)__name__
__module____qualname____firstlineno__classmethodrU   r_   rc   rr   rz   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  __static_attributes__r  rW   r   r2   r2   @   s    z
 z
x(	(*":":":*6$"*+!$F$86$p&1@8

 *
X
4

rW   r2   )
rI   r   r~   networkxr   r    markparametrizer0   r2   r  rW   r   <module>r     sc    	   .B &67%:;2 < 82(d
 d
rW   