def test_execute_confirms_lock(self, mock_log):
     self.img_repo.get.return_value.extra_properties = {
         'os_glance_import_task': TASK_ID1}
     wrapper = import_flow.ImportActionWrapper(self.img_repo, IMAGE_ID1,
                                               TASK_ID1)
     imagelock = import_flow._ImageLock(TASK_ID1, TASK_TYPE, wrapper)
     imagelock.execute()
     mock_log.debug.assert_called_once_with('Image %(image)s import task '
                                            '%(task)s lock confirmed',
                                            {'image': IMAGE_ID1,
                                             'task': TASK_ID1})
 def test_revert_drops_lock_missing(self, mock_log):
     wrapper = import_flow.ImportActionWrapper(self.img_repo, IMAGE_ID1,
                                               TASK_ID1)
     imagelock = import_flow._ImageLock(TASK_ID1, TASK_TYPE, wrapper)
     with mock.patch.object(wrapper, 'drop_lock_for_task') as mock_drop:
         mock_drop.side_effect = exception.NotFound()
         imagelock.revert(None)
     mock_log.warning.assert_called_once_with('Image %(image)s import task '
                                              '%(task)s lost its lock '
                                              'during execution!',
                                              {'image': IMAGE_ID1,
                                               'task': TASK_ID1})
 def test_revert_drops_lock(self, mock_log):
     wrapper = import_flow.ImportActionWrapper(self.img_repo, IMAGE_ID1,
                                               TASK_ID1)
     imagelock = import_flow._ImageLock(TASK_ID1, TASK_TYPE, wrapper)
     with mock.patch.object(wrapper, 'drop_lock_for_task') as mock_drop:
         imagelock.revert(None)
         mock_drop.assert_called_once_with()
     mock_log.debug.assert_called_once_with('Image %(image)s import task '
                                            '%(task)s dropped its lock '
                                            'after failure',
                                            {'image': IMAGE_ID1,
                                             'task': TASK_ID1})
Пример #4
0
 def test_execute_confirms_lock_not_held(self, mock_log):
     wrapper = import_flow.ImportActionWrapper(self.img_repo, IMAGE_ID1,
                                               TASK_ID1)
     imagelock = import_flow._ImageLock(TASK_ID1, TASK_TYPE, wrapper)
     self.assertRaises(exception.TaskAbortedError, imagelock.execute)