From fab9a67afa6e8202a06b1d0f617417f0a663399f Mon Sep 17 00:00:00 2001 From: Rui Chen Date: Wed, 10 Jun 2015 15:22:42 +0800 Subject: [PATCH] Improve functional test base for microversion In current functional tests, when we test some features base on microversion, we need to define request_api_version in order to get template/sample, but when we call the base functions, like: _do_get, _do_post, _do_put, _do_delete, we must pass the argument 'api_version' to specify X-OpenStack-Nova-API-Version, even if we had defined request_api_version in test class. Do refactor, make request_api_version as default value when 'api_version' is None so that the functional tests are more readable. Change-Id: I6163cb18b82ffa80ccde23f7f555e253bfec78b0 --- nova/tests/functional/api_samples_test_base.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/nova/tests/functional/api_samples_test_base.py b/nova/tests/functional/api_samples_test_base.py index e78c103dc3aa..2cc2bf4b6e1f 100644 --- a/nova/tests/functional/api_samples_test_base.py +++ b/nova/tests/functional/api_samples_test_base.py @@ -318,18 +318,24 @@ class ApiSampleTestBase(integrated_helpers._IntegratedTestBase): def _do_get(self, url, strip_version=False, api_version=None): return self._get_response(url, 'GET', strip_version=strip_version, - api_version=api_version) + api_version=(api_version or + self.request_api_version)) def _do_post(self, url, name, subs, method='POST', api_version=None): body = self._read_template(name) % subs sample = self._get_sample(name, self.request_api_version) if self.generate_samples and not os.path.exists(sample): self._write_sample(name, body) - return self._get_response(url, method, body, api_version=api_version) + return self._get_response(url, method, body, + api_version=(api_version or + self.request_api_version)) def _do_put(self, url, name, subs, api_version=None): return self._do_post(url, name, subs, method='PUT', - api_version=api_version) + api_version=(api_version or + self.request_api_version)) def _do_delete(self, url, api_version=None): - return self._get_response(url, 'DELETE', api_version=api_version) + return self._get_response(url, 'DELETE', + api_version=(api_version or + self.request_api_version))