cinder.tests.unit.api.fakes.HTTPRequest.blank

Here are the examples of the python api cinder.tests.unit.api.fakes.HTTPRequest.blank taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

199 Examples 7

Example 1

Project: cinder Source File: test_qos_specs_manage.py
Function: test_disassociate
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.disassociate_qos_specs',
                side_effect=return_associate_qos_specs)
    def test_disassociate(self, mock_disassociate, mock_get_qos):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/disassociate?vol_type_id=%s' % (
                fake.PROJECT_ID, fake.QOS_SPEC_ID, fake.VOLUME_TYPE_ID))
        res = self.controller.disassociate(req, fake.QOS_SPEC_ID)
        self.assertEqual(202, res.status_int)

Example 2

Project: cinder Source File: test_services.py
    def test_services_enable_with_service_key(self):
        body = {'host': 'host1', 'service': 'cinder-volume'}
        req = fakes.HTTPRequest.blank(
            '/v2/%s/os-services/enable' % fake.PROJECT_ID)
        res_dict = self.controller.update(req, "enable", body)

        self.assertEqual('enabled', res_dict['status'])

Example 3

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.create',
                side_effect=return_qos_specs_create)
    def test_create_failed(self, mock_qos_spec_create):
        body = {"qos_specs": {"name": 'qos_spec_%s' % fake.ACTION_FAILED_ID,
                              "key1": "value1"}}
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs' % fake.PROJECT_ID)

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            self.assertRaises(webob.exc.HTTPInternalServerError,
                              self.controller.create, req, body)
            self.assertEqual(1, notifier.get_notification_count())

Example 4

Project: cinder Source File: test_qos_specs_manage.py
Function: test_associate
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.associate_qos_with_type',
                side_effect=return_associate_qos_specs)
    def test_associate(self, mock_associate, mock_get_qos):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/associate?vol_type_id=%s' %
            (fake.PROJECT_ID, fake.QOS_SPEC_ID, fake.VOLUME_TYPE_ID))
        res = self.controller.associate(req, fake.QOS_SPEC_ID)

        self.assertEqual(202, res.status_int)

Example 5

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.update',
                side_effect=return_qos_specs_update)
    def test_update(self, mock_qos_update):
        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s' %
                                          (fake.PROJECT_ID, fake.QOS_SPEC_ID))
            body = {'qos_specs': {'key1': 'value1',
                                  'key2': 'value2'}}
            res = self.controller.update(req, fake.QOS_SPEC_ID, body)
            self.assertDictMatch(body, res)
            self.assertEqual(1, notifier.get_notification_count())

Example 6

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.delete_keys',
                side_effect=return_qos_specs_delete_keys)
    def test_qos_specs_delete_keys_get_notifier(self, mock_qos_delete_keys):
        body = {"keys": ['bar', 'zoo']}
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s/delete_keys' %
                                      (fake.PROJECT_ID, fake.IN_USE_ID))

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier,
                        autospec=True) as mock_get_notifier:
            self.controller.delete_keys(req, fake.IN_USE_ID, body)
            mock_get_notifier.assert_called_once_with('QoSSpecs')

Example 7

Project: cinder Source File: test_qos_specs_manage.py
Function: test_disassociate_all
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.disassociate_all',
                side_effect=return_disassociate_all)
    def test_disassociate_all(self, mock_disassociate, mock_get_qos):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/disassociate_all' % (
                fake.PROJECT_ID, fake.QOS_SPEC_ID))
        res = self.controller.disassociate_all(req, fake.QOS_SPEC_ID)
        self.assertEqual(202, res.status_int)

Example 8

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.delete',
                side_effect=return_qos_specs_delete)
    def test_qos_specs_delete(self, mock_qos_delete, mock_qos_get_specs):
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s' % (
            fake.PROJECT_ID, fake.QOS_SPEC_ID))
        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            self.controller.delete(req, fake.QOS_SPEC_ID)
            self.assertEqual(1, notifier.get_notification_count())

Example 9

Project: cinder Source File: test_services.py
    def test_services_disable_with_binary_key(self):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/os-services/disable' % fake.PROJECT_ID)
        body = {'host': 'host1', 'binary': 'cinder-volume'}
        res_dict = self.controller.update(req, "disable", body)

        self.assertEqual('disabled', res_dict['status'])

