Esempio n. 1
0
def test_nodes_are_only_added_once(clear_default_graph):
    graph = Graph()
    node = NodeForTesting()
    for i in range(10):
        graph.add_node(node)

    assert len(graph.nodes) == 1
Esempio n. 2
0
def test_node_names_on_graph_have_to_be_unique(clear_default_graph):
    graph = Graph()
    same_name = "Same Name"
    node_1 = NodeForTesting(name=same_name, graph=None)
    graph.add_node(node_1)
    node_2 = NodeForTesting(name=same_name, graph=None)

    with pytest.raises(ValueError):
        graph.add_node(node_2)
Esempio n. 3
0
def test_nodes_can_be_accessed_via_name_through_indexing(clear_default_graph):
    graph = Graph()
    test_name = "TestName"
    node = NodeForTesting(name=test_name)
    graph.add_node(node)

    assert graph[test_name] == node

    with pytest.raises(KeyError):
        graph["Does not exist"]
Esempio n. 4
0
def test_nodes_can_be_added_to_graph(clear_default_graph):
    """Nodes add themselves to their graph as their parent."""
    graph = Graph()
    graph.add_node(NodeForTesting())
    assert 1 == len(graph.nodes)