diff options
| author | Jenkins <jenkins@review.openstack.org> | 2015-09-19 03:03:05 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2015-09-19 03:03:05 +0000 |
| commit | 6de1af116126c23f9ea8207b70d00724d51127a0 (patch) | |
| tree | c11683159a3c7e6f49b5d4d8adfe6fb5f251d806 /openstackclient | |
| parent | 0116f3abc6c523d721960d838d9dd67535ebc1c2 (diff) | |
| parent | b1ce0356f2e6fc4e36471394d0f871a3d1e6d2e5 (diff) | |
| download | python-openstackclient-6de1af116126c23f9ea8207b70d00724d51127a0.tar.gz | |
Merge "Add tests for volume quota set"
Diffstat (limited to 'openstackclient')
| -rw-r--r-- | openstackclient/common/quota.py | 3 | ||||
| -rw-r--r-- | openstackclient/tests/common/test_quota.py | 45 |
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) |
