Example #1
0
    def test_install_install_error(self):

        from reddwarf.guestagent import pkg
        self.mySqlApp.start_mysql = Mock()
        self.mySqlApp.stop_mysql = Mock()
        self.mySqlApp.is_installed = Mock(return_value=False)
        self.mySqlApp._install_mysql = \
            Mock(side_effect=pkg.PkgPackageStateError("Install error"))

        self.assertRaises(pkg.PkgPackageStateError,
                          self.mySqlApp.install_if_needed)

        self.assert_reported_status(ServiceStatuses.NEW)
Example #2
0
    def test_secure_write_conf_error(self):

        from reddwarf.guestagent import pkg
        self.mySqlApp.start_mysql = Mock()
        self.mySqlApp.stop_mysql = Mock()
        self.mySqlApp._write_mycnf = \
            Mock(side_effect=pkg.PkgPackageStateError("Install error"))
        self.mysql_stops_successfully()
        self.mysql_starts_successfully()
        dbaas.create_engine = Mock()

        self.assertRaises(pkg.PkgPackageStateError, self.mySqlApp.secure, 100)

        self.assertTrue(self.mySqlApp.stop_mysql.called)
        self.assertTrue(self.mySqlApp._write_mycnf.called)
        self.assert_reported_status(ServiceStatuses.NEW)
Example #3
0
    def test_secure_with_mycnf_error(self):
        mock_conn = mock_sql_connection()
        when(mock_conn).execute(any()).thenReturn(None)
        when(utils).execute_with_timeout("sudo", any(str),
                                         "stop").thenReturn(None)
        when(pkg).pkg_install("dbaas-mycnf", any()).thenRaise(
            pkg.PkgPackageStateError("Install error"))
        # skip writing the file for now
        when(os.path).isfile(any()).thenReturn(False)
        mock_status = mock(MySqlAppStatus)
        when(mock_status).wait_for_real_status_to_change_to(
            any(), any(), any()).thenReturn(True)
        app = MySqlApp(mock_status)

        self.assertRaises(pkg.PkgPackageStateError, app.secure, 2048)

        verify(mock_conn, atleast=2).execute(any())
        inorder.verify(mock_status).wait_for_real_status_to_change_to(
            ServiceStatuses.SHUTDOWN, any(), any())
        verifyNoMoreInteractions(mock_status)