test: skip tests if cgroup isn't mounted

Debian builds in a chroot without cgroup mounted, so tests expecting
to access cgroup will fail with ENOMEDIUM, so skip the tests in that
situation.
This commit is contained in:
Dan Streetman
2021-02-25 16:32:04 +09:00
committed by Yu Watanabe
parent a437c5e4da
commit b66789a9b5
3 changed files with 12 additions and 5 deletions
+1 -1
View File
@@ -338,7 +338,7 @@ static void test_cg_tests(void) {
r = cg_unified();
if (r == -ENOMEDIUM) {
log_notice_errno(r, "Skipping cg hierarchy tests: %m");
log_tests_skipped("cgroup not mounted");
return;
}
assert_se(r >= 0);
+3 -2
View File
@@ -47,10 +47,11 @@ static void test_cg_create(void) {
int r;
r = cg_unified_cached(false);
if (r < 0) {
log_info_errno(r, "Skipping %s: %m", __func__);
if (r == -ENOMEDIUM) {
log_tests_skipped("cgroup not mounted");
return;
}
assert_se(r >= 0);
_cleanup_free_ char *here = NULL;
assert_se(cg_pid_get_path_shifted(0, NULL, &here) >= 0);
+8 -2
View File
@@ -129,6 +129,11 @@ static void test_condition_test_control_group_hierarchy(void) {
int r;
r = cg_unified();
if (r == -ENOMEDIUM) {
log_tests_skipped("cgroup not mounted");
return;
}
assert_se(r >= 0);
condition = condition_new(CONDITION_CONTROL_GROUP_CONTROLLER, "v1", false, false);
assert_se(condition);
@@ -148,10 +153,11 @@ static void test_condition_test_control_group_controller(void) {
int r;
r = cg_unified();
if (r < 0) {
log_notice_errno(r, "Skipping ConditionControlGroupController tests: %m");
if (r == -ENOMEDIUM) {
log_tests_skipped("cgroup not mounted");
return;
}
assert_se(r >= 0);
/* Invalid controllers are ignored */
condition = condition_new(CONDITION_CONTROL_GROUP_CONTROLLER, "thisisnotarealcontroller", false, false);