Example 10

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.delete',
                side_effect=return_qos_specs_delete)
    def test_qos_specs_delete_inuse(self, mock_qos_delete,
                                    mock_qos_get_specs):
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s' % (
            fake.PROJECT_ID, fake.IN_USE_ID))

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            self.assertRaises(webob.exc.HTTPBadRequest, self.controller.delete,
                              req, fake.IN_USE_ID)
            self.assertEqual(1, notifier.get_notification_count())

Example 11

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_associations',
                side_effect=return_get_qos_associations)
    def test_get_associations_not_found(self, mock_get_assciations):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/associations' %
            (fake.PROJECT_ID, fake.WILL_NOT_BE_FOUND_ID))
        self.assertRaises(exception.QoSSpecsNotFound,
                          self.controller.associations,
                          req, fake.WILL_NOT_BE_FOUND_ID)

Example 12

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.update',
                side_effect=return_qos_specs_update)
    def test_update_invalid_input(self, mock_qos_update):
        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s' %
                                          (fake.PROJECT_ID, fake.INVALID_ID))
            body = {'qos_specs': {'key1': 'value1',
                                  'key2': 'value2'}}
            self.assertRaises(exception.InvalidQoSSpecs,
                              self.controller.update,
                              req, fake.INVALID_ID, body)
            self.assertEqual(1, notifier.get_notification_count())

Example 13

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.delete_keys',
                side_effect=return_qos_specs_delete_keys)
    def test_qos_specs_delete_keys_qos_notfound(self, mock_qos_specs_delete):
        body = {"keys": ['bar', 'zoo']}
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s/delete_keys' %
                                      (fake.PROJECT_ID,
                                       fake.WILL_NOT_BE_FOUND_ID))

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            self.assertRaises(exception.QoSSpecsNotFound,
                              self.controller.delete_keys,
                              req, fake.WILL_NOT_BE_FOUND_ID, body)
            self.assertEqual(1, notifier.get_notification_count())

Example 14

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.associate_qos_with_type',
                side_effect=return_associate_qos_specs)
    def test_associate_not_found(self, mock_associate, mock_get_qos):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/associate?vol_type_id=%s' % (
                fake.PROJECT_ID, fake.WILL_NOT_BE_FOUND_ID,
                fake.VOLUME_TYPE_ID))
        self.assertRaises(exception.QoSSpecsNotFound,
                          self.controller.associate, req,
                          fake.WILL_NOT_BE_FOUND_ID)

        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/associate?vol_type_id=%s' %
            (fake.PROJECT_ID, fake.QOS_SPEC_ID, fake.WILL_NOT_BE_FOUND_ID))

        self.assertRaises(exception.VolumeTypeNotFound,
                          self.controller.associate, req, fake.QOS_SPEC_ID)

Example 15

Project: cinder Source File: test_qos_specs_manage.py
    def test_index_with_sort_keys(self):
        url = '/v2/%s/qos-specs?sort=id' % fake.PROJECT_ID
        req = fakes.HTTPRequest.blank(url, use_admin_context=True)
        res = self.controller.index(req)
        self.assertEqual(4, len(res['qos_specs']))
        expect_result = [self.qos_id1, self.qos_id2,
                         self.qos_id3, self.qos_id4]
        expect_result.sort(reverse=True)

        self.assertEqual(expect_result[0], res['qos_specs'][0]['id'])
        self.assertEqual(expect_result[1], res['qos_specs'][1]['id'])
        self.assertEqual(expect_result[2], res['qos_specs'][2]['id'])
        self.assertEqual(expect_result[3], res['qos_specs'][3]['id'])

Example 16

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.disassociate_qos_specs',
                side_effect=return_associate_qos_specs)
    def test_disassociate_not_found(self, mock_disassociate, mock_get_qos):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/disassociate?vol_type_id=%s' % (
                fake.PROJECT_ID, fake.WILL_NOT_BE_FOUND_ID,
                fake.VOLUME_TYPE_ID))
        self.assertRaises(exception.QoSSpecsNotFound,
                          self.controller.disassociate, req,
                          fake.WILL_NOT_BE_FOUND_ID)

        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/disassociate?vol_type_id=%s' %
            (fake.PROJECT_ID, fake.VOLUME_TYPE_ID, fake.WILL_NOT_BE_FOUND_ID))
        self.assertRaises(exception.VolumeTypeNotFound,
                          self.controller.disassociate, req,
                          fake.VOLUME_TYPE_ID)

