From 2f05eb636ebe265af4bb373fd7a90c56e83b62bc Mon Sep 17 00:00:00 2001 From: Brandon Rodriguez <brodriguez8774@gmail.com> Date: Tue, 3 Dec 2019 19:28:52 -0500 Subject: [PATCH] Create missing unit tests for directed_weighted graph --- .../directed_weighted_graph/__init__.py | 0 .../graphs/directed_weighted_graph/edge.py | 24 ++++++++ .../graphs/directed_weighted_graph/graph.py | 56 +++++++++++++++++++ .../graphs/directed_weighted_graph/node.py | 24 ++++++++ 4 files changed, 104 insertions(+) create mode 100644 tests/resources/graphs/directed_weighted_graph/__init__.py create mode 100644 tests/resources/graphs/directed_weighted_graph/edge.py create mode 100644 tests/resources/graphs/directed_weighted_graph/graph.py create mode 100644 tests/resources/graphs/directed_weighted_graph/node.py diff --git a/tests/resources/graphs/directed_weighted_graph/__init__.py b/tests/resources/graphs/directed_weighted_graph/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/resources/graphs/directed_weighted_graph/edge.py b/tests/resources/graphs/directed_weighted_graph/edge.py new file mode 100644 index 0000000..5444b1a --- /dev/null +++ b/tests/resources/graphs/directed_weighted_graph/edge.py @@ -0,0 +1,24 @@ +""" +Date: 11-29-19 +Class: CS5310 +Assignment: Graph Library +Author: Brandon Rodriguez + + +Tests for "Directed, Weighted Edge" class. +""" + +# System Imports. +import unittest + +# User Class Imports. +from resources import DirectedWeightedEdge, DirectedWeightedNode + + +class TestDirectedWeightedEdge(unittest.TestCase): + def setUp(self): + self.test_edge = DirectedWeightedEdge('Test Edge') + + def test__node_initialization(self): + self.assertEqual(self.test_edge._edge_type, DirectedWeightedEdge) + self.assertEqual(self.test_edge._node_type, DirectedWeightedNode) diff --git a/tests/resources/graphs/directed_weighted_graph/graph.py b/tests/resources/graphs/directed_weighted_graph/graph.py new file mode 100644 index 0000000..19121e8 --- /dev/null +++ b/tests/resources/graphs/directed_weighted_graph/graph.py @@ -0,0 +1,56 @@ +""" +Date: 11-29-19 +Class: CS5310 +Assignment: Graph Library +Author: Brandon Rodriguez + + +Tests for "Directed, Weighted Graph" class. +""" + +# System Imports. +import unittest + +# User Class Imports. +from resources import DirectedWeightedEdge, DirectedWeightedNode +from resources import DirectedWeightedGraph + + +class TestDirectedWeightedGraph(unittest.TestCase): + def setUp(self): + self.test_graph = DirectedWeightedGraph() + + def test__node_initialization(self): + self.assertEqual(self.test_graph._edge_type, DirectedWeightedEdge) + self.assertEqual(self.test_graph._graph_type, DirectedWeightedGraph) + self.assertEqual(self.test_graph._node_type, DirectedWeightedNode) + + def test__create(self): + # We have pretty thorough testing of the parent function. + # Thus, just test returned node is of "Directed, Weighted" type. + node_1 = self.test_graph.nodes.create() + self.assertTrue(isinstance(node_1, DirectedWeightedNode)) + + def test__remove(self): + # We have pretty thorough testing of the parent function. + # Thus, just test returned node is of "Directed, Weighted" type. + node_1 = self.test_graph.nodes.create() + node_1 = self.test_graph.nodes.remove(node_1) + self.assertTrue(isinstance(node_1, DirectedWeightedNode)) + + def test__connect(self): + # We have pretty thorough testing of the parent function. + # Thus, just test returned edge is of "Directed, Weighted" type. + node_1 = self.test_graph.nodes.create() + node_2 = self.test_graph.nodes.create() + edge_1 = self.test_graph.nodes.connect(node_1, node_2) + self.assertTrue(isinstance(edge_1, DirectedWeightedEdge)) + + def test__disconnect(self): + # We have pretty thorough testing of the parent function. + # Thus, just test returned edge is of "Directed, Weighted" type. + node_1 = self.test_graph.nodes.create() + node_2 = self.test_graph.nodes.create() + self.test_graph.nodes.connect(node_1, node_2) + edge_1 = self.test_graph.nodes.disconnect(node_1_identifier=node_1, node_2_identifier=node_2) + self.assertTrue(isinstance(edge_1, DirectedWeightedEdge)) diff --git a/tests/resources/graphs/directed_weighted_graph/node.py b/tests/resources/graphs/directed_weighted_graph/node.py new file mode 100644 index 0000000..18c75ea --- /dev/null +++ b/tests/resources/graphs/directed_weighted_graph/node.py @@ -0,0 +1,24 @@ +""" +Date: 11-02-19 +Class: CS5310 +Assignment: Graph Library +Author: Brandon Rodriguez + + +Tests for "State Machine Node" class. +""" + +# System Imports. +import unittest + +# User Class Imports. +from resources import DirectedWeightedEdge, DirectedWeightedNode + + +class TestDirectedWeightedNode(unittest.TestCase): + def setUp(self): + self.test_node = DirectedWeightedNode('Test Node') + + def test__node_initialization(self): + self.assertEqual(self.test_node._edge_type, DirectedWeightedEdge) + self.assertEqual(self.test_node._node_type, DirectedWeightedNode) -- GitLab