diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/libcgrouptest.h | 1 | ||||
-rw-r--r-- | tests/libcgrouptest01.c | 38 |
2 files changed, 38 insertions, 1 deletions
diff --git a/tests/libcgrouptest.h b/tests/libcgrouptest.h index de2f67b..73b25e3 100644 --- a/tests/libcgrouptest.h +++ b/tests/libcgrouptest.h @@ -84,6 +84,7 @@ void test_cgroup_attach_task(int retcode, struct cgroup *cgroup1, /* API test functions end here */ void test_cgroup_compare_cgroup(int ctl1, int ctl2, int i); +void test_cgroup_get_cgroup(int i); void get_controllers(const char *name, int *exist); static int group_exist(char *path_group); static int set_controller(int controller, char *controller_name, diff --git a/tests/libcgrouptest01.c b/tests/libcgrouptest01.c index 5ec0b68..2f71f2f 100644 --- a/tests/libcgrouptest01.c +++ b/tests/libcgrouptest01.c @@ -381,8 +381,17 @@ int main(int argc, char *argv[]) strncpy(extra, "\n", SIZE); + /* Test14: Test cgroup_get_cgroup() api + * The group group1 has been created and modified in the + * filesystem. Read it using the api and check if the values + * are correct as we know all the control values now. + * WARN: If any of the previous api fails and control reaches + * here, this api also will fail + */ + test_cgroup_get_cgroup(14); + /* - * Test14: delete cgroup + * Test15: delete cgroup * Exp outcome: zero return value */ retval = cgroup_delete_cgroup(cgroup1, 1); @@ -1366,6 +1375,7 @@ void set_info_msgs() case 15: strncpy(info[k], " Group not deleted globaly\n", SIZE); break; + /* In case there is no extra info messages to be printed */ case 19: strncpy(info[k], " \n", SIZE); break; @@ -1450,3 +1460,29 @@ void test_cgroup_compare_cgroup(int ctl1, int ctl2, int i) cgroup_free(&cgroup1); cgroup_free(&cgroup2); } + +void test_cgroup_get_cgroup(int i) +{ + struct cgroup *cgroup_filled; + int ret; + + /* Test with nullcgroup first */ + ret = cgroup_get_cgroup(NULL); + if (ret == ECGROUPNOTALLOWED) + message(i++, PASS, "get_cgroup()", ret, info[0]); + else + message(i++, FAIL, "get_cgroup()", ret, info[0]); + + /* Test with name filled cgroup */ + cgroup_filled = cgroup_new_cgroup("group1"); + if (!cgroup_filled) + message(i++, FAIL, "new_cgroup()", 0, info[19]); + + ret = cgroup_get_cgroup(cgroup_filled); + if (!ret) + message(i++, PASS, "get_cgroup()", ret, info[19]); + else + message(i++, FAIL, "get_cgroup()", ret, info[19]); + + cgroup_free(&cgroup_filled); +} |