summaryrefslogtreecommitdiff
path: root/test/py/tests/test_smbios.py
blob: 3b85a7cc6614e326b99776d2455e43656c2191d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# 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(ubman):
    """Run the smbios command"""
    output = ubman.run_command('smbios')
    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(ubman):
    """Run the smbios command on QEMU"""
    output = ubman.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(ubman):
    """Run the smbios command on the sandbox"""
    output = ubman.run_command('smbios')
    assert 'DMI type 0,' in output
    assert 'Vendor: 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

@pytest.mark.buildconfigspec('cmd_smbios')
@pytest.mark.buildconfigspec('sysinfo_smbios')
@pytest.mark.buildconfigspec('generate_smbios_table_verbose')
def test_cmd_smbios_sysinfo_verbose(ubman):
    """Run the smbios command"""
    output = ubman.run_command('smbios')
    assert 'DMI type 0,' in output
    assert 'Vendor: U-Boot' in output
    assert 'DMI type 1,' in output
    assert 'Manufacturer: linux' in output
    assert 'DMI type 2,' in output
    assert 'DMI type 3,' in output
    assert 'DMI type 7,' in output
    assert 'DMI type 4,' in output
    assert 'DMI type 127,' in output