#include #include "util.h" #include "cgroup-util.h" #define check_c_t_u(path, code, result) \ { \ char a[] = path; \ char *unit = NULL; \ assert_se(cgroup_to_unit(a, &unit) == code); \ assert(code < 0 || streq(unit, result)); \ } static void test_cgroup_to_unit(void) { check_c_t_u("/system/getty@.service/tty2", 0, "getty@tty2.service"); check_c_t_u("/system/getty@.service/", -EINVAL, "getty@tty2.service"); check_c_t_u("/system/getty@.service", -EINVAL, "getty@tty2.service"); check_c_t_u("/system/getty.service", 0, "getty.service"); check_c_t_u("/system/getty", -EINVAL, "getty.service"); } int main(void) { test_cgroup_to_unit(); return 0; }