diff options
| author | Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> | 2017-02-16 18:55:02 +0000 |
|---|---|---|
| committer | Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com> | 2017-07-05 13:34:33 +0000 |
| commit | c17819ab58db7ded30644d63575d47ee3c963ada (patch) | |
| tree | d3da0eb445c784945ce6a16961734e49297ba5bd /openstackclient/tests | |
| parent | 79b992b53bfea9f3d8e2e073417dbf8f201f37db (diff) | |
| download | python-openstackclient-c17819ab58db7ded30644d63575d47ee3c963ada.tar.gz | |
Add new parameter "is_default" to Network QoS policy.
Add a set of exclusive parameters to the Network QoS policy:
--default: makes this policy the default policy for
the project to which the qos policy belongs.
--no-default: unset the property.
Closes-Bug: #1639220
Depends-On: If5ff2b00fa828f93aa089e275ddbd1ff542b79d4
Depends-On: Ibe7b7881cb190bfd5582f35b6de51a8bc21135de
Change-Id: I0269b837dc29bbd8ee2089d847cadb72d800fa30
Diffstat (limited to 'openstackclient/tests')
3 files changed, 53 insertions, 3 deletions
diff --git a/openstackclient/tests/functional/network/v2/test_network_qos_policy.py b/openstackclient/tests/functional/network/v2/test_network_qos_policy.py index 282efbfa..ac3e0fc6 100644 --- a/openstackclient/tests/functional/network/v2/test_network_qos_policy.py +++ b/openstackclient/tests/functional/network/v2/test_network_qos_policy.py @@ -68,3 +68,16 @@ class NetworkQosPolicyTests(common.NetworkTests): raw_output = self.openstack('network qos policy show ' + self.NAME + opts) self.assertEqual("True\n", raw_output) + + def test_qos_policy_default(self): + self.openstack('network qos policy set --default ' + self.NAME) + opts = self.get_opts(['is_default']) + raw_output = self.openstack('network qos policy show ' + self.NAME + + opts) + self.assertEqual("True\n", raw_output) + + self.openstack('network qos policy set --no-default ' + self.NAME) + opts = self.get_opts(['is_default']) + raw_output = self.openstack('network qos policy show ' + self.NAME + + opts) + self.assertEqual("False\n", raw_output) diff --git a/openstackclient/tests/unit/network/v2/fakes.py b/openstackclient/tests/unit/network/v2/fakes.py index 66b35cc5..0b8eee90 100644 --- a/openstackclient/tests/unit/network/v2/fakes.py +++ b/openstackclient/tests/unit/network/v2/fakes.py @@ -841,6 +841,7 @@ class FakeNetworkQosPolicy(object): qos_policy_attrs = { 'name': 'qos-policy-name-' + uuid.uuid4().hex, 'id': qos_id, + 'is_default': False, 'tenant_id': 'project-id-' + uuid.uuid4().hex, 'shared': False, 'description': 'qos-policy-description-' + uuid.uuid4().hex, diff --git a/openstackclient/tests/unit/network/v2/test_network_qos_policy.py b/openstackclient/tests/unit/network/v2/test_network_qos_policy.py index 667f5015..e7239932 100644 --- a/openstackclient/tests/unit/network/v2/test_network_qos_policy.py +++ b/openstackclient/tests/unit/network/v2/test_network_qos_policy.py @@ -48,6 +48,7 @@ class TestCreateNetworkQosPolicy(TestQosPolicy): columns = ( 'description', 'id', + 'is_default', 'name', 'project_id', 'rules', @@ -57,6 +58,7 @@ class TestCreateNetworkQosPolicy(TestQosPolicy): data = ( new_qos_policy.description, new_qos_policy.id, + new_qos_policy.is_default, new_qos_policy.name, new_qos_policy.project_id, new_qos_policy.rules, @@ -106,12 +108,14 @@ class TestCreateNetworkQosPolicy(TestQosPolicy): '--project', self.project.name, self.new_qos_policy.name, '--description', 'QoS policy description', + '--default', ] verifylist = [ ('share', True), ('project', self.project.name), ('name', self.new_qos_policy.name), ('description', 'QoS policy description'), + ('default', True), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) @@ -122,6 +126,28 @@ class TestCreateNetworkQosPolicy(TestQosPolicy): 'tenant_id': self.project.id, 'name': self.new_qos_policy.name, 'description': 'QoS policy description', + 'is_default': True, + }) + self.assertEqual(self.columns, columns) + self.assertEqual(self.data, data) + + def test_create_no_default(self): + arglist = [ + self.new_qos_policy.name, + '--no-default' + ] + verifylist = [ + ('project', None), + ('name', self.new_qos_policy.name), + ('default', False), + ] + + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + columns, data = (self.cmd.take_action(parsed_args)) + + self.network.create_qos_policy.assert_called_once_with(**{ + 'name': self.new_qos_policy.name, + 'is_default': False, }) self.assertEqual(self.columns, columns) self.assertEqual(self.data, data) @@ -220,6 +246,7 @@ class TestListNetworkQosPolicy(TestQosPolicy): 'ID', 'Name', 'Shared', + 'Default', 'Project', ) data = [] @@ -228,6 +255,7 @@ class TestListNetworkQosPolicy(TestQosPolicy): qos_policy.id, qos_policy.name, qos_policy.shared, + qos_policy.is_default, qos_policy.project_id, )) @@ -333,17 +361,19 @@ class TestSetNetworkQosPolicy(TestQosPolicy): self._qos_policy, **attrs) self.assertIsNone(result) - def test_set_name_share_description(self): + def test_set_name_share_description_default(self): arglist = [ '--name', 'new_qos_policy', '--share', '--description', 'QoS policy description', + '--default', self._qos_policy.name, ] verifylist = [ ('name', 'new_qos_policy'), ('share', True), ('description', 'QoS policy description'), + ('default', True), ('policy', self._qos_policy.name), ] @@ -353,25 +383,29 @@ class TestSetNetworkQosPolicy(TestQosPolicy): 'name': 'new_qos_policy', 'description': 'QoS policy description', 'shared': True, + 'is_default': True, } self.network.update_qos_policy.assert_called_with( self._qos_policy, **attrs) self.assertIsNone(result) - def test_set_no_share(self): + def test_set_no_share_no_default(self): arglist = [ '--no-share', + '--no-default', self._qos_policy.name, ] verifylist = [ ('no_share', True), + ('no_default', True), ('policy', self._qos_policy.name), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) result = self.cmd.take_action(parsed_args) attrs = { - 'shared': False + 'shared': False, + 'is_default': False } self.network.update_qos_policy.assert_called_with( self._qos_policy, **attrs) @@ -386,6 +420,7 @@ class TestShowNetworkQosPolicy(TestQosPolicy): columns = ( 'description', 'id', + 'is_default', 'name', 'project_id', 'rules', @@ -394,6 +429,7 @@ class TestShowNetworkQosPolicy(TestQosPolicy): data = ( _qos_policy.description, _qos_policy.id, + _qos_policy.is_default, _qos_policy.name, _qos_policy.project_id, _qos_policy.rules, |
