示例#1
0
 def test_make_it(self):
     sot = endpoint.Endpoint(EXAMPLE)
     self.assertTrue(sot.is_enabled)
     self.assertEqual(EXAMPLE['id'], sot.id)
     self.assertEqual(EXAMPLE['interface'], sot.interface)
     self.assertEqual(EXAMPLE['region_id'], sot.region_id)
     self.assertEqual(EXAMPLE['service_id'], sot.service_id)
     self.assertEqual(EXAMPLE['url'], sot.url)
示例#2
0
    def test_get_endpoint(self):
        fake_endpoint = endpoint.Endpoint()
        self.mock_conn.get_endpoint.return_value = fake_endpoint

        utils = limit._EnforcerUtils()

        self.assertEqual(fake_endpoint, utils._endpoint)
        self.mock_conn.get_endpoint.assert_called_once_with(None)
示例#3
0
 def test_basic(self):
     sot = endpoint.Endpoint()
     self.assertEqual('endpoint', sot.resource_key)
     self.assertEqual('endpoints', sot.resources_key)
     self.assertEqual('/endpoints', sot.base_path)
     self.assertEqual('identity', sot.service.service_type)
     self.assertTrue(sot.allow_create)
     self.assertTrue(sot.allow_retrieve)
     self.assertTrue(sot.allow_update)
     self.assertTrue(sot.allow_delete)
     self.assertTrue(sot.allow_list)
示例#4
0
    def test_get_project_limits(self):
        fake_endpoint = endpoint.Endpoint()
        fake_endpoint.service_id = "service_id"
        fake_endpoint.region_id = "region_id"
        self.mock_conn.get_endpoint.return_value = fake_endpoint
        project_id = uuid.uuid4().hex

        # a is a project limit, b, c and d don't have one
        empty_iterator = iter([])
        a = klimit.Limit()
        a.resource_name = "a"
        a.resource_limit = 1
        a_iterator = iter([a])
        self.mock_conn.limits.side_effect = [
            a_iterator, empty_iterator, empty_iterator, empty_iterator
        ]

        # b has a limit, but c and d doesn't, a isn't ever checked
        b = registered_limit.RegisteredLimit()
        b.resource_name = "b"
        b.default_limit = 2
        b_iterator = iter([b])
        self.mock_conn.registered_limits.side_effect = [
            b_iterator, empty_iterator, empty_iterator
        ]

        utils = limit._EnforcerUtils()
        limits = utils.get_project_limits(project_id, ["a", "b"])
        self.assertEqual([('a', 1), ('b', 2)], limits)

        e = self.assertRaises(exception.ProjectOverLimit,
                              utils.get_project_limits, project_id, ["c", "d"])
        expected = ("Project %s is over a limit for "
                    "[Resource c is over limit of 0 due to current usage 0 "
                    "and delta 0, "
                    "Resource d is over limit of 0 due to current usage 0 "
                    "and delta 0]")
        self.assertEqual(expected % project_id, str(e))
        self.assertEqual(project_id, e.project_id)
        self.assertEqual(2, len(e.over_limit_info_list))
        over_c = e.over_limit_info_list[0]
        self.assertEqual("c", over_c.resource_name)
        over_d = e.over_limit_info_list[1]
        self.assertEqual("d", over_d.resource_name)
        self.assertEqual(0, over_d.limit)
        self.assertEqual(0, over_d.current_usage)
        self.assertEqual(0, over_d.delta)
示例#5
0
 def test_basic(self):
     sot = endpoint.Endpoint()
     self.assertEqual('endpoint', sot.resource_key)
     self.assertEqual('endpoints', sot.resources_key)
     self.assertEqual('/endpoints', sot.base_path)
     self.assertTrue(sot.allow_create)
     self.assertTrue(sot.allow_fetch)
     self.assertTrue(sot.allow_commit)
     self.assertTrue(sot.allow_delete)
     self.assertTrue(sot.allow_list)
     self.assertEqual('PATCH', sot.commit_method)
     self.assertDictEqual(
         {
             'interface': 'interface',
             'service_id': 'service_id',
             'limit': 'limit',
             'marker': 'marker',
         },
         sot._query_mapping._mapping)
示例#6
0
文件: fixtures.py 项目: crowdy/glance
    def setUp(self):
        super(KeystoneQuotaFixture, self).setUp()

        self.mock_conn = mock.MagicMock()
        limit._SDK_CONNECTION = self.mock_conn

        mock_gem = self.useFixture(
            pyfixtures.MockPatch('oslo_limit.limit.Enforcer.'
                                 '_get_enforcement_model')).mock
        mock_gem.return_value = 'flat'

        fake_endpoint = endpoint.Endpoint()
        fake_endpoint.service_id = "service_id"
        fake_endpoint.region_id = "region_id"
        self.mock_conn.get_endpoint.return_value = fake_endpoint

        def fake_limits(service_id, region_id, resource_name, project_id):
            this_limit = klimit.Limit()
            this_limit.resource_name = resource_name
            this_limit.resource_limit = self.defaults[resource_name]
            return iter([this_limit])

        self.mock_conn.limits.side_effect = fake_limits
示例#7
0
 def get_endpoint(self, **data):
     return endpoint.Endpoint(data).get(self.session)
示例#8
0
 def update_endpoint(self, **data):
     return endpoint.Endpoint(data).update(self.session)
示例#9
0
 def delete_endpoint(self, **data):
     endpoint.Endpoint(data).delete(self.session)
示例#10
0
 def create_endpoint(self, **data):
     return endpoint.Endpoint(data).create(self.session)