mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-19 03:15:00 +00:00

This fixture name is quite long and results in lots of verbose code. We know this is U-Boot so the 'u_boot_' part is not necessary. But it is also a bit of a misnomer, since it provides access to all the information available to tests. It is not just the console. It would be too confusing to use con as it would be confused with config and it is probably too short. So shorten it to 'ubman'. Signed-off-by: Simon Glass <sjg@chromium.org> Link: https://lore.kernel.org/u-boot/CAFLszTgPa4aT_J9h9pqeTtLCVn4x2JvLWRcWRD8NaN3uoSAtyA@mail.gmail.com/
45 lines
1.5 KiB
Python
45 lines
1.5 KiB
Python
# SPDX-License-Identifier: GPL-2.0
|
|
# Copyright (c) 2015 Stephen Warren
|
|
# Copyright (c) 2015-2016, NVIDIA CORPORATION. All rights reserved.
|
|
|
|
import pytest
|
|
import signal
|
|
|
|
@pytest.mark.boardspec('sandbox')
|
|
@pytest.mark.buildconfigspec('sysreset_cmd_poweroff')
|
|
def test_poweroff(ubman):
|
|
"""Test that the "poweroff" command exits sandbox process."""
|
|
|
|
ubman.run_command('poweroff', wait_for_prompt=False)
|
|
assert(ubman.validate_exited())
|
|
|
|
@pytest.mark.boardspec('sandbox')
|
|
def test_ctrl_c(ubman):
|
|
"""Test that sending SIGINT to sandbox causes it to exit."""
|
|
|
|
ubman.kill(signal.SIGINT)
|
|
assert(ubman.validate_exited())
|
|
|
|
@pytest.mark.boardspec('sandbox')
|
|
@pytest.mark.buildconfigspec('cmd_exception')
|
|
@pytest.mark.buildconfigspec('sandbox_crash_reset')
|
|
def test_exception_reset(ubman):
|
|
"""Test that SIGILL causes a reset."""
|
|
|
|
ubman.run_command('exception undefined', wait_for_prompt=False)
|
|
m = ubman.p.expect(['resetting ...', 'U-Boot'])
|
|
if m != 0:
|
|
raise Exception('SIGILL did not lead to reset')
|
|
m = ubman.p.expect(['U-Boot', '=>'])
|
|
if m != 0:
|
|
raise Exception('SIGILL did not lead to reset')
|
|
ubman.restart_uboot()
|
|
|
|
@pytest.mark.boardspec('sandbox')
|
|
@pytest.mark.buildconfigspec('cmd_exception')
|
|
@pytest.mark.notbuildconfigspec('sandbox_crash_reset')
|
|
def test_exception_exit(ubman):
|
|
"""Test that SIGILL causes a reset."""
|
|
|
|
ubman.run_command('exception undefined', wait_for_prompt=False)
|
|
assert(ubman.validate_exited())
|