summaryrefslogtreecommitdiff
path: root/openstackclient/tests
diff options
context:
space:
mode:
authorSindhu Devale <sindhu.devale@intel.com>2016-10-04 13:02:41 -0500
committerSteve Martinelli <s.martinelli@gmail.com>2017-03-22 16:39:19 +0000
commit832b2591cf299bf51c1922df1cdd4ba0aabe88c0 (patch)
tree193de8b30ad51368696a65224f85e1f99527888b /openstackclient/tests
parent62bf9e2609bd5d092ff1b238546a1fc6175bd575 (diff)
downloadpython-openstackclient-832b2591cf299bf51c1922df1cdd4ba0aabe88c0.tar.gz
OSC Extension Show
Implement Neutron feature of Extension Show into OpenStack Client. Change-Id: Ifecb794838cb3bf8c2466d178345349db3cd4003 Implements: blueprint extension-show
Diffstat (limited to 'openstackclient/tests')
-rw-r--r--openstackclient/tests/functional/common/test_extension.py42
-rw-r--r--openstackclient/tests/unit/common/test_extension.py58
2 files changed, 100 insertions, 0 deletions
diff --git a/openstackclient/tests/functional/common/test_extension.py b/openstackclient/tests/functional/common/test_extension.py
new file mode 100644
index 00000000..7c527eae
--- /dev/null
+++ b/openstackclient/tests/functional/common/test_extension.py
@@ -0,0 +1,42 @@
+# Copyright (c) 2017, Intel Corporation.
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+import json
+
+from openstackclient.tests.functional import base
+
+
+class TestExtension(base.TestCase):
+ """Functional tests for extension."""
+
+ def test_extension_list(self):
+ """Test extension list."""
+ json_output = json.loads(self.openstack(
+ 'extension list -f json ' + '--network')
+ )
+ self.assertEqual(
+ 'Default Subnetpools',
+ json_output[0]['Name'],
+ )
+
+ def test_extension_show(self):
+ """Test extension show."""
+ name = 'agent'
+ json_output = json.loads(self.openstack(
+ 'extension show -f json ' + name)
+ )
+ self.assertEqual(
+ name,
+ json_output.get('Alias'))
diff --git a/openstackclient/tests/unit/common/test_extension.py b/openstackclient/tests/unit/common/test_extension.py
index bf856ed1..68fdf17d 100644
--- a/openstackclient/tests/unit/common/test_extension.py
+++ b/openstackclient/tests/unit/common/test_extension.py
@@ -19,6 +19,7 @@ from openstackclient.tests.unit import fakes
from openstackclient.tests.unit.identity.v2_0 import fakes as identity_fakes
from openstackclient.tests.unit.network.v2 import fakes as network_fakes
from openstackclient.tests.unit import utils
+from openstackclient.tests.unit import utils as tests_utils
from openstackclient.tests.unit.volume.v2 import fakes as volume_fakes
@@ -242,3 +243,60 @@ class TestExtensionList(TestExtension):
), )
self._test_extension_list_helper(arglist, verifylist, datalist)
self.volume_extensions_mock.show_all.assert_called_with()
+
+
+class TestExtensionShow(TestExtension):
+ extension_details = (
+ network_fakes.FakeExtension.create_one_extension()
+ )
+
+ columns = (
+ 'Alias',
+ 'Description',
+ 'Links',
+ 'Name',
+ 'Namespace',
+ 'Updated'
+ )
+
+ data = (
+ extension_details.alias,
+ extension_details.description,
+ extension_details.links,
+ extension_details.name,
+ extension_details.namespace,
+ extension_details.updated
+ )
+
+ def setUp(self):
+ super(TestExtensionShow, self).setUp()
+
+ self.cmd = extension.ShowExtension(self.app, None)
+
+ self.app.client_manager.network.find_extension = mock.Mock(
+ return_value=self.extension_details)
+
+ def test_show_no_options(self):
+ arglist = []
+ verifylist = []
+
+ self.assertRaises(tests_utils.ParserException, self.check_parser,
+ self.cmd, arglist, verifylist)
+
+ def test_show_all_options(self):
+ arglist = [
+ self.extension_details.alias,
+ ]
+ verifylist = [
+ ('extension', self.extension_details.alias),
+ ]
+
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ columns, data = self.cmd.take_action(parsed_args)
+
+ self.app.client_manager.network.find_extension.assert_called_with(
+ self.extension_details.alias)
+
+ self.assertEqual(self.columns, columns)
+ self.assertEqual(self.data, data)