1# SPDX-License-Identifier: GPL-2.0+ 2 3import pytest 4 5@pytest.mark.boardspec('sandbox') 6@pytest.mark.buildconfigspec('cmd_gpio') 7def test_gpio_input(u_boot_console): 8 """Test that gpio input correctly returns the value of a gpio pin.""" 9 10 response = u_boot_console.run_command('gpio input 0; echo rc:$?') 11 expected_response = 'rc:0' 12 assert(expected_response in response) 13 response = u_boot_console.run_command('gpio toggle 0; gpio input 0; echo rc:$?') 14 expected_response = 'rc:1' 15 assert(expected_response in response) 16 17@pytest.mark.boardspec('sandbox') 18@pytest.mark.buildconfigspec('cmd_gpio') 19def test_gpio_exit_statuses(u_boot_console): 20 """Test that non-input gpio commands correctly return the command 21 success/failure status.""" 22 23 expected_response = 'rc:0' 24 response = u_boot_console.run_command('gpio clear 0; echo rc:$?') 25 assert(expected_response in response) 26 response = u_boot_console.run_command('gpio set 0; echo rc:$?') 27 assert(expected_response in response) 28 response = u_boot_console.run_command('gpio toggle 0; echo rc:$?') 29 assert(expected_response in response) 30 response = u_boot_console.run_command('gpio status -a; echo rc:$?') 31 assert(expected_response in response) 32 33 expected_response = 'rc:1' 34 response = u_boot_console.run_command('gpio nonexistent-command; echo rc:$?') 35 assert(expected_response in response) 36 response = u_boot_console.run_command('gpio input 200; echo rc:$?') 37 assert(expected_response in response) 38