コード例 #1
0
    def test_execute(self):
        wrapper = mock.MagicMock()
        action = mock.MagicMock()
        task_repo = mock.MagicMock()
        wrapper.__enter__.return_value = action
        image_import = import_flow._ImportToStore(TASK_ID1, TASK_TYPE,
                                                  task_repo, wrapper,
                                                  "http://url", "store1",
                                                  False, True)
        # Assert file_path is honored
        with mock.patch.object(image_import, '_execute') as mock_execute:
            image_import.execute(mock.sentinel.path)
            mock_execute.assert_called_once_with(action, mock.sentinel.path)

        # Assert file_path is optional
        with mock.patch.object(image_import, '_execute') as mock_execute:
            image_import.execute()
            mock_execute.assert_called_once_with(action, None)
コード例 #2
0
 def test_remove_store_from_property(self, mock_import):
     img_repo = mock.MagicMock()
     task_repo = mock.MagicMock()
     wrapper = import_flow.ImportActionWrapper(img_repo, IMAGE_ID1,
                                               TASK_ID1)
     image_import = import_flow._ImportToStore(TASK_ID1, TASK_TYPE,
                                               task_repo, wrapper,
                                               "http://url",
                                               "store1", True,
                                               True)
     extra_properties = {"os_glance_importing_to_stores": "store1,store2",
                         "os_glance_import_task": TASK_ID1}
     image = self.img_factory.new_image(image_id=UUID1,
                                        extra_properties=extra_properties)
     img_repo.get.return_value = image
     image_import.execute()
     self.assertEqual(
         image.extra_properties['os_glance_importing_to_stores'], "store2")
コード例 #3
0
 def test_doesnt_raise_when_not_all_stores_must_succeed(self, mock_import):
     img_repo = mock.MagicMock()
     task_repo = mock.MagicMock()
     wrapper = import_flow.ImportActionWrapper(img_repo, IMAGE_ID1,
                                               TASK_ID1)
     image_import = import_flow._ImportToStore(TASK_ID1, TASK_TYPE,
                                               task_repo, wrapper,
                                               "http://url", "store1",
                                               False, True)
     extra_properties = {'os_glance_import_task': TASK_ID1}
     image = self.img_factory.new_image(image_id=UUID1,
                                        extra_properties=extra_properties)
     img_repo.get.return_value = image
     mock_import.set_image_data.side_effect = \
         cursive_exception.SignatureVerificationError(
             "Signature verification failed")
     try:
         image_import.execute()
         self.assertEqual(image.extra_properties['os_glance_failed_import'],
                          "store1")
     except cursive_exception.SignatureVerificationError:
         self.fail("Exception shouldn't be raised")