Esempio n. 1
0
    def test_view_builder_list(self):
        view_builder = views_types.ViewBuilder()

        now = timeutils.utcnow().isoformat()
        raw_share_types = []
        for i in range(0, 10):
            raw_share_types.append(
                dict(
                    name='new_type',
                    deleted=False,
                    created_at=now,
                    updated_at=now,
                    extra_specs={},
                    required_extra_specs={},
                    deleted_at=None,
                    id=42 + i
                )
            )

        request = fakes.HTTPRequest.blank("/v2")
        output = view_builder.index(request, raw_share_types)

        self.assertIn('share_types', output)
        for i in range(0, 10):
            expected_share_type = {
                'name': 'new_type',
                'extra_specs': {},
                'os-share-type-access:is_public': True,
                'required_extra_specs': {},
                'id': 42 + i,
            }
            self.assertDictMatch(output['share_types'][i],
                                 expected_share_type)
Esempio n. 2
0
    def test_view_builder_show(self, version, prefix):
        view_builder = views_types.ViewBuilder()

        now = timeutils.utcnow().isoformat()
        raw_share_type = dict(
            name='new_type',
            deleted=False,
            created_at=now,
            updated_at=now,
            extra_specs={},
            deleted_at=None,
            required_extra_specs={},
            id=42,
        )

        request = fakes.HTTPRequest.blank("/v%s" % version[0], version=version)
        request.headers['X-Openstack-Manila-Api-Version'] = version

        output = view_builder.show(request, raw_share_type)

        self.assertIn('share_type', output)
        expected_share_type = {
            'name': 'new_type',
            'extra_specs': {},
            '%s:is_public' % prefix: True,
            'required_extra_specs': {},
            'id': 42,
        }
        self.assertDictMatch(output['share_type'], expected_share_type)
    def test_view_builder_list(self):
        view_builder = views_types.ViewBuilder()

        now = timeutils.isotime()
        raw_volume_types = []
        for i in range(0, 10):
            raw_volume_types.append(
                dict(
                    name='new_type',
                    deleted=False,
                    created_at=now,
                    updated_at=now,
                    extra_specs={},
                    deleted_at=None,
                    id=42 + i
                )
            )

        request = fakes.HTTPRequest.blank("/v2")
        output = view_builder.index(request, raw_volume_types)

        self.assertIn('volume_types', output)
        for i in range(0, 10):
            expected_volume_type = dict(
                name='new_type',
                extra_specs={},
                id=42 + i
            )
            self.assertDictMatch(output['volume_types'][i],
                                 expected_volume_type)
Esempio n. 4
0
    def test_view_builder_show(self, version, prefix, admin):
        view_builder = views_types.ViewBuilder()

        now = timeutils.utcnow().isoformat()
        raw_share_type = dict(
            name='new_type',
            deleted=False,
            created_at=now,
            updated_at=now,
            extra_specs={},
            deleted_at=None,
            required_extra_specs={},
            id=42,
        )

        request = fakes.HTTPRequest.blank("/v%s" % version[0], version=version,
                                          use_admin_context=admin)
        request.headers['X-Openstack-Manila-Api-Version'] = version

        output = view_builder.show(request, raw_share_type)

        self.assertIn('share_type', output)
        expected_share_type = {
            'name': 'new_type',
            'extra_specs': {},
            '%s:is_public' % prefix: True,
            'required_extra_specs': {},
            'id': 42,
        }
        if self.is_microversion_ge(version, '2.24') and not admin:
            for extra_spec in constants.ExtraSpecs.INFERRED_OPTIONAL_MAP:
                expected_share_type['extra_specs'][extra_spec] = (
                    constants.ExtraSpecs.INFERRED_OPTIONAL_MAP[extra_spec])

        self.assertDictMatch(output['share_type'], expected_share_type)
Esempio n. 5
0
    def test_view_builder_show(self):
        view_builder = views_types.ViewBuilder()

        now = timeutils.isotime()
        raw_share_type = dict(
            name='new_type',
            deleted=False,
            created_at=now,
            updated_at=now,
            extra_specs={},
            deleted_at=None,
            required_extra_specs={},
            id=42,
        )

        request = fakes.HTTPRequest.blank("/v2")
        output = view_builder.show(request, raw_share_type)

        self.assertIn('share_type', output)
        expected_share_type = dict(
            name='new_type',
            extra_specs={},
            required_extra_specs={},
            id=42,
        )
        self.assertDictMatch(output['share_type'], expected_share_type)
Esempio n. 6
0
    def test_view_builder_list(self, version, prefix, admin):
        view_builder = views_types.ViewBuilder()

        extra_specs = {
            constants.ExtraSpecs.SNAPSHOT_SUPPORT: True,
            constants.ExtraSpecs.CREATE_SHARE_FROM_SNAPSHOT_SUPPORT: False,
            constants.ExtraSpecs.REVERT_TO_SNAPSHOT_SUPPORT: True,
            constants.ExtraSpecs.MOUNT_SNAPSHOT_SUPPORT: True,
        }

        now = timeutils.utcnow().isoformat()
        raw_share_types = []
        for i in range(0, 10):
            raw_share_types.append(
                dict(
                    name='new_type',
                    description='description_test',
                    deleted=False,
                    created_at=now,
                    updated_at=now,
                    extra_specs=extra_specs,
                    required_extra_specs={},
                    deleted_at=None,
                    id=42 + i
                )
            )

        request = fakes.HTTPRequest.blank("/v%s" % version[0], version=version,
                                          use_admin_context=admin)
        output = view_builder.index(request, raw_share_types)

        self.assertIn('share_types', output)
        expected_share_type = {
            'name': 'new_type',
            'extra_specs': extra_specs,
            '%s:is_public' % prefix: True,
            'required_extra_specs': {},
        }
        if self.is_microversion_ge(version, '2.41'):
            expected_share_type['description'] = 'description_test'
        for i in range(0, 10):
            expected_share_type['id'] = 42 + i
            self.assertDictMatch(expected_share_type,
                                 output['share_types'][i])