def test_live_migration_run_tasks_no_tasks(self, mock_pause, mock_postcopy): active_migrations = {} on_migration_failure = deque() mig = objects.Migration(id=1, status="running") migration.run_tasks(self.guest, self.instance, active_migrations, on_migration_failure, mig, False) self.assertFalse(mock_pause.called) self.assertFalse(mock_postcopy.called) self.assertEqual(len(on_migration_failure), 0)
def test_live_migration_run_tasks_force_complete_postcopy( self, mock_pause, mock_postcopy, mock_msave): tasks = deque() tasks.append("force-complete") active_migrations = {self.instance.uuid: tasks} on_migration_failure = deque() mig = objects.Migration(id=1, status="running") migration.run_tasks(self.guest, self.instance, active_migrations, on_migration_failure, mig, True) mock_postcopy.assert_called_once_with() self.assertFalse(mock_pause.called) self.assertEqual(len(on_migration_failure), 0)
def test_live_migration_run_tasks_no_force_complete( self, mock_pause, mock_postcopy): tasks = deque() # Test to ensure unknown tasks are ignored tasks.append("wibble") active_migrations = {self.instance.uuid: tasks} on_migration_failure = deque() mig = objects.Migration(id=1, status="running") migration.run_tasks(self.guest, self.instance, active_migrations, on_migration_failure, mig, False) self.assertFalse(mock_pause.called) self.assertFalse(mock_postcopy.called) self.assertEqual(len(on_migration_failure), 0)
def test_live_migration_run_tasks_force_complete_postcopy(self, mock_pause, mock_postcopy, mock_msave): tasks = deque() tasks.append("force-complete") active_migrations = {self.instance.uuid: tasks} on_migration_failure = deque() mig = objects.Migration(id=1, status="running") migration.run_tasks(self.guest, self.instance, active_migrations, on_migration_failure, mig, True) mock_postcopy.assert_called_once_with() self.assertFalse(mock_pause.called) self.assertEqual(len(on_migration_failure), 0)
def test_live_migration_run_tasks_no_force_complete(self, mock_pause, mock_postcopy): tasks = deque() # Test to ensure unknown tasks are ignored tasks.append("wibble") active_migrations = {self.instance.uuid: tasks} on_migration_failure = deque() mig = objects.Migration(id=1, status="running") migration.run_tasks(self.guest, self.instance, active_migrations, on_migration_failure, mig, False) self.assertFalse(mock_pause.called) self.assertFalse(mock_postcopy.called) self.assertEqual(len(on_migration_failure), 0)