summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReedip Banerjee <reedip.banerjee@nectechnologies.in>2015-10-09 10:51:59 +0530
committerReedip Banerjee <reedip.banerjee@nectechnologies.in>2015-10-14 10:25:49 +0530
commit99cd93b637d0fa9acad21815168fff492a6c2db1 (patch)
treeaed009023661c3f368bea92d354d6b6eea6528ae
parent9a68f4d12583b413add200ec86a415bf2a2f0704 (diff)
downloadtempest-lib-99cd93b637d0fa9acad21815168fff492a6c2db1.tar.gz
Added Test Cases for VersionsClient
This patch adds the Unit Test Cases for testing the Versions Client module. Change-Id: I09a7855f23c869386359950ab1621351569528f3
-rw-r--r--tempest_lib/tests/services/compute/test_versions_client.py96
1 files changed, 96 insertions, 0 deletions
diff --git a/tempest_lib/tests/services/compute/test_versions_client.py b/tempest_lib/tests/services/compute/test_versions_client.py
new file mode 100644
index 0000000..f79934e
--- /dev/null
+++ b/tempest_lib/tests/services/compute/test_versions_client.py
@@ -0,0 +1,96 @@
+# Copyright 2015 NEC 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 copy
+from oslotest import mockpatch
+
+from tempest_lib.services.compute import versions_client
+from tempest_lib.tests import fake_auth_provider
+from tempest_lib.tests.services.compute import base
+
+
+class TestVersionsClient(base.BaseComputeServiceTest):
+
+ FAKE_INIT_VERSION = {
+ "version": {
+ "id": "v2.1",
+ "links": [
+ {
+ "href": "http://openstack.example.com/v2.1/",
+ "rel": "self"
+ },
+ {
+ "href": "http://docs.openstack.org/",
+ "rel": "describedby",
+ "type": "text/html"
+ }
+ ],
+ "status": "CURRENT",
+ "updated": "2013-07-23T11:33:21Z",
+ "version": "2.1",
+ "min_version": "2.1"
+ }
+ }
+
+ FAKE_VERSIONS_INFO = {
+ "versions": [FAKE_INIT_VERSION["version"]]
+ }
+
+ FAKE_VERSION_INFO = copy.deepcopy(FAKE_INIT_VERSION)
+
+ FAKE_VERSION_INFO["version"]["media-types"] = [
+ {
+ "base": "application/json",
+ "type": "application/vnd.openstack.compute+json;version=2.1"
+ }
+ ]
+
+ def setUp(self):
+ super(TestVersionsClient, self).setUp()
+ fake_auth = fake_auth_provider.FakeAuthProvider()
+ self.versions_client = (
+ versions_client.VersionsClient
+ (fake_auth, 'compute', 'regionOne'))
+
+ def _test_versions_client(self, bytes_body=False):
+ self.check_service_client_function(
+ self.versions_client.list_versions,
+ 'tempest_lib.common.rest_client.RestClient.raw_request',
+ self.FAKE_VERSIONS_INFO,
+ bytes_body,
+ 200)
+
+ def _test_get_version_by_url(self, bytes_body=False):
+ self.useFixture(mockpatch.Patch(
+ "tempest_lib.common.rest_client.RestClient.token",
+ return_value="Dummy Token"))
+ params = {"version_url": self.versions_client._get_base_version_url()}
+ self.check_service_client_function(
+ self.versions_client.get_version_by_url,
+ 'tempest_lib.common.rest_client.RestClient.raw_request',
+ self.FAKE_VERSION_INFO,
+ bytes_body,
+ 200, **params)
+
+ def test_list_versions_client_with_str_body(self):
+ self._test_versions_client()
+
+ def test_list_versions_client_with_bytes_body(self):
+ self._test_versions_client(bytes_body=True)
+
+ def test_get_version_by_url_with_str_body(self):
+ self._test_get_version_by_url()
+
+ def test_get_version_by_url_with_bytes_body(self):
+ self._test_get_version_by_url(bytes_body=True)