pull/1264/merge
hhang 5 days ago committed by GitHub
commit 34bee761f4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -490,9 +490,9 @@ class Node:
:return: Connected node. :return: Connected node.
""" """
if not isinstance(node, Node): if not isinstance(node, Node):
ValueError(f"{node} is not a valid Node") raise ValueError(f"{node} is not a valid Node")
if not isinstance(edge, Edge): if not isinstance(edge, Edge):
ValueError(f"{edge} is not a valid Edge") raise ValueError(f"{edge} is not a valid Edge")
# An edge must be added on the global diagrams, not a cluster. # An edge must be added on the global diagrams, not a cluster.
self._diagram.connect(self, node, edge) self._diagram.connect(self, node, edge)
return node return node

@ -74,6 +74,19 @@ class DiagramTest(unittest.TestCase):
with self.assertRaises(EnvironmentError): with self.assertRaises(EnvironmentError):
Node("node") Node("node")
def test_connect_rejects_invalid_node(self):
with Diagram(filename=self.name, show=False):
node = Node("source")
with self.assertRaisesRegex(ValueError, "not a valid Node"):
node.connect("invalid", Edge())
def test_connect_rejects_invalid_edge(self):
with Diagram(filename=self.name, show=False):
source = Node("source")
target = Node("target")
with self.assertRaisesRegex(ValueError, "not a valid Edge"):
source.connect(target, "invalid")
def test_node_to_node(self): def test_node_to_node(self):
with Diagram(name=os.path.join(self.name, "node_to_node"), show=False): with Diagram(name=os.path.join(self.name, "node_to_node"), show=False):
node1 = Node("node1") node1 = Node("node1")

Loading…
Cancel
Save