[PATCH libinput 2/6] test: move argument parsing into a separate function
Peter Hutterer
peter.hutterer at who-t.net
Tue May 19 20:24:58 PDT 2015
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
---
test/litest.c | 62 +++++++++++++++++++++++++++++++++--------------------------
1 file changed, 35 insertions(+), 27 deletions(-)
diff --git a/test/litest.c b/test/litest.c
index c0b515b..d581018 100644
--- a/test/litest.c
+++ b/test/litest.c
@@ -456,12 +456,6 @@ struct libinput_interface interface = {
.close_restricted = close_restricted,
};
-static const struct option opts[] = {
- { "list", 0, 0, 'l' },
- { "verbose", 0, 0, 'v' },
- { 0, 0, 0, 0}
-};
-
static int
litest_run(int argc, char **argv)
{
@@ -482,27 +476,6 @@ litest_run(int argc, char **argv)
srunner_add_suite(sr, s->suite);
}
- while(1) {
- int c;
- int option_index = 0;
-
- c = getopt_long(argc, argv, "", opts, &option_index);
- if (c == -1)
- break;
- switch(c) {
- case 'l':
- litest_list_tests(&all_tests);
- return 0;
- case 'v':
- verbose = 1;
- break;
- default:
- fprintf(stderr, "usage: %s [--list]\n", argv[0]);
- return 1;
-
- }
- }
-
if (getenv("LITEST_VERBOSE"))
verbose = 1;
@@ -1887,9 +1860,44 @@ litest_semi_mt_touch_up(struct litest_device *d,
litest_event(d, EV_SYN, SYN_REPORT, 0);
}
+static int
+litest_parse_argv(int argc, char **argv)
+{
+ static const struct option opts[] = {
+ { "list", 0, 0, 'l' },
+ { "verbose", 0, 0, 'v' },
+ { 0, 0, 0, 0}
+ };
+
+ while(1) {
+ int c;
+ int option_index = 0;
+
+ c = getopt_long(argc, argv, "", opts, &option_index);
+ if (c == -1)
+ break;
+ switch(c) {
+ case 'l':
+ litest_list_tests(&all_tests);
+ exit(0);
+ case 'v':
+ verbose = 1;
+ break;
+ default:
+ fprintf(stderr, "usage: %s [--list]\n", argv[0]);
+ return 1;
+ }
+ }
+
+ return 0;
+}
+
int
main(int argc, char **argv)
{
+ if (litest_parse_argv(argc, argv) != 0)
+ return EXIT_FAILURE;
+
litest_setup_tests();
return litest_run(argc, argv);
--
2.3.5
More information about the wayland-devel
mailing list