|
@@ -682,6 +682,65 @@ class TestActionQueue(TestCase):
|
|
self.assertEqual(report['componentStatus'][0], expected)
|
|
self.assertEqual(report['componentStatus'][0], expected)
|
|
self.assertTrue(requestComponentStatus_mock.called)
|
|
self.assertTrue(requestComponentStatus_mock.called)
|
|
|
|
|
|
|
|
+ @patch.object(RecoveryManager, "command_exists")
|
|
|
|
+ @patch.object(RecoveryManager, "requires_recovery")
|
|
|
|
+ @patch.object(OSCheck, "os_distribution", new = MagicMock(return_value = os_distro_value))
|
|
|
|
+ @patch.object(ActionQueue, "status_update_callback")
|
|
|
|
+ @patch.object(StackVersionsFileHandler, "read_stack_version")
|
|
|
|
+ @patch.object(CustomServiceOrchestrator, "requestComponentStatus")
|
|
|
|
+ @patch.object(CustomServiceOrchestrator, "requestComponentSecurityState")
|
|
|
|
+ @patch.object(ActionQueue, "execute_command")
|
|
|
|
+ @patch.object(LiveStatus, "build")
|
|
|
|
+ @patch.object(CustomServiceOrchestrator, "__init__")
|
|
|
|
+ def test_execute_status_command_recovery(self, CustomServiceOrchestrator_mock,
|
|
|
|
+ build_mock, execute_command_mock, requestComponentSecurityState_mock,
|
|
|
|
+ requestComponentStatus_mock, read_stack_version_mock,
|
|
|
|
+ status_update_callback, requires_recovery_mock,
|
|
|
|
+ command_exists_mock):
|
|
|
|
+ CustomServiceOrchestrator_mock.return_value = None
|
|
|
|
+ dummy_controller = MagicMock()
|
|
|
|
+ actionQueue = ActionQueue(AmbariConfig(), dummy_controller)
|
|
|
|
+
|
|
|
|
+ build_mock.return_value = {'dummy report': '' }
|
|
|
|
+ requires_recovery_mock.return_value = True
|
|
|
|
+ command_exists_mock.return_value = False
|
|
|
|
+
|
|
|
|
+ dummy_controller.recovery_manager = RecoveryManager(tempfile.mktemp(), True, False)
|
|
|
|
+
|
|
|
|
+ requestComponentStatus_mock.reset_mock()
|
|
|
|
+ requestComponentStatus_mock.return_value = {'exitcode': 0 }
|
|
|
|
+
|
|
|
|
+ requestComponentSecurityState_mock.reset_mock()
|
|
|
|
+ requestComponentSecurityState_mock.return_value = 'UNKNOWN'
|
|
|
|
+
|
|
|
|
+ actionQueue.execute_status_command(self.status_command)
|
|
|
|
+ report = actionQueue.result()
|
|
|
|
+ expected = {'dummy report': '',
|
|
|
|
+ 'securityState' : 'UNKNOWN',
|
|
|
|
+ 'sendExecCmdDet': 'True'}
|
|
|
|
+
|
|
|
|
+ self.assertEqual(len(report['componentStatus']), 1)
|
|
|
|
+ self.assertEqual(report['componentStatus'][0], expected)
|
|
|
|
+ self.assertTrue(requestComponentStatus_mock.called)
|
|
|
|
+
|
|
|
|
+ requires_recovery_mock.return_value = True
|
|
|
|
+ command_exists_mock.return_value = True
|
|
|
|
+ requestComponentStatus_mock.reset_mock()
|
|
|
|
+ requestComponentStatus_mock.return_value = {'exitcode': 0 }
|
|
|
|
+
|
|
|
|
+ requestComponentSecurityState_mock.reset_mock()
|
|
|
|
+ requestComponentSecurityState_mock.return_value = 'UNKNOWN'
|
|
|
|
+
|
|
|
|
+ actionQueue.execute_status_command(self.status_command)
|
|
|
|
+ report = actionQueue.result()
|
|
|
|
+ expected = {'dummy report': '',
|
|
|
|
+ 'securityState' : 'UNKNOWN',
|
|
|
|
+ 'sendExecCmdDet': 'False'}
|
|
|
|
+
|
|
|
|
+ self.assertEqual(len(report['componentStatus']), 1)
|
|
|
|
+ self.assertEqual(report['componentStatus'][0], expected)
|
|
|
|
+ self.assertTrue(requestComponentStatus_mock.called)
|
|
|
|
+
|
|
@patch.object(OSCheck, "os_distribution", new = MagicMock(return_value = os_distro_value))
|
|
@patch.object(OSCheck, "os_distribution", new = MagicMock(return_value = os_distro_value))
|
|
@patch.object(ActionQueue, "status_update_callback")
|
|
@patch.object(ActionQueue, "status_update_callback")
|
|
@patch.object(StackVersionsFileHandler, "read_stack_version")
|
|
@patch.object(StackVersionsFileHandler, "read_stack_version")
|