diff options
| author | Sławek Kapłoński <slawek@kaplonski.pl> | 2017-09-07 20:34:15 +0000 |
|---|---|---|
| committer | Dean Troyer <dtroyer@gmail.com> | 2017-11-05 17:52:08 -0600 |
| commit | 07f0c7aa55920d65035124c9e8bfe8452356c811 (patch) | |
| tree | 90e16fb733a172c49990df7bd3d07b79d9642f3c /openstackclient/tests/unit | |
| parent | 8efed05e823eb76f309c0fee821fdc67a9886a3a (diff) | |
| download | python-openstackclient-07f0c7aa55920d65035124c9e8bfe8452356c811.tar.gz | |
Display Network QoS rule type details
Neutron API now supports getting details of supported
QoS rule type.
This patch adds support for this feature to OpenStack client.
Change-Id: I74d16563ce2236a7c899f5994f1dab43ace02138
Depends-On: I448b5d4f8e4ef42eafe50d9d6c63d0be666f98fc
Related-Bug: #1686035
Diffstat (limited to 'openstackclient/tests/unit')
| -rw-r--r-- | openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py b/openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py index b93abe80..80c52bf7 100644 --- a/openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py +++ b/openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py @@ -17,6 +17,7 @@ import mock from openstackclient.network.v2 import network_qos_rule_type as _qos_rule_type from openstackclient.tests.unit.network.v2 import fakes as network_fakes +from openstackclient.tests.unit import utils as tests_utils class TestNetworkQosRuleType(network_fakes.TestNetworkV2): @@ -27,6 +28,60 @@ class TestNetworkQosRuleType(network_fakes.TestNetworkV2): self.network = self.app.client_manager.network +class TestShowNetworkQosRuleType(TestNetworkQosRuleType): + + attrs = { + 'drivers': [{ + 'name': 'driver 1', + 'supported_parameters': [] + }] + } + # The QoS policies to show. + qos_rule_type = ( + network_fakes.FakeNetworkQosRuleType.create_one_qos_rule_type(attrs)) + columns = ( + 'drivers', + 'rule_type_name' + ) + data = [ + qos_rule_type.drivers, + qos_rule_type.type + ] + + def setUp(self): + super(TestShowNetworkQosRuleType, self).setUp() + self.network.get_qos_rule_type = mock.Mock( + return_value=self.qos_rule_type) + + # Get the command object to test + self.cmd = _qos_rule_type.ShowNetworkQosRuleType(self.app, + self.namespace) + + def test_show_no_options(self): + arglist = [] + verifylist = [] + + # Missing required args should bail here + self.assertRaises(tests_utils.ParserException, self.check_parser, + self.cmd, arglist, verifylist) + + def test_show_all_options(self): + arglist = [ + self.qos_rule_type.type, + ] + verifylist = [ + ('rule_type', self.qos_rule_type.type), + ] + + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + columns, data = self.cmd.take_action(parsed_args) + + self.network.get_qos_rule_type.assert_called_once_with( + self.qos_rule_type.type) + self.assertEqual(self.columns, columns) + self.assertEqual(list(self.data), list(data)) + + class TestListNetworkQosRuleType(TestNetworkQosRuleType): # The QoS policies to list up. |
