diff options
author | Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> | 2015-03-07 10:32:53 -0300 |
---|---|---|
committer | Lucas De Marchi <lucas.demarchi@intel.com> | 2015-03-07 12:09:51 -0300 |
commit | 037618816c5c89fc768842793baa943583221d68 (patch) | |
tree | ed7537452e73f4b2154e799b2b23c34066d87a6d /testsuite/test-tools.c | |
parent | f4f408f9f37cbc18a7c42c05591964684287cb76 (diff) | |
download | kmod-037618816c5c89fc768842793baa943583221d68.tar.gz kmod-037618816c5c89fc768842793baa943583221d68.tar.bz2 kmod-037618816c5c89fc768842793baa943583221d68.zip |
tools: add basic versions of insert and remove
Diffstat (limited to 'testsuite/test-tools.c')
-rw-r--r-- | testsuite/test-tools.c | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/testsuite/test-tools.c b/testsuite/test-tools.c new file mode 100644 index 0000000..4a9ee9b --- /dev/null +++ b/testsuite/test-tools.c @@ -0,0 +1,71 @@ +/* + * Copyright (C) 2015 Intel Corporation. All rights reserved. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see <http://www.gnu.org/licenses/>. + */ + +#include <errno.h> +#include <inttypes.h> +#include <stddef.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include "testsuite.h" + +static noreturn int kmod_tool_insert(const struct test *t) +{ + const char *progname = ABS_TOP_BUILDDIR "/tools/kmod"; + const char *const args[] = { + progname, + "insert", "mod-simple", + NULL, + }; + + test_spawn_prog(progname, args); + exit(EXIT_FAILURE); +} +DEFINE_TEST(kmod_tool_insert, + .description = "check kmod insert", + .config = { + [TC_UNAME_R] = "4.4.4", + [TC_ROOTFS] = TESTSUITE_ROOTFS "test-tools/insert", + [TC_INIT_MODULE_RETCODES] = "", + }, + .modules_loaded = "mod-simple", + ); + +static noreturn int kmod_tool_remove(const struct test *t) +{ + const char *progname = ABS_TOP_BUILDDIR "/tools/kmod"; + const char *const args[] = { + progname, + "remove", "mod-simple", + NULL, + }; + + test_spawn_prog(progname, args); + exit(EXIT_FAILURE); +} +DEFINE_TEST(kmod_tool_remove, + .description = "check kmod remove", + .config = { + [TC_UNAME_R] = "4.4.4", + [TC_ROOTFS] = TESTSUITE_ROOTFS "test-tools/remove", + [TC_DELETE_MODULE_RETCODES] = "", + }, + ); + +TESTSUITE_MAIN(); |