tests: Skip tests which need to access /sys/fs/cgroup if that is not available
Commit efdb023
("core: unified cgroup hierarchy support") introduced a new
error ENOEXEC in cg_unified() if /sys/fs/cgroup/ is not available. Adjust the
"skip" checks in various tests accordingly.
Add a corresponding "skip" check to test-bus-creds as well, as
sd_bus_creds_new_from_pid() now calls cg_unified() as well.
This re-fixes "make check" in build chroots without /sys/fs/cgroup.
https://github.com/systemd/systemd/issues/1132
This commit is contained in:
parent
794ec1eb8b
commit
3b3a64d754
|
@ -22,11 +22,17 @@
|
|||
#include "sd-bus.h"
|
||||
#include "bus-dump.h"
|
||||
#include "bus-util.h"
|
||||
#include "cgroup-util.h"
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
_cleanup_bus_creds_unref_ sd_bus_creds *creds = NULL;
|
||||
int r;
|
||||
|
||||
if (cg_unified() == -ENOEXEC) {
|
||||
puts("Skipping test: /sys/fs/cgroup/ not available");
|
||||
return EXIT_TEST_SKIP;
|
||||
}
|
||||
|
||||
r = sd_bus_creds_new_from_pid(&creds, 0, _SD_BUS_CREDS_ALL);
|
||||
assert_se(r >= 0);
|
||||
|
||||
|
|
|
@ -38,7 +38,7 @@ int main(int argc, char *argv[]) {
|
|||
/* prepare the test */
|
||||
assert_se(set_unit_path(TEST_DIR) >= 0);
|
||||
r = manager_new(MANAGER_USER, true, &m);
|
||||
if (IN_SET(r, -EPERM, -EACCES, -EADDRINUSE, -EHOSTDOWN, -ENOENT)) {
|
||||
if (IN_SET(r, -EPERM, -EACCES, -EADDRINUSE, -EHOSTDOWN, -ENOENT, -ENOEXEC)) {
|
||||
printf("Skipping test: manager_new: %s", strerror(-r));
|
||||
return EXIT_TEST_SKIP;
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ static int setup_test(Manager **m) {
|
|||
assert_se(m);
|
||||
|
||||
r = manager_new(MANAGER_USER, true, &tmp);
|
||||
if (IN_SET(r, -EPERM, -EACCES, -EADDRINUSE, -EHOSTDOWN, -ENOENT)) {
|
||||
if (IN_SET(r, -EPERM, -EACCES, -EADDRINUSE, -EHOSTDOWN, -ENOENT, -ENOEXEC)) {
|
||||
printf("Skipping test: manager_new: %s", strerror(-r));
|
||||
return -EXIT_TEST_SKIP;
|
||||
}
|
||||
|
|
|
@ -35,7 +35,7 @@ int main(int argc, char *argv[]) {
|
|||
/* prepare the test */
|
||||
assert_se(set_unit_path(TEST_DIR) >= 0);
|
||||
r = manager_new(MANAGER_USER, true, &m);
|
||||
if (IN_SET(r, -EPERM, -EACCES, -EADDRINUSE, -EHOSTDOWN, -ENOENT)) {
|
||||
if (IN_SET(r, -EPERM, -EACCES, -EADDRINUSE, -EHOSTDOWN, -ENOENT, -ENOEXEC)) {
|
||||
printf("Skipping test: manager_new: %s", strerror(-r));
|
||||
return EXIT_TEST_SKIP;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue