
On Sat, Dec 23, 2023 at 01:44:29AM +0100, Heinrich Schuchardt wrote:
Provide a unit test for the smbios command.
Provide different test functions for QEMU, sandbox, and other systems.
Signed-off-by: Heinrich Schuchardt xypron.glpk@gmx.de Acked-by: Ilias Apalodimas ilias.apalodimas@linaro.org Reviewed-by: Simon Glass sjg@chromium.org
test/py/tests/test_smbios.py | 47 ++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 test/py/tests/test_smbios.py
-- 2.43.0
diff --git a/test/py/tests/test_smbios.py b/test/py/tests/test_smbios.py new file mode 100644 index 0000000000..86d8d07539 --- /dev/null +++ b/test/py/tests/test_smbios.py @@ -0,0 +1,47 @@ +# SPDX-License-Identifier: GPL-2.0-or-later
+"""Test smbios command"""
+import pytest
+@pytest.mark.buildconfigspec('cmd_smbios') +@pytest.mark.notbuildconfigspec('qfw_smbios') +@pytest.mark.notbuildconfigspec('sandbox') +def test_cmd_smbios(u_boot_console):
- """Run the smbios command"""
- output = u_boot_console.run_command('smbios')
- assert 'DMI type 0,' in output
- assert 'String 1: U-Boot' in output
- assert 'DMI type 1,' in output
- assert 'DMI type 2,' in output
- assert 'DMI type 3,' in output
- assert 'DMI type 4,' in output
- assert 'DMI type 127,' in output
+@pytest.mark.buildconfigspec('cmd_smbios') +@pytest.mark.buildconfigspec('qfw_smbios') +@pytest.mark.notbuildconfigspec('sandbox') +# TODO: +# QEMU v8.2.0 lacks SMBIOS support for RISC-V +# Once support is available in our Docker image we can remove the constraint. +@pytest.mark.notbuildconfigspec('riscv') +def test_cmd_smbios_qemu(u_boot_console):
- """Run the smbios command on QEMU"""
- output = u_boot_console.run_command('smbios')
- assert 'DMI type 1,' in output
- assert 'Manufacturer: QEMU' in output
- assert 'DMI type 127,' in output
+@pytest.mark.buildconfigspec('cmd_smbios') +@pytest.mark.buildconfigspec('sandbox') +def test_cmd_smbios_sandbox(u_boot_console):
- """Run the smbios command on the sandbox"""
- output = u_boot_console.run_command('smbios')
- assert 'DMI type 0,' in output
- assert 'String 1: U-Boot' in output
- assert 'DMI type 1,' in output
- assert 'Manufacturer: sandbox' in output
- assert 'DMI type 2,' in output
- assert 'DMI type 3,' in output
- assert 'DMI type 4,' in output
- assert 'DMI type 127,' in output
This fails on coreboot: https://source.denx.de/u-boot/u-boot/-/jobs/771654