Esempio n. 1
0
    def test_should_get_all_and_unmanaged_volumes(self):
        attachments = [ATTACHMENT, ATTACHMENT]
        self.resource.get_all.return_value = attachments
        self.resource.get_extra_unmanaged_storage_volumes.return_value = {
            'subresource': 'value'
        }

        params = dict(config='config.json',
                      options=[{
                          'extraUnmanagedStorageVolumes': {
                              'start': 1,
                              'count': 5,
                              'filter': 'test',
                              'sort': 'test'
                          }
                      }])

        self.mock_ansible_module.params = params

        StorageVolumeAttachmentFactsModule().run()

        self.resource.get_extra_unmanaged_storage_volumes.assert_called_once_with(
            start=1, count=5, filter='test', sort='test')

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            ansible_facts=dict(
                storage_volume_attachments=attachments,
                extra_unmanaged_storage_volumes={'subresource': 'value'}))
Esempio n. 2
0
    def test_should_get_one_with_options(self):
        self.resource.URI = "/rest/storage-volume-attachments"

        obj = mock.Mock()
        obj.data = RETURN_GET_BY_PROFILE_AND_VOLUME
        self.resource.get_by_uri.return_value = obj

        params_get_all_options = dict(
            config='config.json',
            serverProfileName="ProfileTest",
            storageVolumeUri=
            "/rest/storage-volumes/12345-AAA-BBBB-CCCC-121212AA",
            options=['extraUnmanagedStorageVolumes', 'paths'])

        self.mock_ansible_module.params = params_get_all_options

        self.resource.get_extra_unmanaged_storage_volumes.return_value = {
            'subresource': 'value'
        }

        self.resource.get_paths.return_value = {'subresource': 'value'}

        StorageVolumeAttachmentFactsModule().run()

        self.resource.get_by_uri.assert_called_once_with(URI)

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            ansible_facts=dict(
                storage_volume_attachments=([ATTACHMENT]),
                storage_volume_attachment_paths={'subresource': 'value'},
                extra_unmanaged_storage_volumes={'subresource': 'value'}))
Esempio n. 3
0
    def test_should_get_one_and_path_uri(self):
        self.resource.get_paths.return_value = {'subresource': 'value'}
        obj = mock.Mock()
        obj.data = RETURN_GET_BY_PROFILE_AND_VOLUME
        self.resource.get_by_uri.return_value = obj
        self.resource.URI = "/rest/storage-volume-attachments"

        params_get_path = dict(
            config='config.json',
            serverProfileName="ProfileTest",
            storageVolumeUri=
            "/rest/storage-volumes/12345-AAA-BBBB-CCCC-121212AA",
            options=[{
                'paths': {
                    'pathUri': '/test/uri/AAA-NNN-878787H'
                }
            }])

        self.mock_ansible_module.params = params_get_path

        StorageVolumeAttachmentFactsModule().run()

        self.resource.get_by_uri.assert_called_once_with(URI)
        self.resource.get_paths.assert_called_once_with(
            '/test/uri/AAA-NNN-878787H')

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            ansible_facts=dict(storage_volume_attachments=[ATTACHMENT],
                               storage_volume_attachment_paths=[{
                                   'subresource':
                                   'value'
                               }]))
Esempio n. 4
0
    def test_should_get_all(self):
        attachments = [ATTACHMENT, ATTACHMENT]
        self.resource.get_all.return_value = attachments
        self.mock_ansible_module.params = PARAMS_GET_ALL

        StorageVolumeAttachmentFactsModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            ansible_facts=dict(storage_volume_attachments=attachments))
Esempio n. 5
0
    def test_should_fail_when_get_by_server_name_and_not_inform_volume(self):
        self.resource.get.return_value = RETURN_GET_BY_PROFILE_AND_VOLUME

        params = PARAMS_GET_ONE_VOLUME_NAME.copy()
        params['storageVolumeName'] = None

        self.mock_ansible_module.params = params

        StorageVolumeAttachmentFactsModule().run()

        self.mock_ansible_module.fail_json.assert_called_once_with(
            exception=mock.ANY,
            msg=StorageVolumeAttachmentFactsModule.ATTACHMENT_KEY_REQUIRED)
Esempio n. 6
0
    def test_should_get_by_server_name_and_volume_uri(self):
        obj = mock.Mock()
        obj.data = RETURN_GET_BY_PROFILE_AND_VOLUME
        self.resource.get_by_uri.return_value = obj
        self.resource.URI = "/rest/storage-volume-attachments"

        self.mock_ansible_module.params = PARAMS_GET_ONE

        StorageVolumeAttachmentFactsModule().run()

        self.resource.get_by_uri.assert_called_once_with(URI)

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            ansible_facts=dict(storage_volume_attachments=([ATTACHMENT])))
Esempio n. 7
0
    def test_should_get_by_storage_volume_attachment_uri(self):
        obj = mock.Mock()
        obj.data = RETURN_GET_BY_PROFILE_AND_VOLUME
        self.resource.get_by_uri.return_value = obj
        self.resource.get.return_value = {
            "name": "Storage Volume Attachment Name"
        }
        self.resource.URI = "/rest/storage-volume-attachments"

        params_get_by_uri = dict(
            config='config.json',
            storageVolumeAttachmentUri=
            "/rest/storage-volume-attachments/ED247E27-011B-44EB-9E1B-5891011")

        self.mock_ansible_module.params = params_get_by_uri

        StorageVolumeAttachmentFactsModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            ansible_facts=dict(storage_volume_attachments=([obj])))
Esempio n. 8
0
    def test_should_get_all_and_unmanaged_volumes_without_params(self):
        attachments = [ATTACHMENT, ATTACHMENT]
        self.resource.get_all.return_value = attachments
        self.resource.get_extra_unmanaged_storage_volumes.return_value = {
            'subresource': 'value'
        }

        params = dict(config='config.json',
                      options=['extraUnmanagedStorageVolumes'])

        self.mock_ansible_module.params = params

        StorageVolumeAttachmentFactsModule().run()

        self.resource.get_extra_unmanaged_storage_volumes.assert_called_once_with(
        )

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            ansible_facts=dict(
                storage_volume_attachments=attachments,
                extra_unmanaged_storage_volumes={'subresource': 'value'}))
Esempio n. 9
0
    def test_should_get_by_server_name_and_volume_name(self):
        obj = mock.Mock()
        obj.data = RETURN_GET_BY_PROFILE_AND_VOLUME
        self.resource.get_by_uri.return_value = obj
        self.resource.URI = "/rest/storage-volume-attachments"

        self.mock_ov_client.volumes.get_by.return_value = [{
            "uri":
            "/rest/storage-volumes/12345-AAA-BBBB-CCCC-121212AA"
        }]

        self.mock_ansible_module.params = PARAMS_GET_ONE_VOLUME_NAME

        StorageVolumeAttachmentFactsModule().run()

        self.mock_ov_client.volumes.get_by.assert_called_once_with(
            'name', 'VolumeTest')
        self.resource.get_by_uri.assert_called_once_with(URI)

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            ansible_facts=dict(storage_volume_attachments=([ATTACHMENT])))