summaryrefslogtreecommitdiff
path: root/src/test/test-specifier.c
diff options
context:
space:
mode:
authorLuca Boccassi <bluca@debian.org>2022-10-25 01:12:46 +0100
committerLuca Boccassi <bluca@debian.org>2022-10-25 16:00:26 +0100
commit0011d686278d479516d980c3ca0ec6a84bd3b3d2 (patch)
treeb0932f74f76ddcc1399e42af8609ab9ecf298db1 /src/test/test-specifier.c
parent0baddbebe5057a4dd570f24f99ce0c31e7cdc143 (diff)
downloadsystemd-0011d686278d479516d980c3ca0ec6a84bd3b3d2.tar.gz
test-specifier: do not fail if machine-id is missing
When building in a chroot there might not be any machine-id
Diffstat (limited to 'src/test/test-specifier.c')
-rw-r--r--src/test/test-specifier.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/test/test-specifier.c b/src/test/test-specifier.c
index 516502032a..4a8ff4bd10 100644
--- a/src/test/test-specifier.c
+++ b/src/test/test-specifier.c
@@ -74,7 +74,7 @@ TEST(specifier_printf) {
assert_se(streq(w, "xxx a=AAAA b=BBBB e= yyy"));
free(w);
- r = specifier_printf("machine=%m, boot=%b, host=%H, pretty=%q, version=%v, arch=%a, empty=%e", SIZE_MAX, table, NULL, NULL, &w);
+ r = specifier_printf("boot=%b, host=%H, pretty=%q, version=%v, arch=%a, empty=%e", SIZE_MAX, table, NULL, NULL, &w);
assert_se(r >= 0);
assert_se(w);
puts(w);
@@ -127,13 +127,18 @@ TEST(specifier_real_path_missing_file) {
}
TEST(specifiers) {
+ int r;
+
for (const Specifier *s = specifier_table; s->specifier; s++) {
char spec[3];
_cleanup_free_ char *resolved = NULL;
xsprintf(spec, "%%%c", s->specifier);
- assert_se(specifier_printf(spec, SIZE_MAX, specifier_table, NULL, NULL, &resolved) >= 0);
+ r = specifier_printf(spec, SIZE_MAX, specifier_table, NULL, NULL, &resolved);
+ if (s->specifier == 'm' && IN_SET(r, -ENOENT, -ENOMEDIUM)) /* machine-id might be missing in build chroots */
+ continue;
+ assert_se(r >= 0);
log_info("%%%c → %s", s->specifier, resolved);
}