cubicweb/test/unittest_cwctl.py
changeset 12736 5add82b08a6d
parent 12735 17d1b1f4eddd
child 12737 56f7386bc6b9
--- a/cubicweb/test/unittest_cwctl.py	Thu Jul 25 03:33:01 2019 +0200
+++ b/cubicweb/test/unittest_cwctl.py	Tue May 21 18:08:17 2019 +0200
@@ -108,8 +108,11 @@
         self.CWCTL.register(_TestCommand)
         self.CWCTL.register(_TestFailCommand)
 
+        self.fake_config = MagicMock()
+        self.fake_config.global_set_option = MagicMock()
+
         # pretend that this instance exists
-        patcher = patch.object(cwcfg, 'config_for', return_value=object())
+        patcher = patch.object(cwcfg, 'config_for', return_value=self.fake_config)
         patcher.start()
         self.addCleanup(patcher.stop)
 
@@ -167,6 +170,17 @@
 
         test_fail_instance.assert_called_once()
 
+    def test_set_loglevel(self):
+        LOG_LEVELS = ('debug', 'info', 'warning', 'error')
+
+        for log_level in LOG_LEVELS:
+            with self.assertRaises(SystemExit) as cm:
+                self.CWCTL.run(["test", "some_instance", "--loglevel", log_level])
+            self.assertEqual(cm.exception.code, 0)
+
+            self.fake_config.global_set_option.assert_called_with('log-threshold',
+                                                                  log_level.upper())
+
 
 if __name__ == '__main__':
     unittest.main()