summaryrefslogtreecommitdiffstats
path: root/dovetail
diff options
context:
space:
mode:
Diffstat (limited to 'dovetail')
-rw-r--r--dovetail/report.py12
-rw-r--r--dovetail/test_runner.py10
-rw-r--r--dovetail/testcase.py6
3 files changed, 7 insertions, 21 deletions
diff --git a/dovetail/report.py b/dovetail/report.py
index c74595cc..8d157559 100644
--- a/dovetail/report.py
+++ b/dovetail/report.py
@@ -257,14 +257,10 @@ class FunctestCrawler(Crawler):
if not os.path.exists(file_path):
self.logger.error('Result file not found: {}'.format(file_path))
return None
- if testcase_name in dt_cfg.dovetail_config['functest_testcase']:
- complex_testcase = False
- elif testcase_name in dt_cfg.dovetail_config['functest_testsuite']:
- complex_testcase = True
- else:
- self.logger.error(
- "Wrong Functest test case {}.".format(testcase_name))
- return None
+
+ sub_testcase_list = testcase.sub_testcase()
+ complex_testcase = True if sub_testcase_list else False
+
with open(file_path, 'r') as f:
for jsonfile in f:
try:
diff --git a/dovetail/test_runner.py b/dovetail/test_runner.py
index c49182b8..cb5578b0 100644
--- a/dovetail/test_runner.py
+++ b/dovetail/test_runner.py
@@ -62,15 +62,7 @@ class DockerRunner(object):
if not Container.pull_image(docker_image):
self.logger.error("Failed to pull the image.")
return
- # for sdnvpn, there is a need to download needed images to config_dir
- # in dovetail_config.yml first.
- if 'sdnvpn' in str(self.testcase.name()):
- img_name = dt_cfg.dovetail_config['sdnvpn_image']
- img_file = os.path.join(dt_cfg.dovetail_config['images_dir'],
- img_name)
- if not os.path.isfile(img_file):
- self.logger.error('Image {} not found.'.format(img_name))
- return
+
container_id = Container.create(self.testcase.validate_type(),
self.testcase.name(), docker_image)
if not container_id:
diff --git a/dovetail/testcase.py b/dovetail/testcase.py
index 69b8ee4c..ff716292 100644
--- a/dovetail/testcase.py
+++ b/dovetail/testcase.py
@@ -71,10 +71,8 @@ class Testcase(object):
return self.testcase['objective']
def sub_testcase(self):
- try:
- return self.testcase['report']['sub_testcase_list']
- except KeyError:
- return []
+ return dt_utils.get_value_from_dict('report.sub_testcase_list',
+ self.testcase)
def sub_testcase_passed(self, name, passed=None):
if passed is not None: