test: ensure all architecture ids we define definitely fit into .v/ patterns

Just some safety checks so that we never regress on this: make sure all
architectur IDs we define are embeddable safely in .v/ entry file names.
This commit is contained in:
Lennart Poettering
2024-04-22 17:32:51 +02:00
committed by Luca Boccassi
parent 707a578865
commit 8b2f2a568d

View File

@@ -3,6 +3,7 @@
#include "architecture.h"
#include "errno-util.h"
#include "log.h"
#include "path-util.h"
#include "tests.h"
#include "virt.h"
@@ -49,5 +50,17 @@ int main(int argc, char *argv[]) {
log_info("primary library architecture=" LIB_ARCH_TUPLE);
for (Architecture i = 0; i < _ARCHITECTURE_MAX; i++) {
const char *n = ASSERT_PTR(architecture_to_string(i));
/* Let's validate that all architecture names we define are good for inclusion in .v/
* filename patterns which use "." and "_" as field separators in the filenames. */
assert(filename_part_is_valid(n));
assert(!strchr(n, '_'));
assert(!strchr(n, '.'));
log_info("Good for inclusion in .v/ filenames: %s", n);
}
return 0;
}