ó ŸÃÒYc@sÐdZy<yddlmZWn!ek r@ddlmZnXWn!ek reddlmZnXddlZddlZddlmZm Z m Z ddl Z ddl mZdefd„ƒYZdS(s'Unit tests for pydot drawing functions.iÿÿÿÿ(tStringION(t assert_equaltassert_is_instancet assert_true(tassert_graphs_equalt TestPydotcBs;eZed„ƒZd„Zd„Zd„Zd„ZRS(cCs/tjjtjtƒatdk s+t‚dS(sœ Fixture defining the `pydot` global to be the `pydot` module if both importable and of sufficient version _or_ skipping this test. N( tnxtnx_pydott setup_moduletsystmodulest__name__tpydottNonetAssertionError(tcls((sw/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/drawing/tests/test_pydot.pyt setupClassscCsd|jd<|jddddgƒ|jdƒtjj|d|ƒ}t|tƒtjj|ƒ}|j ƒj tjj |ƒƒ}t ||ƒt jƒ}t|j|ƒƒtjd |d d ƒ}tt|ƒd ƒ|d }tg|jƒD]} | jƒ^qüƒ} tg|jƒD]} | jƒ^q'ƒ} t| | ƒtg|jƒD]} | jƒ| jƒf^q_ƒ} tg|jƒD]} | jƒ| jƒf^q–ƒ}t| |ƒtjj|ƒ}|j ƒj |ƒ}t ||ƒdS(s© Validate :mod:`pydot`-based usage of the passed NetworkX graph with the passed basename of an external GraphViz command (e.g., `dot`, `neato`). tGtnametAtBtCtDtEtprogtpathtencodingsutf-8iiN(RR(RR(RR(RR(tgraphtadd_edges_fromtadd_nodeRRt pydot_layoutRtdicttto_pydott fresh_copyt __class__t from_pydotRttempfiletmktempRt write_rawR tgraph_from_dot_fileRtlentsortedt get_node_listtget_namet get_edge_listt get_sourcetget_destinationtread_dot(tselfRRt graph_layouttPtG2tfnametPin_listtPintptn1tn2tete1te2tHin((sw/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/drawing/tests/test_pydot.pyt pydot_checkss0   !   ++ 44 cCs|jtjƒddƒdS(NRtneato(R>RtGraph(R0((sw/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/drawing/tests/test_pydot.pyttest_undirected^scCs|jtjƒddƒdS(NRtdot(R>RtDiGraph(R0((sw/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/drawing/tests/test_pydot.pyt test_directedascCs{tjƒ}d|jd<|jddddƒtƒ}tjj||ƒ|jdƒtjj|ƒ}t ||ƒdS(NRRt1t2tkeyt0i( Rt MultiGraphRtadd_edgeRRt write_dottseekR/R(R0RtfhtH((sw/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/drawing/tests/test_pydot.pyttest_read_writeds    (R t __module__t classmethodRR>RARDRO(((sw/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/drawing/tests/test_pydot.pyRs  C  (t__doc__t cStringIORt ImportErrortioR R$t nose.toolsRRRtnetworkxRtnetworkx.testingRtobjectR(((sw/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/drawing/tests/test_pydot.pyts