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=a4cc3d44a288ed94c0839bd6970e4bcc8088fb99;hp=63f7ebda08d05bedc1d0abe8ddcedf8224247a30;hb=6b46ea73e3b1d8a1e65f58ac04772821bd4a72fb;hpb=fa3cd7394c227ad38c5c09b2bc2d035e7fb14a76 diff --git a/src/test/test-sched-prio.c b/src/test/test-sched-prio.c index 63f7ebda0..a4cc3d44a 100644 --- a/src/test/test-sched-prio.c +++ b/src/test/test-sched-prio.c @@ -22,7 +22,7 @@ #include #include "manager.h" - +#include "macro.h" int main(int argc, char *argv[]) { Manager *m; @@ -30,10 +30,17 @@ int main(int argc, char *argv[]) { Service *ser; FILE *serial = NULL; FDSet *fdset = NULL; + int r; + const char *dir = TEST_DIR; /* prepare the test */ - assert_se(set_unit_path(TEST_DIR) >= 0); - assert_se(manager_new(SYSTEMD_USER, &m) >= 0); + assert_se(set_unit_path(dir) >= 0); + r = manager_new(SYSTEMD_USER, &m); + if (r == -EPERM || r == -EACCES || r == -EADDRINUSE || r == -EHOSTDOWN) { + printf("Skipping test: manager_new: %s", strerror(-r)); + return EXIT_TEST_SKIP; + } + assert(r >= 0); assert_se(manager_startup(m, serial, fdset) >= 0); /* load idle ok */ @@ -82,5 +89,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; }