diff options
Diffstat (limited to 'test-parse-options.c')
| -rw-r--r-- | test-parse-options.c | 14 | 
1 files changed, 10 insertions, 4 deletions
| diff --git a/test-parse-options.c b/test-parse-options.c index acd1a2ba70..91a5701657 100644 --- a/test-parse-options.c +++ b/test-parse-options.c @@ -1,5 +1,6 @@  #include "cache.h"  #include "parse-options.h" +#include "string-list.h"  static int boolean = 0;  static int integer = 0; @@ -9,6 +10,7 @@ static int verbose = 0, dry_run = 0, quiet = 0;  static char *string = NULL;  static char *file = NULL;  static int ambiguous; +static struct string_list list;  static int length_callback(const struct option *opt, const char *arg, int unset)  { @@ -46,7 +48,7 @@ int main(int argc, const char **argv)  		OPT_DATE('t', NULL, ×tamp, "get timestamp of <time>"),  		OPT_CALLBACK('L', "length", &integer, "str",  			"get length of <str>", length_callback), -		OPT_FILENAME('F', "file", &file, "set file to <FILE>"), +		OPT_FILENAME('F', "file", &file, "set file to <file>"),  		OPT_GROUP("String options"),  		OPT_STRING('s', "string", &string, "string", "get a string"),  		OPT_STRING(0, "string2", &string, "str", "get another string"), @@ -54,6 +56,7 @@ int main(int argc, const char **argv)  		OPT_STRING('o', NULL, &string, "str", "get another string"),  		OPT_SET_PTR(0, "default-string", &string,  			"set string to default", (unsigned long)"default"), +		OPT_STRING_LIST(0, "list", &list, "str", "add str to list"),  		OPT_GROUP("Magic arguments"),  		OPT_ARGUMENT("quux", "means --quux"),  		OPT_NUMBER_CALLBACK(&integer, "set integer to NUM", @@ -66,9 +69,9 @@ int main(int argc, const char **argv)  		  "negative ambiguity", PARSE_OPT_NOARG | PARSE_OPT_NONEG },  		OPT_GROUP("Standard options"),  		OPT__ABBREV(&abbrev), -		OPT__VERBOSE(&verbose), -		OPT__DRY_RUN(&dry_run), -		OPT__QUIET(&quiet), +		OPT__VERBOSE(&verbose, "be verbose"), +		OPT__DRY_RUN(&dry_run, "dry run"), +		OPT__QUIET(&quiet, "be quiet"),  		OPT_END(),  	};  	int i; @@ -85,6 +88,9 @@ int main(int argc, const char **argv)  	printf("dry run: %s\n", dry_run ? "yes" : "no");  	printf("file: %s\n", file ? file : "(not set)"); +	for (i = 0; i < list.nr; i++) +		printf("list: %s\n", list.items[i].string); +  	for (i = 0; i < argc; i++)  		printf("arg %02d: %s\n", i, argv[i]); | 
