diff mbox series

[1/1] test/py: serial# cannot be overwritten on some devices

Message ID 20200807211135.131908-1-xypron.glpk@gmx.de
State Accepted
Commit 38ee01e4ddf7cca53fcf6585dd00373246b4df40
Delegated to: Tom Rini
Headers show
Series [1/1] test/py: serial# cannot be overwritten on some devices | expand

Commit Message

Heinrich Schuchardt Aug. 7, 2020, 9:11 p.m. UTC
On some devices the environment variable serial# cannot be overwritten.
Set the variable only if it is not set.

For our unit test it is sufficient to test if any value for serial-number
is set.

Fixes: 8a5cdf601f8d ("test: efi_selftest: Do not force serial# setting")
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
 test/py/tests/test_efi_selftest.py | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

--
2.20.1

Comments

Tom Rini Aug. 8, 2020, 12:32 p.m. UTC | #1
On Fri, Aug 07, 2020 at 11:11:35PM +0200, Heinrich Schuchardt wrote:

> On some devices the environment variable serial# cannot be overwritten.
> Set the variable only if it is not set.
> 
> For our unit test it is sufficient to test if any value for serial-number
> is set.
> 
> Fixes: 8a5cdf601f8d ("test: efi_selftest: Do not force serial# setting")
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/test/py/tests/test_efi_selftest.py b/test/py/tests/test_efi_selftest.py
index 9b520c2070..63218efbc2 100644
--- a/test/py/tests/test_efi_selftest.py
+++ b/test/py/tests/test_efi_selftest.py
@@ -23,6 +23,7 @@  def test_efi_selftest(u_boot_console):
     u_boot_console.restart_uboot()

 @pytest.mark.buildconfigspec('cmd_bootefi_selftest')
+@pytest.mark.buildconfigspec('hush_parser')
 @pytest.mark.buildconfigspec('of_control')
 @pytest.mark.notbuildconfigspec('generate_acpi_table')
 def test_efi_selftest_device_tree(u_boot_console):
@@ -36,9 +37,11 @@  def test_efi_selftest_device_tree(u_boot_console):
     output = u_boot_console.run_command('bootefi selftest')
     assert '\'device tree\'' in output
     u_boot_console.run_command(cmd='setenv efi_selftest device tree')
-    u_boot_console.run_command(cmd='setenv serial# Testing DT')
+    # Set serial# if it is not already set.
+    u_boot_console.run_command(cmd='setenv efi_test "${serial#}x"')
+    u_boot_console.run_command(cmd='test "${efi_test}" = x && setenv serial# 0')
     u_boot_console.run_command(cmd='bootefi selftest ${fdtcontroladdr}', wait_for_prompt=False)
-    m = u_boot_console.p.expect(['serial-number: Testing DT', 'U-Boot'])
+    m = u_boot_console.p.expect(['serial-number:', 'U-Boot'])
     if m != 0:
         raise Exception('serial-number missing in device tree')
     u_boot_console.restart_uboot()