aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCédric Ollivier <cedric.ollivier@orange.com>2022-03-03 11:19:47 +0100
committerCédric Ollivier <cedric.ollivier@orange.com>2022-03-03 12:17:04 +0100
commit318c2e427e2933fdff2213bf807249c66628b56f (patch)
tree3371123b18a970f8812c93c409fd73c4f0aa5e42
parent6e7f515947c54d3ed9bb3df9cc2014fc1baaea51 (diff)
Allow overriding project_name via env
It now offers a new env var, PROJECT_NAME, to override the default value in testcases.yaml. Change-Id: I911f1af56afe88edb37de40176733b65bc8e490a Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
-rw-r--r--xtesting/core/testcase.py3
-rw-r--r--xtesting/tests/unit/core/test_testcase.py18
2 files changed, 20 insertions, 1 deletions
diff --git a/xtesting/core/testcase.py b/xtesting/core/testcase.py
index 179a5684..b44ed793 100644
--- a/xtesting/core/testcase.py
+++ b/xtesting/core/testcase.py
@@ -60,7 +60,8 @@ class TestCase(metaclass=abc.ABCMeta):
def __init__(self, **kwargs):
self.details = {}
- self.project_name = kwargs.get('project_name', 'xtesting')
+ self.project_name = os.environ.get(
+ 'PROJECT_NAME', kwargs.get('project_name', 'xtesting'))
self.case_name = kwargs.get('case_name', '')
self.criteria = kwargs.get('criteria', 100)
self.result = 0
diff --git a/xtesting/tests/unit/core/test_testcase.py b/xtesting/tests/unit/core/test_testcase.py
index 990883c6..dbefd974 100644
--- a/xtesting/tests/unit/core/test_testcase.py
+++ b/xtesting/tests/unit/core/test_testcase.py
@@ -42,6 +42,24 @@ class AbstractTestCaseTesting(unittest.TestCase):
testcase.TestCase(case_name="base", project_name="xtesting")
+class ProjectNameTesting(unittest.TestCase):
+
+ _case_name = "base"
+ _project_name = "xtesting"
+
+ def test_project_name_yaml(self):
+ test = FakeTestCase(
+ case_name=self._case_name, project_name=self._project_name)
+ self.assertEqual(self._project_name, test.project_name)
+
+ def test_project_name_env(self):
+ os.environ['PROJECT_NAME'] = 'whatever'
+ test = FakeTestCase(
+ case_name=self._case_name, project_name=self._project_name)
+ self.assertEqual('whatever', test.project_name)
+ del os.environ['PROJECT_NAME']
+
+
class TestCaseTesting(unittest.TestCase):
# pylint: disable=too-many-instance-attributes,too-many-public-methods