twister: test: update test case
update test cases for twister 1. test_errors.py add protection. 2. test_handlers.py change call to status 3. test_testsuite.py change call to status The log traces for TwisterException objects only. And the stack trace output follow the same rules for all exceptions, but StatusAttributeError with its dedicated handlers. Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
This commit is contained in:
parent
798768e40d
commit
afba775304
4 changed files with 8 additions and 7 deletions
|
|
@ -11,9 +11,7 @@ logger.setLevel(logging.DEBUG)
|
||||||
class TwisterException(Exception):
|
class TwisterException(Exception):
|
||||||
def __init__(self, message="TwisterException"):
|
def __init__(self, message="TwisterException"):
|
||||||
super().__init__(message)
|
super().__init__(message)
|
||||||
for line in traceback.format_stack():
|
logger.error(''.join(["Twister call stack dump:\n"] + traceback.format_stack()[:-1]))
|
||||||
logger.info(line.strip())
|
|
||||||
logger.warning("======call stack dump end============")
|
|
||||||
|
|
||||||
class TwisterRuntimeError(TwisterException):
|
class TwisterRuntimeError(TwisterException):
|
||||||
pass
|
pass
|
||||||
|
|
|
||||||
|
|
@ -28,8 +28,8 @@ def test_configurationerror():
|
||||||
def test_status_value_error():
|
def test_status_value_error():
|
||||||
harness = Test()
|
harness = Test()
|
||||||
|
|
||||||
expected_err = 'Test assigned status None,' \
|
expected_err = 'Test assigned status OK,' \
|
||||||
' which could not be cast to a TwisterStatus.'
|
' which could not be cast to a TwisterStatus.'
|
||||||
|
|
||||||
with pytest.raises(StatusAttributeError, match=expected_err):
|
with pytest.raises(StatusAttributeError, match=expected_err):
|
||||||
harness.status = None
|
harness.status = "OK"
|
||||||
|
|
|
||||||
|
|
@ -131,7 +131,7 @@ def test_handler_final_handle_actions(mocked_instance):
|
||||||
handler.suite_name_check = True
|
handler.suite_name_check = True
|
||||||
|
|
||||||
harness = twisterlib.harness.Test()
|
harness = twisterlib.harness.Test()
|
||||||
harness.status = 'NONE'
|
harness.status = TwisterStatus.NONE
|
||||||
harness.detected_suite_names = mock.Mock()
|
harness.detected_suite_names = mock.Mock()
|
||||||
harness.matched_run_id = False
|
harness.matched_run_id = False
|
||||||
harness.run_id_exists = True
|
harness.run_id_exists = True
|
||||||
|
|
|
||||||
|
|
@ -648,7 +648,10 @@ def test_scan_testsuite_path(
|
||||||
|
|
||||||
def mock_stat(filename, *args, **kwargs):
|
def mock_stat(filename, *args, **kwargs):
|
||||||
result = mock.Mock()
|
result = mock.Mock()
|
||||||
type(result).st_size = sizes[filename]
|
# as we may call os.stat in code
|
||||||
|
# some protection need add here
|
||||||
|
if filename in sizes:
|
||||||
|
type(result).st_size = sizes[filename]
|
||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue