chiark / gitweb /
cgroup: when escaping a cgroup object name, also escape names that start with a dot
[elogind.git] / src / test / test-cgroup-util.c
index 6726f8fb136bc1e11c249f5589021bda2343387c..c9634d42b0999b1480ea5f774e5ef53b6ea26851 100644 (file)
@@ -85,7 +85,7 @@ static void test_get_paths(void) {
         assert_se(cg_get_user_path(&c) >= 0);
         log_info("User = %s", c);
 
-        assert_se(cg_get_machine_path(&d) >= 0);
+        assert_se(cg_get_machine_path("harley", &d) >= 0);
         log_info("Machine = %s", d);
 }
 
@@ -146,11 +146,15 @@ static void test_escape_one(const char *s, const char *r) {
 
 static void test_escape(void) {
         test_escape_one("foobar", "foobar");
+        test_escape_one(".foobar", "_.foobar");
         test_escape_one("foobar.service", "foobar.service");
         test_escape_one("cgroup.service", "_cgroup.service");
         test_escape_one("cpu.service", "_cpu.service");
         test_escape_one("tasks", "_tasks");
         test_escape_one("_foobar", "__foobar");
+        test_escape_one("", "_");
+        test_escape_one("_", "__");
+        test_escape_one(".", "_.");
 }
 
 static void test_controller_is_valid(void) {