X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Ftest%2Ftest-sched-prio.c;h=6b3128d3b7956f3e852406cb463fd143f26197f7;hp=29235e83478f59d440467469058d82b71fdb82c4;hb=72e6110485926c884f056717a21e4f5f3942908c;hpb=f274ece0f76b5709408821e317e87aef76123db6 diff --git a/src/test/test-sched-prio.c b/src/test/test-sched-prio.c index 29235e834..6b3128d3b 100644 --- a/src/test/test-sched-prio.c +++ b/src/test/test-sched-prio.c @@ -22,18 +22,24 @@ #include #include "manager.h" - +#include "macro.h" int main(int argc, char *argv[]) { - Manager *m; + Manager *m = NULL; Unit *idle_ok, *idle_bad, *rr_ok, *rr_bad, *rr_sched; Service *ser; FILE *serial = NULL; FDSet *fdset = NULL; + int r; /* prepare the test */ assert_se(set_unit_path(TEST_DIR) >= 0); - assert_se(manager_new(SYSTEMD_SYSTEM, &m) >= 0); + r = manager_new(SYSTEMD_USER, true, &m); + if (IN_SET(r, -EPERM, -EACCES, -EADDRINUSE, -EHOSTDOWN, -ENOENT)) { + printf("Skipping test: manager_new: %s", strerror(-r)); + return EXIT_TEST_SKIP; + } + assert_se(r >= 0); assert_se(manager_startup(m, serial, fdset) >= 0); /* load idle ok */ @@ -82,5 +88,7 @@ int main(int argc, char *argv[]) { assert_se(ser->exec_context.cpu_sched_policy == SCHED_RR); assert_se(ser->exec_context.cpu_sched_priority == 99); - return 0; + manager_free(m); + + return EXIT_SUCCESS; }