forked from ScoDoc/DocScoDoc
33 lines
844 B
Python
33 lines
844 B
Python
|
# -*- coding: UTF-8 -*
|
||
|
|
||
|
"""Unit tests for pydot
|
||
|
|
||
|
Ce test vérifie que le module pydot est compatible avec notre code.
|
||
|
(pydot a souyvent été buggué)
|
||
|
|
||
|
Usage: pytest tests/unit/test_pydot.py
|
||
|
"""
|
||
|
|
||
|
import pydot
|
||
|
from app.scodoc import sco_utils as scu
|
||
|
|
||
|
|
||
|
def test_pydot(test_client):
|
||
|
g = pydot.Dot("graphname")
|
||
|
g.add_node(pydot.Node("a"))
|
||
|
g.add_node(pydot.Node("b"))
|
||
|
n = g.get_node("a")
|
||
|
assert isinstance(n, list)
|
||
|
assert len(n) == 1
|
||
|
assert [x.get_name() for x in g.get_node_list()] == ["a", "b"]
|
||
|
#
|
||
|
edges = [("a", "b"), ("b", "c"), ("c", "d")]
|
||
|
g = scu.graph_from_edges(edges)
|
||
|
assert len(g.get_node_list()) == 4
|
||
|
n = g.get_node("d")[0]
|
||
|
n.set_fontname("Helvetica")
|
||
|
n.set_fontsize(8.0)
|
||
|
n.set("label", "toto")
|
||
|
assert "fontname=Helvetica" in g.to_string()
|
||
|
assert "toto" in g.to_string()
|