Example 17

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.create',
                side_effect=return_qos_specs_create)
    def test_create_invalid_input(self, mock_qos_get_specs):
        body = {"qos_specs": {"name": 'qos_spec_%s' % fake.INVALID_ID,
                              "consumer": "invalid_consumer"}}
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs' % fake.PROJECT_ID)

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            self.assertRaises(webob.exc.HTTPBadRequest,
                              self.controller.create, req, body)
            self.assertEqual(1, notifier.get_notification_count())

Example 18

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.disassociate_all',
                side_effect=return_disassociate_all)
    def test_disassociate_all_failed(self, mock_disassociate, mock_get):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/disassociate_all' % (
                fake.PROJECT_ID, fake.ACTION2_FAILED_ID))
        self.assertRaises(webob.exc.HTTPInternalServerError,
                          self.controller.disassociate_all, req,
                          fake.ACTION2_FAILED_ID)

Example 19

Project: cinder Source File: test_qos_specs_manage.py
    def test_index_with_offset(self):
        url = '/v2/%s/qos-specs?offset=1' % fake.PROJECT_ID
        req = fakes.HTTPRequest.blank(url, use_admin_context=True)
        res = self.controller.index(req)

        self.assertEqual(3, len(res['qos_specs']))

Example 20

Project: cinder Source File: test_services.py
    def test_services_disable_with_service_key(self):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/os-services/disable' % fake.PROJECT_ID)
        body = {'host': 'host1', 'service': 'cinder-volume'}
        res_dict = self.controller.update(req, "disable", body)

        self.assertEqual('disabled', res_dict['status'])

Example 21

Project: cinder Source File: test_qos_specs_manage.py
    @ddt.data({'name': 'fake_name', 'a' * 256: 'a'},
              {'name': 'fake_name', 'a': 'a' * 256},
              {'name': 'fake_name', '': 'a'})
    def test_create_qos_with_invalid_specs(self, value):
        body = {'qos_specs': value}
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs' % fake.PROJECT_ID,
                                      use_admin_context=True)
        req.method = 'POST'
        self.assertRaises(exception.InvalidInput,
                          self.controller.create, req, body)

Example 22

Project: cinder Source File: test_qos_specs_manage.py
    @ddt.data({'name': None},
              {'name': 'n' * 256},
              {'name': ''},
              {'name': '  '})
    def test_create_qos_with_invalid_spec_name(self, value):
        body = {'qos_specs': value}
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs' % fake.PROJECT_ID,
                                      use_admin_context=True)
        req.method = 'POST'
        self.assertRaises(webob.exc.HTTPBadRequest,
                          self.controller.create, req, body)

Example 23

Project: cinder Source File: test_qos_specs_manage.py
    def test_index_with_limit_and_offset(self):
        url = '/v2/%s/qos-specs?limit=2&offset=1' % fake.PROJECT_ID
        req = fakes.HTTPRequest.blank(url, use_admin_context=True)
        res = self.controller.index(req)

        self.assertEqual(2, len(res['qos_specs']))
        self.assertEqual(self.qos_id3, res['qos_specs'][0]['id'])
        self.assertEqual(self.qos_id2, res['qos_specs'][1]['id'])

Example 24

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.update',
                side_effect=return_qos_specs_update)
    def test_update_not_found(self, mock_qos_update):
        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s' %
                                          (fake.PROJECT_ID,
                                           fake.WILL_NOT_BE_FOUND_ID))
            body = {'qos_specs': {'key1': 'value1',
                                  'key2': 'value2'}}
            self.assertRaises(exception.QoSSpecsNotFound,
                              self.controller.update,
                              req, fake.WILL_NOT_BE_FOUND_ID, body)
            self.assertEqual(1, notifier.get_notification_count())

Example 25

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.delete',
                side_effect=return_qos_specs_delete)
    def test_qos_specs_delete_inuse_force(self, mock_qos_delete,
                                          mock_qos_get_specs):
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s?force=True' %
                                      (fake.PROJECT_ID, fake.IN_USE_ID))

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            self.assertRaises(webob.exc.HTTPInternalServerError,
                              self.controller.delete,
                              req, fake.IN_USE_ID)
            self.assertEqual(1, notifier.get_notification_count())

Example 26

Project: cinder Source File: test_qos_specs_manage.py
Function: test_get_associations
    @mock.patch('cinder.volume.qos_specs.get_associations',
                side_effect=return_get_qos_associations)
    def test_get_associations(self, mock_get_assciations):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/associations' % (
                fake.PROJECT_ID, fake.QOS_SPEC_ID))
        res = self.controller.associations(req, fake.QOS_SPEC_ID)

        self.assertEqual('FakeVolTypeName',
                         res['qos_associations'][0]['name'])
        self.assertEqual(fake.VOLUME_TYPE_ID,
                         res['qos_associations'][0]['id'])

