X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=functest%2Fopnfv_tests%2Fvnf%2Fims%2Fclearwater_ims_base.py;h=94915c8390a90354936eec2cbf925665a11d01bd;hb=8b81b33530a9e46e7e6e7f8b81e752892bf9f2b9;hp=8851f7a485f10ac322d4f2c7e47b92325d9a188e;hpb=29085f8b3de77ce989a5ab2c2a8ac87c657fe54c;p=functest.git diff --git a/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py b/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py index 8851f7a48..94915c839 100644 --- a/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py +++ b/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py @@ -9,16 +9,16 @@ import json import logging import os -import pkg_resources import shlex import shutil import subprocess import time +import pkg_resources import requests import functest.core.vnf as vnf -from functest.utils.constants import CONST +from functest.utils import config import functest.utils.functest_utils as ft_utils __author__ = ("Valentin Boucher , " @@ -33,10 +33,10 @@ class ClearwaterOnBoardingBase(vnf.VnfOnBoarding): super(ClearwaterOnBoardingBase, self).__init__(**kwargs) self.case_dir = pkg_resources.resource_filename( 'functest', 'opnfv_tests/vnf/ims') - self.data_dir = CONST.__getattribute__('dir_ims_data') - self.result_dir = os.path.join(CONST.__getattribute__('dir_results'), + self.data_dir = getattr(config.CONF, 'dir_ims_data') + self.result_dir = os.path.join(getattr(config.CONF, 'dir_results'), self.case_name) - self.test_dir = CONST.__getattribute__('dir_repo_vims_test') + self.test_dir = getattr(config.CONF, 'dir_repo_vims_test') if not os.path.exists(self.data_dir): os.makedirs(self.data_dir) @@ -52,11 +52,14 @@ class ClearwaterOnBoardingBase(vnf.VnfOnBoarding): "full_name": "opnfv functest user", "email": "functest@opnfv.org", "signup_code": signup_code} - rq = requests.post(account_url, data=params) + req = requests.post(account_url, data=params) output_dict['login'] = params - if rq.status_code != 201 and rq.status_code != 409: - raise Exception("Unable to create an account for number provision") - self.logger.debug('Account is created on Ellis: %s', params) + if req.status_code != 201 and req.status_code != 409: + raise Exception( + "Unable to create an account {}\n{}".format( + params, req.text)) + self.logger.debug( + 'Account %s is created on Ellis\n%s', params, req.json()) session_url = 'http://{0}/session'.format(ellis_ip) session_data = { @@ -64,25 +67,26 @@ class ClearwaterOnBoardingBase(vnf.VnfOnBoarding): 'password': params['password'], 'email': params['email'] } - rq = requests.post(session_url, data=session_data) - if rq.status_code != 201: - raise Exception('Failed to get cookie for Ellis') - cookies = rq.cookies + req = requests.post(session_url, data=session_data) + if req.status_code != 201: + raise Exception('Failed to get cookie for Ellis\n{}'.format( + req.text)) + cookies = req.cookies self.logger.debug('Cookies: %s', cookies) number_url = 'http://{0}/accounts/{1}/numbers'.format( - ellis_ip, - params['email']) + ellis_ip, params['email']) self.logger.debug('Create 1st calling number on Ellis') i = 30 - while rq.status_code != 200 and i > 0: + while req.status_code != 200 and i > 0: try: number_res = self.create_ellis_number(number_url, cookies) break - except: + except Exception: # pylint: disable=broad-except if i == 1: + self.logger.exception("Unable to create a number") raise Exception("Unable to create a number") - self.logger.warn("Unable to create a number. Retry ..") + self.logger.info("Unable to create a number. Retry ..") time.sleep(25) i = i - 1 output_dict['number'] = number_res @@ -95,15 +99,15 @@ class ClearwaterOnBoardingBase(vnf.VnfOnBoarding): return output_dict def create_ellis_number(self, number_url, cookies): - rq = requests.post(number_url, cookies=cookies) + req = requests.post(number_url, cookies=cookies) - if rq.status_code != 200: - if rq and rq.json(): - reason = rq.json()['reason'] + if req.status_code != 200: + if req and req.json(): + reason = req.json()['reason'] else: - reason = rq + reason = req raise Exception("Unable to create a number: %s" % reason) - number_res = rq.json() + number_res = req.json() self.logger.info('Calling number is created: %s', number_res) return number_res @@ -154,12 +158,12 @@ class ClearwaterOnBoardingBase(vnf.VnfOnBoarding): with open(tempFile) as f: vims_test_result = json.load(f) f.close() - except Exception: + except Exception: # pylint: disable=broad-except self.logger.error("Unable to retrieve test results") try: os.remove(tempFile) - except Exception: + except Exception: # pylint: disable=broad-except self.logger.error("Deleting file failed") return vims_test_result