Пример #1
0
 def test_success_file(self):
     self.mock_runner.run.return_value = "", "", 0
     lib.upgrade_cib(self.mock_runner, rc("cib-empty.xml"))
     self.mock_runner.run.assert_called_once_with(
         ["/usr/sbin/cibadmin", "--upgrade", "--force"],
         env_extend={
             "CIB_file": rc("cib-empty.xml"),
         })
Пример #2
0
 def test_unable_to_parse_upgraded_cib(self, mock_named_file):
     mock_file = mock.MagicMock()
     mock_file.name = "mock_file_name"
     mock_file.read.return_value = "not xml"
     mock_named_file.return_value = mock_file
     self.mock_runner.run.return_value = ("", "", 0)
     assert_raise_library_error(
         lambda: lib.upgrade_cib(etree.XML("<old_cib/>"), self.mock_runner),
         (
             severities.ERROR,
             report_codes.CIB_UPGRADE_FAILED,
             {
                 "reason":
                     "Start tag expected, '<' not found, line 1, column 1",
             }
         )
     )
     mock_named_file.assert_called_once_with("w+", suffix=".pcs")
     mock_file.write.assert_called_once_with("<old_cib/>")
     mock_file.flush.assert_called_once_with()
     self.mock_runner.run.assert_called_once_with(
         [
             join(settings.pacemaker_binaries, "cibadmin"),
             "--upgrade",
             "--force"
         ],
         env_extend={"CIB_file": "mock_file_name"}
     )
     mock_file.seek.assert_called_once_with(0)
     mock_file.read.assert_called_once_with()
Пример #3
0
 def test_upgrade_failed(self, mock_named_file):
     mock_file = mock.MagicMock()
     mock_file.name = "mock_file_name"
     mock_named_file.return_value = mock_file
     self.mock_runner.run.return_value = ("some info", "some error", 1)
     assert_raise_library_error(
         lambda: lib.upgrade_cib(etree.XML("<old_cib/>"), self.mock_runner),
         (
             severities.ERROR,
             report_codes.CIB_UPGRADE_FAILED,
             {
                 "reason": "some error\nsome info",
             }
         )
     )
     mock_named_file.assert_called_once_with("w+", suffix=".pcs")
     mock_file.write.assert_called_once_with("<old_cib/>")
     mock_file.flush.assert_called_once_with()
     self.mock_runner.run.assert_called_once_with(
         [
             join(settings.pacemaker_binaries, "cibadmin"),
             "--upgrade",
             "--force"
         ],
         env_extend={"CIB_file": "mock_file_name"}
     )
Пример #4
0
 def test_success(self, mock_named_file):
     mock_file = mock.MagicMock()
     mock_file.name = "mock_file_name"
     mock_file.read.return_value = "<cib/>"
     mock_named_file.return_value = mock_file
     self.mock_runner.run.return_value = ("", "", 0)
     assert_xml_equal(
         "<cib/>",
         etree.tostring(
             lib.upgrade_cib(etree.XML("<old_cib/>"), self.mock_runner)
         ).decode()
     )
     mock_named_file.assert_called_once_with("w+", suffix=".pcs")
     mock_file.write.assert_called_once_with("<old_cib/>")
     mock_file.flush.assert_called_once_with()
     self.mock_runner.run.assert_called_once_with(
         [
             join(settings.pacemaker_binaries, "cibadmin"),
             "--upgrade",
             "--force"
         ],
         env_extend={"CIB_file": "mock_file_name"}
     )
     mock_file.seek.assert_called_once_with(0)
     mock_file.read.assert_called_once_with()
Пример #5
0
 def test_unable_to_parse_upgraded_cib(self, mock_named_file):
     mock_file = mock.MagicMock()
     mock_file.name = "mock_file_name"
     mock_file.read.return_value = "not xml"
     mock_named_file.return_value = mock_file
     self.mock_runner.run.return_value = ("", "", 0)
     assert_raise_library_error(
         lambda: lib.upgrade_cib(etree.XML("<old_cib/>"), self.mock_runner),
         (
             severities.ERROR,
             report_codes.CIB_UPGRADE_FAILED,
             {
                 "reason":
                     "Start tag expected, '<' not found, line 1, column 1",
             }
         )
     )
     mock_named_file.assert_called_once_with("w+", suffix=".pcs")
     mock_file.write.assert_called_once_with("<old_cib/>")
     mock_file.flush.assert_called_once_with()
     self.mock_runner.run.assert_called_once_with(
         [
             join(settings.pacemaker_binaries, "cibadmin"),
             "--upgrade",
             "--force"
         ],
         env_extend={"CIB_file": "mock_file_name"}
     )
     mock_file.seek.assert_called_once_with(0)
     mock_file.read.assert_called_once_with()
Пример #6
0
 def test_upgrade_failed(self, mock_named_file):
     mock_file = mock.MagicMock()
     mock_file.name = "mock_file_name"
     mock_named_file.return_value = mock_file
     self.mock_runner.run.return_value = ("some info", "some error", 1)
     assert_raise_library_error(
         lambda: lib.upgrade_cib(etree.XML("<old_cib/>"), self.mock_runner),
         (
             severities.ERROR,
             report_codes.CIB_UPGRADE_FAILED,
             {
                 "reason": "some error\nsome info",
             }
         )
     )
     mock_named_file.assert_called_once_with("w+", suffix=".pcs")
     mock_file.write.assert_called_once_with("<old_cib/>")
     mock_file.flush.assert_called_once_with()
     self.mock_runner.run.assert_called_once_with(
         [
             join(settings.pacemaker_binaries, "cibadmin"),
             "--upgrade",
             "--force"
         ],
         env_extend={"CIB_file": "mock_file_name"}
     )
Пример #7
0
 def test_success(self, mock_named_file):
     mock_file = mock.MagicMock()
     mock_file.name = "mock_file_name"
     mock_file.read.return_value = "<cib/>"
     mock_named_file.return_value = mock_file
     self.mock_runner.run.return_value = ("", "", 0)
     assert_xml_equal(
         "<cib/>",
         etree.tostring(
             lib.upgrade_cib(etree.XML("<old_cib/>"), self.mock_runner)
         ).decode()
     )
     mock_named_file.assert_called_once_with("w+", suffix=".pcs")
     mock_file.write.assert_called_once_with("<old_cib/>")
     mock_file.flush.assert_called_once_with()
     self.mock_runner.run.assert_called_once_with(
         [
             join(settings.pacemaker_binaries, "cibadmin"),
             "--upgrade",
             "--force"
         ],
         env_extend={"CIB_file": "mock_file_name"}
     )
     mock_file.seek.assert_called_once_with(0)
     mock_file.read.assert_called_once_with()
Пример #8
0
 def test_error(self):
     error = "Call cib_upgrade failed (-62): Timer expired"
     self.mock_runner.run.return_value = "", error, 62
     assert_raise_library_error(
         lambda: lib.upgrade_cib(self.mock_runner),
         (severities.ERROR, report_codes.CIB_UPGRADE_FAILED, {
             "reason": error,
         }))
     self.mock_runner.run.assert_called_once_with(
         ["/usr/sbin/cibadmin", "--upgrade", "--force"], env_extend={})
Пример #9
0
 def test_success(self):
     self.mock_runner.run.return_value = "", "", 0
     lib.upgrade_cib(self.mock_runner)
     self.mock_runner.run.assert_called_once_with(
         ["/usr/sbin/cibadmin", "--upgrade", "--force"], env_extend={})