Example 27

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.update',
                side_effect=return_qos_specs_update)
    def test_update_failed(self, mock_qos_update):
        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s' %
                                          (fake.PROJECT_ID,
                                           fake.UPDATE_FAILED_ID))
            body = {'qos_specs': {'key1': 'value1',
                                  'key2': 'value2'}}
            self.assertRaises(webob.exc.HTTPInternalServerError,
                              self.controller.update,
                              req, fake.UPDATE_FAILED_ID, body)
            self.assertEqual(1, notifier.get_notification_count())

Example 28

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.delete_keys',
                side_effect=return_qos_specs_delete_keys)
    def test_qos_specs_delete_keys(self, mock_qos_delete_keys):
        body = {"keys": ['bar', 'zoo']}
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s/delete_keys' %
                                      (fake.PROJECT_ID, fake.IN_USE_ID))

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            self.controller.delete_keys(req, fake.IN_USE_ID, body)
            self.assertEqual(1, notifier.get_notification_count())

Example 29

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_associations',
                side_effect=return_get_qos_associations)
    def test_get_associations_failed(self, mock_get_associations):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/associations' % (
                fake.PROJECT_ID, fake.RAISE_ID))
        self.assertRaises(webob.exc.HTTPInternalServerError,
                          self.controller.associations,
                          req, fake.RAISE_ID)

Example 30

Project: cinder Source File: test_qos_specs_manage.py
    def test_index_with_filter(self):
        url = '/v2/%s/qos-specs?id=%s' % (fake.PROJECT_ID, self.qos_id4)
        req = fakes.HTTPRequest.blank(url, use_admin_context=True)
        res = self.controller.index(req)

        self.assertEqual(1, len(res['qos_specs']))
        self.assertEqual(self.qos_id4, res['qos_specs'][0]['id'])

Example 31

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.associate_qos_with_type',
                side_effect=return_associate_qos_specs)
    def test_associate_no_type(self, mock_associate, mock_get_qos):
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s/associate' %
                                      (fake.PROJECT_ID, fake.QOS_SPEC_ID))
        self.assertRaises(webob.exc.HTTPBadRequest,
                          self.controller.associate, req, fake.QOS_SPEC_ID)

Example 32

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.delete_keys',
                side_effect=return_qos_specs_delete_keys)
    def test_qos_specs_delete_keys_badkey(self, mock_qos_specs_delete):
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s/delete_keys' %
                                      (fake.PROJECT_ID, fake.IN_USE_ID))
        body = {"keys": ['foo', 'zoo']}

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            self.assertRaises(exception.QoSSpecsKeyNotFound,
                              self.controller.delete_keys,
                              req, fake.IN_USE_ID, body)
            self.assertEqual(1, notifier.get_notification_count())

Example 33

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.associate_qos_with_type',
                side_effect=return_associate_qos_specs)
    def test_associate_fail(self, mock_associate, mock_get_qos):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/associate?vol_type_id=%s' %
            (fake.PROJECT_ID, fake.ACTION_FAILED_ID, fake.VOLUME_TYPE_ID))
        self.assertRaises(webob.exc.HTTPInternalServerError,
                          self.controller.associate, req,
                          fake.ACTION_FAILED_ID)

Example 34

Project: cinder Source File: test_qos_specs_manage.py
Function: test_index_with_limit
    def test_index_with_limit(self):
        url = '/v2/%s/qos-specs?limit=2' % fake.PROJECT_ID
        req = fakes.HTTPRequest.blank(url, use_admin_context=True)
        res = self.controller.index(req)

        self.assertEqual(2, len(res['qos_specs']))
        self.assertEqual(self.qos_id4, res['qos_specs'][0]['id'])
        self.assertEqual(self.qos_id3, res['qos_specs'][1]['id'])

        expect_next_link = ('http://localhost/v2/%s/qos-specs?limit'
                            '=2&marker=%s') % (
                                fake.PROJECT_ID, res['qos_specs'][1]['id'])
        self.assertEqual(expect_next_link, res['qos_specs_links'][0]['href'])

