aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCédric Ollivier <cedric.ollivier@orange.com>2021-06-11 15:09:25 +0200
committerCédric Ollivier <cedric.ollivier@orange.com>2021-08-19 14:46:30 +0200
commit980453e9fd0f188437dc4c691f1f88da8539827f (patch)
tree0252b519aeaf22cb3189e3d70ce422650c3145c5
parent0327d9a2d8cab091f31b9c8435ef3b9e56df8e06 (diff)
Fix tag logics in behave
The unit tests will be fully rewritten in a second change (out of this bugfix). Co-Authored-By: Ugur Caglar Kilic <ugur.caglar.kilic@oracle.com> Change-Id: I6413fbcecdf44dbfe9c978045f4b1d43ca0de2ec Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com> (cherry picked from commit e2a7ac290649fe12228604876fdd63976734bec5) (cherry picked from commit 261536179b363e0260e4e0068e4471bfb7c63b60)
-rw-r--r--xtesting/core/behaveframework.py6
-rw-r--r--xtesting/tests/unit/core/test_behaveframework.py8
2 files changed, 8 insertions, 6 deletions
diff --git a/xtesting/core/behaveframework.py b/xtesting/core/behaveframework.py
index dacda27d..2ee54d03 100644
--- a/xtesting/core/behaveframework.py
+++ b/xtesting/core/behaveframework.py
@@ -80,7 +80,6 @@ class BehaveFramework(testcase.TestCase):
"""
try:
suites = kwargs["suites"]
- tags = kwargs.get("tags", [])
except KeyError:
self.__logger.exception("Mandatory args were not passed")
return self.EX_RUN_ERROR
@@ -90,13 +89,14 @@ class BehaveFramework(testcase.TestCase):
except Exception: # pylint: disable=broad-except
self.__logger.exception("Cannot create %s", self.res_dir)
return self.EX_RUN_ERROR
- config = ['--tags='+','.join(tags),
- '--junit', '--junit-directory={}'.format(self.res_dir),
+ config = ['--junit', '--junit-directory={}'.format(self.res_dir),
'--format=json', '--outfile={}'.format(self.json_file)]
if six.PY3:
html_file = os.path.join(self.res_dir, 'output.html')
config += ['--format=behave_html_formatter:HTMLFormatter',
'--outfile={}'.format(html_file)]
+ if kwargs.get("tags", False):
+ config += ['--tags='+','.join(kwargs.get("tags", []))]
if kwargs.get("console", False):
config += ['--format=pretty', '--outfile=-']
for feature in suites:
diff --git a/xtesting/tests/unit/core/test_behaveframework.py b/xtesting/tests/unit/core/test_behaveframework.py
index 2baaba03..00515cee 100644
--- a/xtesting/tests/unit/core/test_behaveframework.py
+++ b/xtesting/tests/unit/core/test_behaveframework.py
@@ -85,7 +85,7 @@ class RunTesting(unittest.TestCase):
# pylint: disable=missing-docstring
suites = ["foo"]
- tags = []
+ tags = ["bar"]
def setUp(self):
self.test = behaveframework.BehaveFramework(
@@ -119,13 +119,14 @@ class RunTesting(unittest.TestCase):
self.test.EX_OK)
html_file = os.path.join(self.test.res_dir, 'output.html')
args_list = [
- '--tags=', '--junit',
+ '--junit',
'--junit-directory={}'.format(self.test.res_dir),
'--format=json', '--outfile={}'.format(self.test.json_file)]
if six.PY3:
args_list += [
'--format=behave_html_formatter:HTMLFormatter',
'--outfile={}'.format(html_file)]
+ args_list.append('--tags='+','.join(self.tags))
args_list.append('foo')
args[0].assert_called_once_with(args_list)
mock_method.assert_called_once_with()
@@ -153,13 +154,14 @@ class RunTesting(unittest.TestCase):
status)
html_file = os.path.join(self.test.res_dir, 'output.html')
args_list = [
- '--tags=', '--junit',
+ '--junit',
'--junit-directory={}'.format(self.test.res_dir),
'--format=json', '--outfile={}'.format(self.test.json_file)]
if six.PY3:
args_list += [
'--format=behave_html_formatter:HTMLFormatter',
'--outfile={}'.format(html_file)]
+ args_list.append('--tags='+','.join(self.tags))
if console:
args_list += ['--format=pretty', '--outfile=-']
args_list.append('foo')