]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: Add dashboard to mon_command reference docs
authorSebastian Wagner <sebastian.wagner@suse.com>
Fri, 24 Apr 2020 09:22:28 +0000 (11:22 +0200)
committerSebastian Wagner <sebastian.wagner@suse.com>
Tue, 5 May 2020 10:51:50 +0000 (12:51 +0200)
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
src/pybind/mgr/dashboard/__init__.py
src/pybind/mgr/dashboard/conftest.py [deleted file]
src/pybind/mgr/tests/__init__.py

index 78879986398d8f1f4060077f337b801bcb72df78..25a7f19f3c6370ccf35eb52b6f93046fbdc8b40b 100644 (file)
@@ -23,8 +23,6 @@ if 'UNITTEST' not in os.environ:
 
     mgr = _ModuleProxy()
 
-    # DO NOT REMOVE: required for ceph-mgr to load a module
-    from .module import Module, StandbyModule  # noqa: F401
 else:
     import logging
     logging.basicConfig(level=logging.DEBUG)
@@ -32,7 +30,12 @@ else:
     os.environ['PATH'] = '{}:{}'.format(os.path.abspath('../../../../build/bin'),
                                         os.environ['PATH'])
 
-    from tests import mock  # type: ignore
+    from tests import mock, mock_ceph_modules  # type: ignore
 
     mgr = mock.Mock()
     mgr.get_frontend_path.side_effect = lambda: os.path.abspath("./frontend/dist")
+
+    mock_ceph_modules()
+
+# DO NOT REMOVE: required for ceph-mgr to load a module
+from .module import Module, StandbyModule  # noqa: F401
diff --git a/src/pybind/mgr/dashboard/conftest.py b/src/pybind/mgr/dashboard/conftest.py
deleted file mode 100644 (file)
index 8b5e9ac..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-import sys
-
-try:
-    from mock import Mock, patch
-except ImportError:
-    from unittest.mock import Mock, patch
-
-
-class MockRadosError(Exception):
-    def __init__(self, message, errno=None):
-        super(MockRadosError, self).__init__(message)
-        self.errno = errno
-
-    def __str__(self):
-        msg = super(MockRadosError, self).__str__()
-        if self.errno is None:
-            return msg
-        return '[errno {0}] {1}'.format(self.errno, msg)
-
-
-def pytest_configure(config):
-    sys.modules.update({
-        'rados': Mock(Error=MockRadosError, OSError=MockRadosError),
-        'rbd': Mock(),
-        'cephfs': Mock(),
-    })
-
-    # we need the following patches to fix the issue of multiple inheritance when
-    # one of the base classes is being mocked.
-    # Error example:
-    # TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) \
-    # subclass of the metaclasses of all its bases
-    class _BaseMgrModule:
-        pass
-
-    patcher = patch("ceph_module.BaseMgrStandbyModule", new=_BaseMgrModule)
-    patcher.start()
-    patcher = patch("ceph_module.BaseMgrModule", new=_BaseMgrModule)
-    patcher.start()
index 79c2350ee54fc835b753e1f54c2a1178d92da5c4..ed49052de53756d14c3785c3ed2f8cb9dce63aa4 100644 (file)
@@ -36,3 +36,22 @@ if 'UNITTEST' in os.environ:
     cm.BaseMgrModule = M
     cm.BaseMgrStandbyModule = M
     sys.modules['ceph_module'] = cm
+
+    def mock_ceph_modules():
+        class MockRadosError(Exception):
+            def __init__(self, message, errno=None):
+                super(MockRadosError, self).__init__(message)
+                self.errno = errno
+
+            def __str__(self):
+                msg = super(MockRadosError, self).__str__()
+                if self.errno is None:
+                    return msg
+                return '[errno {0}] {1}'.format(self.errno, msg)
+
+
+        sys.modules.update({
+            'rados': mock.Mock(Error=MockRadosError, OSError=MockRadosError),
+            'rbd': mock.Mock(),
+            'cephfs': mock.Mock(),
+        })
\ No newline at end of file