Example 35

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.disassociate_qos_specs',
                side_effect=return_associate_qos_specs)
    def test_disassociate_no_type(self, mock_disassociate, mock_get_qos):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/disassociate' % (
                fake.PROJECT_ID, fake.QOS_SPEC_ID))

        self.assertRaises(webob.exc.HTTPBadRequest,
                          self.controller.disassociate, req, fake.QOS_SPEC_ID)

Example 36

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.create',
                side_effect=return_qos_specs_create)
    @mock.patch('cinder.utils.validate_dictionary_string_length')
    def test_create(self, mock_validate, mock_qos_spec_create):

        body = {"qos_specs": {"name": "qos_specs_%s" % fake.QOS_SPEC_ID,
                              "key1": "value1"}}
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs' % fake.PROJECT_ID)

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            res_dict = self.controller.create(req, body)

            self.assertEqual(1, notifier.get_notification_count())
            self.assertEqual('qos_specs_%s' % fake.QOS_SPEC_ID,
                             res_dict['qos_specs']['name'])
            self.assertTrue(mock_validate.called)

Example 37

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.disassociate_qos_specs',
                side_effect=return_associate_qos_specs)
    def test_disassociate_failed(self, mock_disassociate, mock_get_qos):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/disassociate?vol_type_id=%s' % (
                fake.PROJECT_ID, fake.ACTION2_FAILED_ID, fake.VOLUME_TYPE_ID))
        self.assertRaises(webob.exc.HTTPInternalServerError,
                          self.controller.disassociate, req,
                          fake.ACTION2_FAILED_ID)

Example 38

Project: cinder Source File: test_qos_specs_manage.py
    def test_index_with_sort_keys_and_sort_dirs(self):
        url = '/v2/%s/qos-specs?sort=id:asc' % fake.PROJECT_ID
        req = fakes.HTTPRequest.blank(url, use_admin_context=True)
        res = self.controller.index(req)
        self.assertEqual(4, len(res['qos_specs']))
        expect_result = [self.qos_id1, self.qos_id2,
                         self.qos_id3, self.qos_id4]
        expect_result.sort()

        self.assertEqual(expect_result[0], res['qos_specs'][0]['id'])
        self.assertEqual(expect_result[1], res['qos_specs'][1]['id'])
        self.assertEqual(expect_result[2], res['qos_specs'][2]['id'])
        self.assertEqual(expect_result[3], res['qos_specs'][3]['id'])

Example 39

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.disassociate_all',
                side_effect=return_disassociate_all)
    def test_disassociate_all_not_found(self, mock_disassociate, mock_get):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/disassociate_all' % (
                fake.PROJECT_ID, fake.WILL_NOT_BE_FOUND_ID))
        self.assertRaises(exception.QoSSpecsNotFound,
                          self.controller.disassociate_all, req,
                          fake.WILL_NOT_BE_FOUND_ID)

Example 40

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.create',
                side_effect=return_qos_specs_create)
    def test_create_conflict(self, mock_qos_spec_create):
        body = {"qos_specs": {"name": 'qos_spec_%s' % fake.ALREADY_EXISTS_ID,
                              "key1": "value1"}}
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs' % fake.PROJECT_ID)

        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            self.assertRaises(webob.exc.HTTPConflict,
                              self.controller.create, req, body)
            self.assertEqual(1, notifier.get_notification_count())

Example 41

Project: cinder Source File: test_scheduler_stats.py
    def test_get_pools_detail_invalid_bool(self):
        req = fakes.HTTPRequest.blank(
            '/v2/%s/scheduler_stats?detail=InvalidBool' %
            fake.PROJECT_ID)
        req.environ['cinder.context'] = self.ctxt
        self.assertRaises(exception.InvalidParameterValue,
                          self.controller.get_pools,
                          req)

Example 42

Project: cinder Source File: test_capabilities.py
    @mock.patch('cinder.db.service_get_all')
    def test_get_capabilities_service_not_found(self, mock_services):
        mock_services.return_value = []

        req = fakes.HTTPRequest.blank('/fake/capabilities/fake')
        req.environ['cinder.context'] = self.ctxt
        self.assertRaises(exception.NotFound,
                          self.controller.show, req, 'fake')

Example 43

Project: cinder Source File: test_services.py
    def test_services_enable_with_binary_key(self):
        body = {'host': 'host1', 'binary': 'cinder-volume'}
        req = fakes.HTTPRequest.blank(
            '/v2/%s/os-services/enable' % fake.PROJECT_ID)
        res_dict = self.controller.update(req, "enable", body)

        self.assertEqual('enabled', res_dict['status'])

Example 44

