diff options
author | Dhaval Giani <dhaval@linux.vnet.ibm.com> | 2008-07-01 13:43:16 +0000 |
---|---|---|
committer | Dhaval Giani <dhaval@linux.vnet.ibm.com> | 2008-07-01 13:43:16 +0000 |
commit | ffaadffb864b22966c5adcd8f676755d00bf4d0f (patch) | |
tree | 6dcf5b39f2decdebe5527cbefe715291adaf5a1c /tests/libcgrouptest01.c | |
parent | ee559ea2d27f859caf75633e3b4849b0420536fe (diff) | |
download | libcg-ffaadffb864b22966c5adcd8f676755d00bf4d0f.tar.gz libcg-ffaadffb864b22966c5adcd8f676755d00bf4d0f.tar.xz libcg-ffaadffb864b22966c5adcd8f676755d00bf4d0f.zip |
From: Sudhir Kumar <skumar@linux.vnet.ibm.com>
libcgroup: framework for libcgroup testcases
This Patch creates the basic infrastructure for libcgroup testcases. This
patch adds a script which runs the binary(C) file. The script does all the
environment setup to run the tests and passes this info to the C file through
command line arguments. The binary runs the test cases calling the API's
in different environment conditions. The Makefile compiles the test. The top
level Makefile.in is edited to support
make test
make testclean
The script runs this binary total 3 times, each time with diff varaible.
FS_MOUNTED=0 # cgroup fs not mounted
FS_MOUNTED=1 # cgroup fs mounted
FS_MOUNTED=2 # cgroup fs mounted at multiple points
Signed-off-by: Sudhir Kumar <skumar@linux.vnet.ibm.com>
Signed-off-by: Dhaval Giani <dhaval@linux.vnet.ibm.com>
git-svn-id: https://libcg.svn.sourceforge.net/svnroot/libcg/trunk@87 4f4bb910-9a46-0410-90c8-c897d4f1cd53
Diffstat (limited to 'tests/libcgrouptest01.c')
-rw-r--r-- | tests/libcgrouptest01.c | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/tests/libcgrouptest01.c b/tests/libcgrouptest01.c new file mode 100644 index 0000000..fd4b915 --- /dev/null +++ b/tests/libcgrouptest01.c @@ -0,0 +1,75 @@ +/* + * Copyright IBM Corporation. 2008 + * + * Author: Sudhir Kumar <skumar@linux.vnet.ibm.com> + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2.1 of the GNU Lesser General Public License + * as published by the Free Software Foundation. + * + * This program is distributed in the hope that it would be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * Description: This file contains the test code for testing libcgroup apis. + */ + +#include "libcgrouptest.h" + +int main(int argc, char *argv[]) +{ + int fs_mounted; + + if ((argc < 3) || (atoi(argv[1]) < 0)) { + printf("ERROR: Wrong no of parameters recieved from script\n"); + printf("Exiting the libcgroup testset\n"); + exit(1); + } + fs_mounted = atoi(argv[1]); + + /* + * Testsets: Testcases are broadly devided into 3 categories based on + * filesystem(fs) mount scenario. fs not mounted, fs mounted, fs multi + * mounted. Call different apis in these different scenarios. + */ + + switch (fs_mounted) { + + case FS_NOT_MOUNTED: + /* + * Test01: call apis and check return values + * Exp outcome: + */ + printf("First set\n"); + + break; + + case FS_MOUNTED: + /* + * Test01: call apis and check return values + * Exp outcome: + */ + printf("Second set\n"); + + break; + + case FS_MULTI_MOUNTED: + /* + * Test01: call apis and check return values + * Exp outcome: + */ + printf("Third set\n"); + /* + * Will add testcases once multiple mount patch is in + */ + + break; + + default: + fprintf(stderr, "ERROR: Wrong parameters recieved from script. \ + Exiting tests\n"); + exit(1); + break; + } + return 0; +} |