Pass current target to test_method **overwrite.
This commit is contained in:
parent
6c98d7e4bd
commit
9f8b63da38
2 changed files with 14 additions and 2 deletions
|
@ -180,17 +180,20 @@ def test_method(**kwargs):
|
||||||
if key in env_config:
|
if key in env_config:
|
||||||
env_config[key] = kwargs[key]
|
env_config[key] = kwargs[key]
|
||||||
|
|
||||||
|
# Runner.py should overwrite target with the current target.
|
||||||
env_config.update(overwrite)
|
env_config.update(overwrite)
|
||||||
|
|
||||||
# FIXME: CI need more variable here. add `if CI_TARGET: ...` later with CI.
|
# This code block is used to run test script locally without
|
||||||
|
# Runner.py
|
||||||
target = env_config['target'] if 'target' in env_config else kwargs['target']
|
target = env_config['target'] if 'target' in env_config else kwargs['target']
|
||||||
dut_dict = kwargs['dut_dict']
|
|
||||||
if isinstance(target, list):
|
if isinstance(target, list):
|
||||||
target = target[0]
|
target = target[0]
|
||||||
elif isinstance(target, str):
|
elif isinstance(target, str):
|
||||||
target = target
|
target = target
|
||||||
else:
|
else:
|
||||||
raise TypeError('keyword targets can only be list or str')
|
raise TypeError('keyword targets can only be list or str')
|
||||||
|
|
||||||
|
dut_dict = kwargs['dut_dict']
|
||||||
if target not in dut_dict:
|
if target not in dut_dict:
|
||||||
raise Exception('target can only be {%s}' % ', '.join(dut_dict.keys()))
|
raise Exception('target can only be {%s}' % ', '.join(dut_dict.keys()))
|
||||||
|
|
||||||
|
|
|
@ -190,6 +190,15 @@ class Parser(object):
|
||||||
_overwrite = cls.handle_overwrite_args(_config.pop("overwrite", dict()))
|
_overwrite = cls.handle_overwrite_args(_config.pop("overwrite", dict()))
|
||||||
_extra_data = _config.pop("extra_data", None)
|
_extra_data = _config.pop("extra_data", None)
|
||||||
_filter.update(_config)
|
_filter.update(_config)
|
||||||
|
|
||||||
|
# Try get target from yml
|
||||||
|
try:
|
||||||
|
_target = _filter['target']
|
||||||
|
except KeyError:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
_overwrite.update({'target': _target})
|
||||||
|
|
||||||
for test_method in test_methods:
|
for test_method in test_methods:
|
||||||
if _filter_one_case(test_method, _filter):
|
if _filter_one_case(test_method, _filter):
|
||||||
test_case_list.append(TestCase.TestCase(test_method, _extra_data, **_overwrite))
|
test_case_list.append(TestCase.TestCase(test_method, _extra_data, **_overwrite))
|
||||||
|
|
Loading…
Reference in a new issue