aboutsummaryrefslogtreecommitdiffstats
path: root/functest/opnfv_tests/vnf/ims
diff options
context:
space:
mode:
authorCédric Ollivier <cedric.ollivier@orange.com>2018-06-09 10:53:41 +0200
committerCédric Ollivier <cedric.ollivier@orange.com>2018-06-09 11:25:02 +0200
commit0c55898253147b8fb6e5ef1afbf6f462a5b343b5 (patch)
tree0d05dc7dcacec517403412273068482d4eed7f3d /functest/opnfv_tests/vnf/ims
parentf7b6a9a8d69313bbb8203eaf25b2d78d86ae799c (diff)
Stop using a forked obsolete repo
It leverages on the official clearwater live test instead. It now parses the output directly. Change-Id: Ia7746c13362323daf72b3536d294401f0b7ae42f Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
Diffstat (limited to 'functest/opnfv_tests/vnf/ims')
-rw-r--r--functest/opnfv_tests/vnf/ims/clearwater_ims_base.py27
-rw-r--r--functest/opnfv_tests/vnf/ims/cloudify_ims.py32
2 files changed, 20 insertions, 39 deletions
diff --git a/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py b/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py
index 94915c839..ae01cfa3e 100644
--- a/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py
+++ b/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py
@@ -6,9 +6,9 @@
# which accompanies this distribution, and is available at
#
# http://www.apache.org/licenses/LICENSE-2.0
-import json
import logging
import os
+import re
import shlex
import shutil
import subprocess
@@ -151,19 +151,18 @@ class ClearwaterOnBoardingBase(vnf.VnfOnBoarding):
if result != "":
self.logger.debug(result)
- vims_test_result = ""
- tempFile = os.path.join(self.test_dir, "temp.json")
+ vims_test_result = {}
try:
- self.logger.debug("Trying to load test results")
- with open(tempFile) as f:
- vims_test_result = json.load(f)
- f.close()
+ grp = re.search(
+ '(\d+) failures out of (\d+) tests run\n.*?'
+ '(\d+) tests skipped', result)
+ assert grp
+ vims_test_result["failures"] = int(grp.group(1))
+ vims_test_result["total"] = int(grp.group(2))
+ vims_test_result["skipped"] = int(grp.group(3))
+ vims_test_result['passed'] = (
+ int(grp.group(2)) - int(grp.group(3)) - int(grp.group(1)))
except Exception: # pylint: disable=broad-except
- self.logger.error("Unable to retrieve test results")
-
- try:
- os.remove(tempFile)
- except Exception: # pylint: disable=broad-except
- self.logger.error("Deleting file failed")
-
+ self.logger.exception("Cannot parse live tests results")
+ return None
return vims_test_result
diff --git a/functest/opnfv_tests/vnf/ims/cloudify_ims.py b/functest/opnfv_tests/vnf/ims/cloudify_ims.py
index 659549408..711cd8237 100644
--- a/functest/opnfv_tests/vnf/ims/cloudify_ims.py
+++ b/functest/opnfv_tests/vnf/ims/cloudify_ims.py
@@ -387,24 +387,26 @@ class CloudifyIms(clearwater_ims_base.ClearwaterOnBoardingBase):
if not dns_ip:
return False
- vims_test_result = self.run_clearwater_live_test(
+ short_result = self.run_clearwater_live_test(
dns_ip=dns_ip,
public_domain=self.vnf['inputs']["public_domain"])
duration = time.time() - start_time
- short_result, nb_test = sig_test_format(vims_test_result)
self.__logger.info(short_result)
self.details['test_vnf'].update(result=short_result,
- full_result=vims_test_result,
duration=duration)
try:
- vnf_test_rate = short_result['passed'] / nb_test
+ vnf_test_rate = short_result['passed'] / (
+ short_result['total'] - short_result['skipped'])
# orchestrator + vnf + test_vnf
self.result += vnf_test_rate / 3 * 100
except ZeroDivisionError:
self.__logger.error("No test has been executed")
self.details['test_vnf'].update(status='FAIL')
return False
-
+ except Exception: # pylint: disable=broad-except
+ self.__logger.exception("Cannot calculate results")
+ self.details['test_vnf'].update(status='FAIL')
+ return False
return True if vnf_test_rate > 0 else False
def clean(self):
@@ -540,23 +542,3 @@ def _get_deployment_environment_creation_execution(client, deployment_id):
raise RuntimeError('Failed to get create_deployment_environment '
'workflow execution.'
'Available executions: {0}'.format(executions))
-
-
-def sig_test_format(sig_test):
- """Process the signaling result to have a short result."""
- nb_passed = 0
- nb_failures = 0
- nb_skipped = 0
- for data_test in sig_test:
- if data_test['result'] == "Passed":
- nb_passed += 1
- elif data_test['result'] == "Failed":
- nb_failures += 1
- elif data_test['result'] == "Skipped":
- nb_skipped += 1
- short_sig_test_result = {}
- short_sig_test_result['passed'] = nb_passed
- short_sig_test_result['failures'] = nb_failures
- short_sig_test_result['skipped'] = nb_skipped
- nb_test = nb_passed + nb_skipped
- return (short_sig_test_result, nb_test)