Project: cinder Source File: test_qos_specs_manage.py
    @ddt.data({'foo': {'a': 'b'}},
              {'qos_specs': {'a': 'b'}},
              {'qos_specs': 'string'},
              None)
    def test_create_invalid_body_bad_request(self, body):
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs' % fake.PROJECT_ID,
                                      use_admin_context=True)
        req.method = 'POST'
        self.assertRaises(webob.exc.HTTPBadRequest,
                          self.controller.create, req, body)

Example 45

Project: cinder Source File: test_qos_specs_manage.py
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    @mock.patch('cinder.volume.qos_specs.delete',
                side_effect=return_qos_specs_delete)
    def test_qos_specs_delete_not_found(self, mock_qos_delete,
                                        mock_qos_get_specs):
        notifier = fake_notifier.get_fake_notifier()
        with mock.patch('cinder.rpc.get_notifier', return_value=notifier):
            req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s' %
                                          (fake.PROJECT_ID,
                                           fake.WILL_NOT_BE_FOUND_ID))
            self.assertRaises(exception.QoSSpecsNotFound,
                              self.controller.delete, req,
                              fake.WILL_NOT_BE_FOUND_ID)
            self.assertEqual(1, notifier.get_notification_count())

Example 46

Project: cinder Source File: test_capabilities.py
    @mock.patch('cinder.db.service_get_all')
    @mock.patch('cinder.volume.rpcapi.VolumeAPI.get_capabilities')
    def test_get_capabilities_rpc_timeout(self, mock_rpc, mock_services):
        mock_rpc.side_effect = oslo_messaging.MessagingTimeout
        mock_services.return_value = [{'name': 'fake'}]

        req = fakes.HTTPRequest.blank('/fake/capabilities/fake')
        req.environ['cinder.context'] = self.ctxt
        self.assertRaises(exception.RPCTimeout,
                          self.controller.show, req, 'fake')

Example 47

Project: cinder Source File: test_qos_specs_manage.py
Function: test_index
    @mock.patch('cinder.volume.qos_specs.get_all_specs',
                side_effect=return_qos_specs_get_all)
    def test_index(self, mock_get_all_specs):
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs' % fake.PROJECT_ID)
        res = self.controller.index(req)

        self.assertEqual(3, len(res['qos_specs']))

        names = set()
        for item in res['qos_specs']:
            self.assertEqual('value1', item['specs']['key1'])
            names.add(item['name'])
        expected_names = ['qos_specs_%s' % fake.QOS_SPEC_ID,
                          'qos_specs_%s' % fake.QOS_SPEC2_ID,
                          'qos_specs_%s' % fake.QOS_SPEC3_ID]
        self.assertEqual(set(expected_names), names)

Example 48

Project: cinder Source File: test_qos_specs_manage.py
Function: test_index_with_marker
    def test_index_with_marker(self):
        url = '/v2/%s/qos-specs?marker=%s' % (fake.PROJECT_ID, self.qos_id4)
        req = fakes.HTTPRequest.blank(url, use_admin_context=True)
        res = self.controller.index(req)

        self.assertEqual(3, len(res['qos_specs']))

Example 49

Project: cinder Source File: test_qos_specs_manage.py
    def test_qos_specs_delete_with_invalid_force(self):
        invalid_force = "invalid_bool"
        req = fakes.HTTPRequest.blank(
            '/v2/%s/qos-specs/%s/delete_keys?force=%s' %
            (fake.PROJECT_ID, fake.QOS_SPEC_ID, invalid_force))

        self.assertRaises(exception.InvalidParameterValue,
                          self.controller.delete,
                          req, fake.QOS_SPEC_ID)

Example 50

Project: cinder Source File: test_qos_specs_manage.py
Function: test_show
    @mock.patch('cinder.volume.qos_specs.get_qos_specs',
                side_effect=return_qos_specs_get_qos_specs)
    def test_show(self, mock_get_qos_specs):
        req = fakes.HTTPRequest.blank('/v2/%s/qos-specs/%s' % (
            fake.PROJECT_ID, fake.QOS_SPEC_ID))
        res_dict = self.controller.show(req, fake.QOS_SPEC_ID)

        self.assertEqual(fake.QOS_SPEC_ID, res_dict['qos_specs']['id'])
        self.assertEqual('qos_specs_%s' % fake.QOS_SPEC_ID,
                         res_dict['qos_specs']['name'])
See More Examples - Go to Next Page
Page 1 Selected Page 2 Page 3 Page 4