summaryrefslogtreecommitdiff
path: root/openstackclient
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-09-19 03:03:05 +0000
committerGerrit Code Review <review@openstack.org>2015-09-19 03:03:05 +0000
commit6de1af116126c23f9ea8207b70d00724d51127a0 (patch)
treec11683159a3c7e6f49b5d4d8adfe6fb5f251d806 /openstackclient
parent0116f3abc6c523d721960d838d9dd67535ebc1c2 (diff)
parentb1ce0356f2e6fc4e36471394d0f871a3d1e6d2e5 (diff)
downloadpython-openstackclient-6de1af116126c23f9ea8207b70d00724d51127a0.tar.gz
Merge "Add tests for volume quota set"
Diffstat (limited to 'openstackclient')
-rw-r--r--openstackclient/common/quota.py3
-rw-r--r--openstackclient/tests/common/test_quota.py45
2 files changed, 46 insertions, 2 deletions
diff --git a/openstackclient/common/quota.py b/openstackclient/common/quota.py
index 65367e03..e092feff 100644
--- a/openstackclient/common/quota.py
+++ b/openstackclient/common/quota.py
@@ -105,8 +105,7 @@ class SetQuota(command.Command):
volume_kwargs = {}
for k, v in VOLUME_QUOTAS.items():
- # TODO(jiaxi): Should use k or v needs discuss
- value = getattr(parsed_args, v, None)
+ value = getattr(parsed_args, k, None)
if value is not None:
if parsed_args.volume_type:
k = k + '_%s' % parsed_args.volume_type
diff --git a/openstackclient/tests/common/test_quota.py b/openstackclient/tests/common/test_quota.py
index f0013e48..b6ad1566 100644
--- a/openstackclient/tests/common/test_quota.py
+++ b/openstackclient/tests/common/test_quota.py
@@ -12,6 +12,8 @@
import copy
+import mock
+
from openstackclient.common import quota
from openstackclient.tests.compute.v2 import fakes as compute_fakes
from openstackclient.tests import fakes
@@ -38,6 +40,11 @@ class TestQuota(compute_fakes.TestComputev2):
super(TestQuota, self).setUp()
self.quotas_mock = self.app.client_manager.compute.quotas
self.quotas_mock.reset_mock()
+ volume_mock = mock.Mock()
+ volume_mock.quotas = mock.Mock()
+ self.app.client_manager.volume = volume_mock
+ self.volume_quotas_mock = volume_mock.quotas
+ self.volume_quotas_mock.reset_mock()
class TestQuotaSet(TestQuota):
@@ -57,6 +64,18 @@ class TestQuotaSet(TestQuota):
loaded=True,
)
+ self.volume_quotas_mock.find.return_value = FakeQuotaResource(
+ None,
+ copy.deepcopy(compute_fakes.QUOTA),
+ loaded=True,
+ )
+
+ self.volume_quotas_mock.update.return_value = FakeQuotaResource(
+ None,
+ copy.deepcopy(compute_fakes.QUOTA),
+ loaded=True,
+ )
+
self.cmd = quota.SetQuota(self.app, None)
def test_quota_set(self):
@@ -87,3 +106,29 @@ class TestQuotaSet(TestQuota):
}
self.quotas_mock.update.assert_called_with('project_test', **kwargs)
+
+ def test_quota_set_volume(self):
+ arglist = [
+ '--gigabytes', str(compute_fakes.floating_ip_num),
+ '--snapshots', str(compute_fakes.fix_ip_num),
+ '--volumes', str(compute_fakes.injected_file_num),
+ compute_fakes.project_name,
+ ]
+ verifylist = [
+ ('gigabytes', compute_fakes.floating_ip_num),
+ ('snapshots', compute_fakes.fix_ip_num),
+ ('volumes', compute_fakes.injected_file_num),
+ ]
+
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ self.cmd.take_action(parsed_args)
+
+ kwargs = {
+ 'gigabytes': compute_fakes.floating_ip_num,
+ 'snapshots': compute_fakes.fix_ip_num,
+ 'volumes': compute_fakes.injected_file_num,
+ }
+
+ self.volume_quotas_mock.update.assert_called_with('project_test',
+ **kwargs)