summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/test/test-execute.c26
1 files changed, 20 insertions, 6 deletions
diff --git a/src/test/test-execute.c b/src/test/test-execute.c
index 91ccaf72b..69368b177 100644
--- a/src/test/test-execute.c
+++ b/src/test/test-execute.c
@@ -90,6 +90,10 @@ static void test_exec_ignoresigpipe(Manager *m) {
}
static void test_exec_privatetmp(Manager *m) {
+ if (getuid() != 0) {
+ printf("Skipping test_exec_privatetmp: not root\n");
+ return;
+ }
assert_se(touch("/tmp/test-exec_privatetmp") >= 0);
test(m, "exec-privatetmp-yes.service", 0, CLD_EXITED);
@@ -99,6 +103,10 @@ static void test_exec_privatetmp(Manager *m) {
}
static void test_exec_privatedevices(Manager *m) {
+ if (getuid() != 0) {
+ printf("Skipping test_exec_privatedevices: not root\n");
+ return;
+ }
test(m, "exec-privatedevices-yes.service", 0, CLD_EXITED);
test(m, "exec-privatedevices-no.service", 0, CLD_EXITED);
}
@@ -119,10 +127,18 @@ static void test_exec_systemcallerrornumber(Manager *m) {
}
static void test_exec_user(Manager *m) {
+ if (getuid() != 0) {
+ printf("Skipping test_exec_user: not root\n");
+ return;
+ }
test(m, "exec-user.service", 0, CLD_EXITED);
}
static void test_exec_group(Manager *m) {
+ if (getuid() != 0) {
+ printf("Skipping test_exec_group: not root\n");
+ return;
+ }
test(m, "exec-group.service", 0, CLD_EXITED);
}
@@ -133,6 +149,10 @@ static void test_exec_environment(Manager *m) {
}
static void test_exec_umask(Manager *m) {
+ if (getuid() != 0) {
+ printf("Skipping test_exec_umask: not root\n");
+ return;
+ }
test(m, "exec-umask-default.service", 0, CLD_EXITED);
test(m, "exec-umask-0177.service", 0, CLD_EXITED);
}
@@ -159,12 +179,6 @@ int main(int argc, char *argv[]) {
log_parse_environment();
log_open();
- /* It is needed otherwise cgroup creation fails */
- if (getuid() != 0) {
- printf("Skipping test: not root\n");
- return EXIT_TEST_SKIP;
- }
-
assert_se(set_unit_path(TEST_DIR ":") >= 0);
r = manager_new(SYSTEMD_USER, true, &m);