Skip to content

Commit 11c5325

Browse files
committed
Fix up tests.
1 parent 2c87176 commit 11c5325

File tree

3 files changed

+36
-16
lines changed

3 files changed

+36
-16
lines changed

tests/v2/__init__.py

+7
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,12 @@ def get_alt_title(self):
106106
def get_cml24_id(self):
107107
return "88119b68-9d08-40c4-90f5-6dc533fd0254"
108108

109+
def get_cml24_rtr_1(self):
110+
return "88119b68-9d08-40c4-90f5-6dc533fd0256"
111+
112+
def get_cml24_rtr_2(self):
113+
return "88119b68-9d08-40c4-90f5-6dc533fd0257"
114+
109115
def prep_respx(self, **kwargs):
110116
if "body" in kwargs:
111117
kwargs["content"] = kwargs.pop("body")
@@ -148,6 +154,7 @@ def setup_mocks(self, m):
148154
"labs/{}/check_if_converged".format(self.get_test_id()): True,
149155
"labs/{}/check_if_converged".format(self.get_cml24_id()): True,
150156
"labs/{}/nodes/n1/check_if_converged".format(self.get_test_id()): True,
157+
"labs/{}/nodes/{}/check_if_converged".format(self.get_cml24_id(), self.get_cml24_rtr_1()): True,
151158
"users": MockCMLServer.get_users,
152159
}
153160

tests/v2/start.py

+15-8
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@
44

55
from . import BaseCMLTest
66

7+
try:
8+
from unittest.mock import patch
9+
except ImportError:
10+
from mock import patch # type: ignore
11+
712

813
class CMLStartTests(BaseCMLTest):
914
def test_cml_start(self):
@@ -22,13 +27,13 @@ def test_cml_start(self):
2227
def test_cml_start_by_id(self):
2328
with self.get_context() as m:
2429
# Mock the request to return what we expect from the API.
25-
self.setup_func("get", m, "labs/{}/nodes/n2/check_if_converged".format(self.get_test_id()), json=True)
26-
self.setup_func("put", m, "labs/{}/nodes/n2/state/start".format(self.get_test_id()), json=None)
27-
self.setup_func("get", m, "labs/{}/nodes/n2/check_if_converged".format(self.get_test_id()), json=True)
30+
self.setup_func("get", m, "labs/{}/nodes/{}/check_if_converged".format(self.get_cml24_id(), self.get_cml24_rtr_2()), json=True)
31+
self.setup_func("put", m, "labs/{}/nodes/{}/state/start".format(self.get_cml24_id(), self.get_cml24_rtr_2()), json=None)
32+
self.setup_func("get", m, "labs/{}/nodes/{}/check_if_converged".format(self.get_cml24_id(), self.get_cml24_rtr_2()), json=True)
2833
self.setup_mocks(m)
2934
virl = self.get_virl()
3035
runner = CliRunner()
31-
result = runner.invoke(virl, ["start", "--id"], "88119b68-9d08-40c4-90f5-6dc533fd0257")
36+
result = runner.invoke(virl, ["start", "--id"], self.get_cml24_rtr_2())
3237
self.assertEqual(0, result.exit_code)
3338
self.assertNotIn("Node rtr-2 is already active", result.output)
3439

@@ -48,19 +53,21 @@ def test_cml_start_already_active_by_id(self):
4853
self.setup_mocks(m)
4954
virl = self.get_virl()
5055
runner = CliRunner()
51-
result = runner.invoke(virl, ["start", "--id", "88119b68-9d08-40c4-90f5-6dc533fd0256"])
56+
result = runner.invoke(virl, ["start", "--id", self.get_cml24_rtr_1()])
5257
self.assertEqual(0, result.exit_code)
5358
self.assertIn("Node rtr-1 is already active", result.output)
5459

55-
def test_cml_start_missing_args(self):
60+
@patch("virl.cli.stop.commands.call", autospec=False, return_value=0)
61+
def test_cml_start_missing_args(self, call_mock):
5662
with self.get_context() as m:
5763
# Mock the request to return what we expect from the API.
5864
self.setup_mocks(m)
5965
virl = self.get_virl()
6066
runner = CliRunner()
6167
result = runner.invoke(virl, ["start"])
62-
self.assertEqual(1, result.exit_code)
63-
self.assertIn("Usage: cml start", result.output)
68+
self.assertEqual(0, result.exit_code)
69+
# The "call" function was called once
70+
self.assertEqual(1, len(call_mock.mock_calls))
6471

6572
def test_cml_start_bogus_node(self):
6673
with self.get_context() as m:

tests/v2/stop.py

+14-8
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@
33
from click.testing import CliRunner
44

55
from . import BaseCMLTest
6+
try:
7+
from unittest.mock import patch
8+
except ImportError:
9+
from mock import patch # type: ignore
610

711

812
class CMLStopTests(BaseCMLTest):
@@ -17,14 +21,14 @@ def test_cml_stop(self):
1721
self.assertEqual(0, result.exit_code)
1822
self.assertNotIn("Node rtr-1 is already stopped", result.output)
1923

20-
def test_cml_sto_by_id(self):
24+
def test_cml_stop_by_id(self):
2125
with self.get_context() as m:
22-
self.setup_func("get", m, "labs/{}/nodes/n1/check_if_converged".format(self.get_test_id()), json=True)
23-
self.setup_func("put", m, "labs/{}/nodes/n1/state/stop".format(self.get_test_id()), json=None)
26+
self.setup_func("get", m, "labs/{}/nodes/{}/check_if_converged".format(self.get_cml24_id(), self.get_cml24_rtr_1()), json=True)
27+
self.setup_func("put", m, "labs/{}/nodes/{}/state/stop".format(self.get_cml24_id(), self.get_cml24_rtr_1()), json=None)
2428
self.setup_mocks(m)
2529
virl = self.get_virl()
2630
runner = CliRunner()
27-
result = runner.invoke(virl, ["stop", "--id", "88119b68-9d08-40c4-90f5-6dc533fd0256"])
31+
result = runner.invoke(virl, ["stop", "--id", self.get_cml24_rtr_1()])
2832
self.assertEqual(0, result.exit_code)
2933
self.assertNotIn("Node rtr-1 is already stopped", result.output)
3034

@@ -44,19 +48,21 @@ def test_cml_stop_already_stopped_by_id(self):
4448
self.setup_mocks(m)
4549
virl = self.get_virl()
4650
runner = CliRunner()
47-
result = runner.invoke(virl, ["stop", "--id", "88119b68-9d08-40c4-90f5-6dc533fd0257"])
51+
result = runner.invoke(virl, ["stop", "--id", self.get_cml24_rtr_2()])
4852
self.assertEqual(0, result.exit_code)
4953
self.assertIn("Node rtr-2 is already stopped", result.output)
5054

51-
def test_cml_stop_missing_args(self):
55+
@patch("virl.cli.stop.commands.call", autospec=False, return_value=0)
56+
def test_cml_stop_missing_args(self, call_mock):
5257
with self.get_context() as m:
5358
# Mock the request to return what we expect from the API.
5459
self.setup_mocks(m)
5560
virl = self.get_virl()
5661
runner = CliRunner()
5762
result = runner.invoke(virl, ["stop"])
58-
self.assertEqual(1, result.exit_code)
59-
self.assertIn("Usage: cml stop", result.output)
63+
self.assertEqual(0, result.exit_code)
64+
# The "call" function was called once
65+
self.assertEqual(1, len(call_mock.mock_calls))
6066

6167
def test_cml_stop_bogus_node(self):
6268
with self.get_context() as m:

0 commit comments

Comments
 (0)