diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2022-04-06 12:42:58 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2022-04-06 15:26:05 +0200 |
commit | 226281b36d96a8f45fb80f3c3b113a9b49baf9c2 (patch) | |
tree | a9a2fd5d6efcb20e814a786ded049343fe8ee791 /src/test/test-manager.c | |
parent | manager: rework manager_taint_string() (diff) | |
download | systemd-226281b36d96a8f45fb80f3c3b113a9b49baf9c2.tar.xz systemd-226281b36d96a8f45fb80f3c3b113a9b49baf9c2.zip |
Add new test-manager.c and "test" manager_taint_string()
It seems it doesn't fit well anywhere else.
Diffstat (limited to 'src/test/test-manager.c')
-rw-r--r-- | src/test/test-manager.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/test/test-manager.c b/src/test/test-manager.c new file mode 100644 index 0000000000..89f9277b28 --- /dev/null +++ b/src/test/test-manager.c @@ -0,0 +1,29 @@ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ + +#include "manager.h" +#include "tests.h" + +TEST(manager_taint_string) { + Manager m = {}; + + _cleanup_free_ char *a = manager_taint_string(&m); + assert_se(a); + log_debug("taint string w/o split-usr: '%s'", a); + /* split-usr is the only one that is cached in Manager, so we know it's not present. + * The others are queried dynamically, so we'd need to duplicate the logic here + * to test for them. Let's do just one. */ + assert_se(!strstr(a, "split-usr")); + + if (cg_all_unified() == 0) + assert_se(strstr(a, "cgroupsv1")); + else + assert_se(!strstr(a, "cgroupsv1")); + + m.taint_usr = true; + _cleanup_free_ char *b = manager_taint_string(&m); + assert_se(b); + log_debug("taint string w/ split-usr: '%s'", b); + assert_se(strstr(b, "split-usr")); +} + +DEFINE_TEST_MAIN(LOG_DEBUG); |