From: Jelle van der Waa Date: Wed, 12 Feb 2025 20:39:59 +0000 (+0100) Subject: test: assert that product_serial is preferred over board_serial X-Git-Tag: v258-rc1~1251^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=39936a1b89599e7d1b32c6e749113d0ab7e63661;p=thirdparty%2Fsystemd.git test: assert that product_serial is preferred over board_serial --- diff --git a/test/units/TEST-71-HOSTNAME.sh b/test/units/TEST-71-HOSTNAME.sh index dc3f587ea39..0813a07d46e 100755 --- a/test/units/TEST-71-HOSTNAME.sh +++ b/test/units/TEST-71-HOSTNAME.sh @@ -104,15 +104,7 @@ restore_sysfs_dmi() { stop_hostnamed } -testcase_firmware_date() { - # No DMI on s390x or ppc - if [[ ! -d /sys/class/dmi/id ]]; then - echo "/sys/class/dmi/id not found, skipping firmware date tests." - return 0 - fi - - trap restore_sysfs_dmi RETURN - +fake_sysfs_dmi() { # Ignore /sys being mounted as tmpfs mkdir -p /run/systemd/system/systemd-hostnamed.service.d/ cat >/run/systemd/system/systemd-hostnamed.service.d/override.conf </sys/class/dmi/id/uevent +} + +testcase_firmware_date() { + # No DMI on s390x or ppc + if [[ ! -d /sys/class/dmi/id ]]; then + echo "/sys/class/dmi/id not found, skipping firmware date tests." + return 0 + fi + + trap restore_sysfs_dmi RETURN + + fake_sysfs_dmi echo '09/08/2000' >/sys/class/dmi/id/bios_date stop_hostnamed @@ -138,6 +142,27 @@ EOF assert_not_in 'Firmware Date' "$(hostnamectl)" } +testcase_hardware_serial() { + # No DMI on s390x or ppc + if [[ ! -d /sys/class/dmi/id ]]; then + echo "/sys/class/dmi/id not found, skipping firmware date tests." + return 0 + fi + + trap restore_sysfs_dmi RETURN + + fake_sysfs_dmi + + echo '1234' >/sys/class/dmi/id/board_serial + stop_hostnamed + assert_eq "$(hostnamectl --json=short | jq --raw-output .HardwareSerial)" "1234" + + # product_serial is preferred over board_serial + echo '4321' >/sys/class/dmi/id/product_serial + stop_hostnamed + assert_eq "$(hostnamectl --json=short | jq --raw-output .HardwareSerial)" "4321" +} + testcase_nss-myhostname() { local database host i