Ejemplo n.º 1
0
 def test_create_quota_class(self, mock_write, mock_read):
     mock_read.side_effect = etcd.EtcdKeyNotFound
     utils.create_test_quota_class(context=self.context)
     mock_read.side_effect = lambda *args: None
     self.assertRaises(exception.ResourceExists,
                       utils.create_test_quota_class,
                       context=self.context)
Ejemplo n.º 2
0
 def test_get_quota_class_by_default(self, mock_db_inst,
                                     mock_write, mock_read):
     mock_db_inst.return_value = etcdapi.get_backend()
     mock_read.side_effect = etcd.EtcdKeyNotFound
     quota_class_1 = utils.create_test_quota_class(
         context=self.context, resource='fake_resource_1', hard_limit=10)
     quota_class_2 = utils.create_test_quota_class(
         context=self.context, resource='fake_resource_2', hard_limit=10)
     quota_classes = [quota_class_1, quota_class_2]
     mock_read.side_effect = lambda *args: utils.FakeEtcdMultipleResult(
         [quota_class_1.as_dict(), quota_class_2.as_dict()])
     res = dbapi.quota_class_get_default(self.context)
     self.assertEqual([qc.resource for qc in res],
                      [qc.resource for qc in quota_classes])
     self.assertEqual([q.hard_limit for q in res],
                      [q.hard_limit for q in quota_classes])
Ejemplo n.º 3
0
 def test_create_quota_class(self):
     quota_class = utils.create_test_quota_class(context=self.ctx,
                                                 class_name=self.class_name,
                                                 resource=self.resource,
                                                 limit=self.limit)
     self.assertEqual(quota_class.class_name, self.class_name)
     self.assertEqual(quota_class.resource, self.resource)
     self.assertEqual(quota_class.hard_limit, self.limit)
Ejemplo n.º 4
0
 def test_get_quota_class(self, mock_db_inst,
                          mock_write, mock_read):
     mock_db_inst.return_value = etcdapi.get_backend()
     mock_read.side_effect = etcd.EtcdKeyNotFound
     quota_class = utils.create_test_quota_class(context=self.context)
     mock_read.side_effect = lambda *args: utils.FakeEtcdResult(
         quota_class.as_dict())
     res = dbapi.quota_class_get(self.context, quota_class.class_name,
                                 quota_class.resource)
     self.assertEqual(quota_class.hard_limit, res.hard_limit)
Ejemplo n.º 5
0
    def test_get_all_by_name_quota_class(self):
        quota_class_resource_1 = utils.create_test_quota_class(
            context=self.ctx,
            class_name='class_1',
            resource='resource_1',
            limit=10)

        quota_class_resource_2 = utils.create_test_quota_class(
            context=self.ctx,
            class_name='class_1',
            resource='resource_2',
            limit=20)

        res = dbapi.quota_class_get_all_by_name(self.ctx, 'class_1')
        self.assertEqual(res['class_name'],
                         'class_1')
        self.assertEqual(res[quota_class_resource_1.resource],
                         quota_class_resource_1.hard_limit)
        self.assertEqual(res[quota_class_resource_2.resource],
                         quota_class_resource_2.hard_limit)
Ejemplo n.º 6
0
    def test_get_default_quota_class(self):
        default_quota_class_resource_1 = utils.create_test_quota_class(
            context=self.ctx,
            class_name=consts.DEFAULT_QUOTA_CLASS_NAME,
            resource='resource_1',
            limit=10)

        default_quota_class_resource_2 = utils.create_test_quota_class(
            context=self.ctx,
            class_name=consts.DEFAULT_QUOTA_CLASS_NAME,
            resource='resource_2',
            limit=20)

        res = dbapi.quota_class_get_default(self.ctx)
        self.assertEqual(res['class_name'],
                         consts.DEFAULT_QUOTA_CLASS_NAME)
        self.assertEqual(res[default_quota_class_resource_1.resource],
                         default_quota_class_resource_1.hard_limit)
        self.assertEqual(res[default_quota_class_resource_2.resource],
                         default_quota_class_resource_2.hard_limit)
Ejemplo n.º 7
0
 def test_update_quota_class(self):
     quota_class = utils.create_test_quota_class(context=self.ctx,
                                                 class_name=self.class_name,
                                                 resource=self.resource,
                                                 limit=self.limit)
     dbapi.quota_class_update(
         self.ctx, quota_class.class_name,
         quota_class.resource, 200)
     updated_quota_class = dbapi.quota_class_get(
         self.ctx, quota_class.class_name,
         quota_class.resource)
     self.assertEqual(updated_quota_class.hard_limit, 200)
Ejemplo n.º 8
0
 def test_update_quota_class(self, mock_db_inst, mock_update,
                             mock_write, mock_read):
     mock_db_inst.return_value = etcdapi.get_backend()
     mock_read.side_effect = etcd.EtcdKeyNotFound
     quota_class = utils.create_test_quota_class(context=self.context)
     new_hard_limit = 60
     mock_read.side_effect = lambda *args: utils.FakeEtcdResult(
         quota_class.as_dict())
     dbapi.quota_class_update(self.context, quota_class.class_name,
                              quota_class.resource, new_hard_limit)
     self.assertEqual(new_hard_limit,
                      json.loads(mock_update.call_args_list[0][0][0].
                                 value.decode('utf-8'))['hard_limit'])