diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
commit | 19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch) | |
tree | 42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /src/pybind/mgr/dashboard/tests/test_daemon.py | |
parent | Initial commit. (diff) | |
download | ceph-upstream/16.2.11+ds.tar.xz ceph-upstream/16.2.11+ds.zip |
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/pybind/mgr/dashboard/tests/test_daemon.py')
-rw-r--r-- | src/pybind/mgr/dashboard/tests/test_daemon.py | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/pybind/mgr/dashboard/tests/test_daemon.py b/src/pybind/mgr/dashboard/tests/test_daemon.py new file mode 100644 index 000000000..2008c8630 --- /dev/null +++ b/src/pybind/mgr/dashboard/tests/test_daemon.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- + +from ..controllers._version import APIVersion +from ..controllers.daemon import Daemon +from ..tests import ControllerTestCase, patch_orch + + +class DaemonTest(ControllerTestCase): + + URL_DAEMON = '/api/daemon' + + @classmethod + def setup_server(cls): + cls.setup_controllers([Daemon]) + + def test_daemon_action(self): + msg = "Scheduled to stop crash.b78cd1164a1b on host 'hostname'" + + with patch_orch(True) as fake_client: + fake_client.daemons.action.return_value = msg + payload = { + 'action': 'restart', + 'container_image': None + } + self._put(f'{self.URL_DAEMON}/crash.b78cd1164a1b', payload, version=APIVersion(0, 1)) + self.assertJsonBody(msg) + self.assertStatus(200) + + def test_daemon_invalid_action(self): + payload = { + 'action': 'invalid', + 'container_image': None + } + with patch_orch(True): + self._put(f'{self.URL_DAEMON}/crash.b78cd1164a1b', payload, version=APIVersion(0, 1)) + self.assertJsonBody({ + 'detail': 'Daemon action "invalid" is either not valid or not supported.', + 'code': 'invalid_daemon_action', + 'component': None + }) + self.assertStatus(400) |