mirror of
https://github.com/donnemartin/interactive-coding-challenges
synced 2026-01-13 04:48:03 +00:00
@@ -175,10 +175,10 @@
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"# %load test_graph.py\n",
|
||||
"from nose.tools import assert_equal\n",
|
||||
"import unittest\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"class TestGraph(object):\n",
|
||||
"class TestGraph(unittest.TestCase):\n",
|
||||
"\n",
|
||||
" def create_graph(self):\n",
|
||||
" graph = Graph()\n",
|
||||
@@ -198,29 +198,29 @@
|
||||
" graph.add_edge(5, 4, weight=8)\n",
|
||||
" graph.add_edge(5, 2, weight=9)\n",
|
||||
"\n",
|
||||
" assert_equal(graph.nodes[0].adj_weights[graph.nodes[1].key], 5)\n",
|
||||
" assert_equal(graph.nodes[0].adj_weights[graph.nodes[5].key], 2)\n",
|
||||
" assert_equal(graph.nodes[1].adj_weights[graph.nodes[2].key], 3)\n",
|
||||
" assert_equal(graph.nodes[2].adj_weights[graph.nodes[3].key], 4)\n",
|
||||
" assert_equal(graph.nodes[3].adj_weights[graph.nodes[4].key], 5)\n",
|
||||
" assert_equal(graph.nodes[3].adj_weights[graph.nodes[5].key], 6)\n",
|
||||
" assert_equal(graph.nodes[4].adj_weights[graph.nodes[0].key], 7)\n",
|
||||
" assert_equal(graph.nodes[5].adj_weights[graph.nodes[4].key], 8)\n",
|
||||
" assert_equal(graph.nodes[5].adj_weights[graph.nodes[2].key], 9)\n",
|
||||
" self.assertEqual(graph.nodes[0].adj_weights[graph.nodes[1].key], 5)\n",
|
||||
" self.assertEqual(graph.nodes[0].adj_weights[graph.nodes[5].key], 2)\n",
|
||||
" self.assertEqual(graph.nodes[1].adj_weights[graph.nodes[2].key], 3)\n",
|
||||
" self.assertEqual(graph.nodes[2].adj_weights[graph.nodes[3].key], 4)\n",
|
||||
" self.assertEqual(graph.nodes[3].adj_weights[graph.nodes[4].key], 5)\n",
|
||||
" self.assertEqual(graph.nodes[3].adj_weights[graph.nodes[5].key], 6)\n",
|
||||
" self.assertEqual(graph.nodes[4].adj_weights[graph.nodes[0].key], 7)\n",
|
||||
" self.assertEqual(graph.nodes[5].adj_weights[graph.nodes[4].key], 8)\n",
|
||||
" self.assertEqual(graph.nodes[5].adj_weights[graph.nodes[2].key], 9)\n",
|
||||
"\n",
|
||||
" assert_equal(graph.nodes[0].incoming_edges, 1)\n",
|
||||
" assert_equal(graph.nodes[1].incoming_edges, 1)\n",
|
||||
" assert_equal(graph.nodes[2].incoming_edges, 2)\n",
|
||||
" assert_equal(graph.nodes[3].incoming_edges, 1)\n",
|
||||
" assert_equal(graph.nodes[4].incoming_edges, 2)\n",
|
||||
" assert_equal(graph.nodes[5].incoming_edges, 2)\n",
|
||||
" self.assertEqual(graph.nodes[0].incoming_edges, 1)\n",
|
||||
" self.assertEqual(graph.nodes[1].incoming_edges, 1)\n",
|
||||
" self.assertEqual(graph.nodes[2].incoming_edges, 2)\n",
|
||||
" self.assertEqual(graph.nodes[3].incoming_edges, 1)\n",
|
||||
" self.assertEqual(graph.nodes[4].incoming_edges, 2)\n",
|
||||
" self.assertEqual(graph.nodes[5].incoming_edges, 2)\n",
|
||||
"\n",
|
||||
" graph.nodes[0].remove_neighbor(graph.nodes[1])\n",
|
||||
" assert_equal(graph.nodes[1].incoming_edges, 0)\n",
|
||||
" self.assertEqual(graph.nodes[1].incoming_edges, 0)\n",
|
||||
" graph.nodes[3].remove_neighbor(graph.nodes[4])\n",
|
||||
" assert_equal(graph.nodes[4].incoming_edges, 1)\n",
|
||||
" self.assertEqual(graph.nodes[4].incoming_edges, 1)\n",
|
||||
"\n",
|
||||
" assert_equal(graph.nodes[0] < graph.nodes[1], True)\n",
|
||||
" self.assertEqual(graph.nodes[0] < graph.nodes[1], True)\n",
|
||||
"\n",
|
||||
" print('Success: test_graph')\n",
|
||||
"\n",
|
||||
@@ -230,12 +230,12 @@
|
||||
" graph.add_undirected_edge(0, 5, weight=2)\n",
|
||||
" graph.add_undirected_edge(1, 2, weight=3)\n",
|
||||
"\n",
|
||||
" assert_equal(graph.nodes[0].adj_weights[graph.nodes[1].key], 5)\n",
|
||||
" assert_equal(graph.nodes[1].adj_weights[graph.nodes[0].key], 5)\n",
|
||||
" assert_equal(graph.nodes[0].adj_weights[graph.nodes[5].key], 2)\n",
|
||||
" assert_equal(graph.nodes[5].adj_weights[graph.nodes[0].key], 2)\n",
|
||||
" assert_equal(graph.nodes[1].adj_weights[graph.nodes[2].key], 3)\n",
|
||||
" assert_equal(graph.nodes[2].adj_weights[graph.nodes[1].key], 3)\n",
|
||||
" self.assertEqual(graph.nodes[0].adj_weights[graph.nodes[1].key], 5)\n",
|
||||
" self.assertEqual(graph.nodes[1].adj_weights[graph.nodes[0].key], 5)\n",
|
||||
" self.assertEqual(graph.nodes[0].adj_weights[graph.nodes[5].key], 2)\n",
|
||||
" self.assertEqual(graph.nodes[5].adj_weights[graph.nodes[0].key], 2)\n",
|
||||
" self.assertEqual(graph.nodes[1].adj_weights[graph.nodes[2].key], 3)\n",
|
||||
" self.assertEqual(graph.nodes[2].adj_weights[graph.nodes[1].key], 3)\n",
|
||||
"\n",
|
||||
" print('Success: test_graph_undirected')\n",
|
||||
"\n",
|
||||
@@ -276,7 +276,7 @@
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.6.4"
|
||||
"version": "3.7.2"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
|
||||
Reference in New Issue
Block a user