¡@

Home 

OpenStack Study: test_backend_templated.py

OpenStack Index

**** CubicPower OpenStack Study ****

# Copyright 2012 OpenStack Foundation

#

# Licensed under the Apache License, Version 2.0 (the "License"); you may

# not use this file except in compliance with the License. You may obtain

# a copy of the License at

#

# http://www.apache.org/licenses/LICENSE-2.0

#

# Unless required by applicable law or agreed to in writing, software

# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT

# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the

# License for the specific language governing permissions and limitations

# under the License.

import os

from keystone import exception

from keystone import tests

from keystone.tests import default_fixtures

from keystone.tests import test_backend

DEFAULT_CATALOG_TEMPLATES = os.path.abspath(os.path.join(

os.path.dirname(__file__),

'default_catalog.templates'))

**** CubicPower OpenStack Study ****

class TestTemplatedCatalog(tests.TestCase, test_backend.CatalogTests):

DEFAULT_FIXTURE = {

'RegionOne': {

'compute': {

'adminURL': 'http://localhost:8774/v1.1/bar',

'publicURL': 'http://localhost:8774/v1.1/bar',

'internalURL': 'http://localhost:8774/v1.1/bar',

'name': "'Compute Service'",

'id': '2'

},

'identity': {

'adminURL': 'http://localhost:35357/v2.0',

'publicURL': 'http://localhost:5000/v2.0',

'internalURL': 'http://localhost:35357/v2.0',

'name': "'Identity Service'",

'id': '1'

}

}

}

**** CubicPower OpenStack Study ****

    def setUp(self):

        super(TestTemplatedCatalog, self).setUp()

        self.load_backends()

        self.load_fixtures(default_fixtures)

**** CubicPower OpenStack Study ****

    def config_overrides(self):

        super(TestTemplatedCatalog, self).config_overrides()

        self.config_fixture.config(group='catalog',

                                   template_file=DEFAULT_CATALOG_TEMPLATES)

**** CubicPower OpenStack Study ****

    def test_get_catalog(self):

        catalog_ref = self.catalog_api.get_catalog('foo', 'bar')

        self.assertDictEqual(catalog_ref, self.DEFAULT_FIXTURE)

**** CubicPower OpenStack Study ****

    def test_malformed_catalog_throws_error(self):

        (self.catalog_api.driver.templates

         ['RegionOne']['compute']['adminURL']) = \

            'http://localhost:$(compute_port)s/v1.1/$(tenant)s'

        self.assertRaises(exception.MalformedEndpoint,

                          self.catalog_api.get_catalog,

                          'fake-user',

                          'fake-tenant')

**** CubicPower OpenStack Study ****

    def test_get_catalog_endpoint_disabled(self):

        self.skipTest("Templated backend doesn't have disabled endpoints")

**** CubicPower OpenStack Study ****

    def test_get_v3_catalog_endpoint_disabled(self):

        f = (super(TestTemplatedCatalog, self).

             test_get_v3_catalog_endpoint_disabled)

        self.assertRaises(exception.NotImplemented, f)