diff options
Diffstat (limited to 'functest/core')
-rw-r--r-- | functest/core/feature_base.py | 1 | ||||
-rw-r--r-- | functest/core/testcase_base.py | 47 | ||||
-rw-r--r-- | functest/core/vnf_base.py | 26 |
3 files changed, 12 insertions, 62 deletions
diff --git a/functest/core/feature_base.py b/functest/core/feature_base.py index 873e21da..fe9a9998 100644 --- a/functest/core/feature_base.py +++ b/functest/core/feature_base.py @@ -24,6 +24,7 @@ class FeatureBase(base.TestcaseBase): self.post() self.parse_results(ret) self.log_results() + self.logger.info("Test result is stored in '%s'" % self.result_file) return base.TestcaseBase.EX_OK def prepare(self, **kwargs): diff --git a/functest/core/testcase_base.py b/functest/core/testcase_base.py index ec46bc64..838b6398 100644 --- a/functest/core/testcase_base.py +++ b/functest/core/testcase_base.py @@ -9,7 +9,6 @@ import os -from functest.utils.constants import CONST import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as ft_utils @@ -18,7 +17,7 @@ class TestcaseBase(object): EX_OK = os.EX_OK EX_RUN_ERROR = os.EX_SOFTWARE - EX_PUBLISH_RESULT_FAILED = os.EX_SOFTWARE - 1 + EX_PUSH_TO_DB_ERROR = os.EX_SOFTWARE - 1 EX_TESTCASE_FAILED = os.EX_SOFTWARE - 2 logger = ft_logger.Logger(__name__).getLogger() @@ -44,45 +43,21 @@ class TestcaseBase(object): self.logger.error("Run must be implemented") return TestcaseBase.EX_RUN_ERROR - def publish_report(self): - if "RESULTS_STORE" in os.environ: - CONST.results_test_db_url = os.environ['RESULTS_STORE'] - + def push_to_db(self): try: assert self.project_name assert self.case_name assert self.criteria assert self.start_time assert self.stop_time - if CONST.results_test_db_url.lower().startswith( - ("http://", "https://")): - self.push_to_db() - elif CONST.results_test_db_url.lower().startswith("file://"): - self.write_to_file() + if ft_utils.push_results_to_db( + self.project_name, self.case_name, self.start_time, + self.stop_time, self.criteria, self.details): + self.logger.info("The results were successfully pushed to DB") + return TestcaseBase.EX_OK else: - self.logger.error("Please check parameter test_db_url and " - "OS environ variable RESTULTS_STORE") - return TestcaseBase.EX_PUBLISH_RESULT_FAILED + self.logger.error("The results cannot be pushed to DB") + return TestcaseBase.EX_PUSH_TO_DB_ERROR except Exception: - self.logger.exception("The results cannot be stored") - return TestcaseBase.EX_PUBLISH_RESULT_FAILED - - def write_to_file(self): - if ft_utils.write_results_to_file( - self.project_name, self.case_name, self.start_time, - self.stop_time, self.criteria, self.details): - self.logger.info("The results were successfully written to a file") - return TestcaseBase.EX_OK - else: - self.logger.error("write results to a file failed") - return TestcaseBase.EX_PUBLISH_RESULT_FAILED - - def push_to_db(self): - if ft_utils.push_results_to_db( - self.project_name, self.case_name, self.start_time, - self.stop_time, self.criteria, self.details): - self.logger.info("The results were successfully pushed to DB") - return TestcaseBase.EX_OK - else: - self.logger.error("The results cannot be pushed to DB") - return TestcaseBase.EX_PUBLISH_RESULT_FAILED + self.logger.exception("The results cannot be pushed to DB") + return TestcaseBase.EX_PUSH_TO_DB_ERROR diff --git a/functest/core/vnf_base.py b/functest/core/vnf_base.py index 4d019858..44b4ae04 100644 --- a/functest/core/vnf_base.py +++ b/functest/core/vnf_base.py @@ -7,12 +7,10 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 -import os import time import inspect - import functest.utils.functest_logger as ft_logger import functest.utils.openstack_utils as os_utils import functest.utils.functest_utils as ft_utils @@ -161,30 +159,6 @@ class VnfOnBoardingBase(base.TestcaseBase): "username": self.tenant_name, "password": self.tenant_name, }) - self.glance_client = os_utils.get_glance_client(self.creds) - self.logger.info("Upload some OS images if it doesn't exist") - - temp_dir = os.path.join(self.data_dir, "tmp/") - for image_name, image_url in self.images.iteritems(): - image_id = os_utils.get_image_id(self.glance_client, image_name) - - if image_id == '': - self.logger.info("""%s image doesn't exist on glance repository. Try - downloading this image and upload on glance !""" % image_name) - image_id = os_utils.download_and_add_image_on_glance( - self.glance_client, image_name, image_url, temp_dir) - - if image_id == '': - self.step_failure( - "Failed to find or upload required OS " - "image for this deployment") - - self.logger.info("Update security group quota for this tenant") - - if not os_utils.update_sg_quota(self.neutron_client, - tenant_id, 50, 100): - self.step_failure("Failed to update security group quota" + - " for tenant " + self.tenant_name) # orchestrator is not mandatory to dpeloy and test VNF def deploy_orchestrator(self, **kwargs): |