summaryrefslogtreecommitdiff
path: root/test/py/tests/test_button.py
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2020-10-14 13:35:05 -0400
committerTom Rini <trini@konsulko.com>2020-10-14 13:35:05 -0400
commit6731c5a5ef30e1581e3042b11893627f42949cd7 (patch)
treea5c3fe0db688a28be279cac93174389863747d23 /test/py/tests/test_button.py
parent55fca74a5ba9bb0a101b247f421e81322b945a7b (diff)
parent40a3008632abd8bb393eefc212547456f2a5cb25 (diff)
Merge branch '2020-10-14-assorted-changes'
- Add support for Linux "pstore" dumps. - Button command fixup. - gd cleanup and documentation. - Assorted other cleanups.
Diffstat (limited to 'test/py/tests/test_button.py')
-rw-r--r--test/py/tests/test_button.py36
1 files changed, 27 insertions, 9 deletions
diff --git a/test/py/tests/test_button.py b/test/py/tests/test_button.py
index 98067a98f28..3b7f148c8fc 100644
--- a/test/py/tests/test_button.py
+++ b/test/py/tests/test_button.py
@@ -4,16 +4,34 @@ import pytest
@pytest.mark.boardspec('sandbox')
@pytest.mark.buildconfigspec('cmd_button')
-def test_button_exit_statuses(u_boot_console):
- """Test that non-input button commands correctly return the command
- success/failure status."""
+def test_button_list(u_boot_console):
+ """Test listing buttons"""
- expected_response = 'rc:0'
response = u_boot_console.run_command('button list; echo rc:$?')
- assert(expected_response in response)
- response = u_boot_console.run_command('button summer; echo rc:$?')
- assert(expected_response in response)
+ assert('button1' in response)
+ assert('button2' in response)
+ assert('rc:0' in response)
+
+@pytest.mark.boardspec('sandbox')
+@pytest.mark.buildconfigspec('cmd_button')
+@pytest.mark.buildconfigspec('cmd_gpio')
+def test_button_return_code(u_boot_console):
+ """Test correct reporting of the button status
+
+ The sandbox gpio driver reports the last output value as input value.
+ We can use this in our test to emulate different input statuses.
+ """
+
+ u_boot_console.run_command('gpio set a3; gpio input a3');
+ response = u_boot_console.run_command('button button1; echo rc:$?')
+ assert('on' in response)
+ assert('rc:0' in response)
+
+ u_boot_console.run_command('gpio clear a3; gpio input a3');
+ response = u_boot_console.run_command('button button1; echo rc:$?')
+ assert('off' in response)
+ assert('rc:1' in response)
- expected_response = 'rc:1'
response = u_boot_console.run_command('button nonexistent-button; echo rc:$?')
- assert(expected_response in response)
+ assert('not found' in response)
+ assert('rc:1' in response)