1
/* test_values_cc.cc test */
3
/* test values options */
8
#include "test_values_cmd.h"
10
static struct gengetopt_args_info args_info;
13
main (int argc, char **argv)
18
if (test_values_cmd_parser (argc, argv, &args_info) != 0) {
23
if (args_info.string_values_given)
25
printf ("specified --string-values with argument %s\n", args_info.string_values_arg);
26
printf ("specified --string-values with (original) argument %s\n", args_info.string_values_orig);
29
if (!args_info.string_values_def_given)
31
printf ("specified --string-values-def with argument %s\n", args_info.string_values_def_arg);
33
if (!args_info.string_values_def_argopt_given)
35
printf ("specified --string-values-def-argopt with argument %s\n",
36
args_info.string_values_def_argopt_arg);
38
if (args_info.string_values_no_short_given)
40
printf ("specified --string-values-no-short with argument %s\n",
41
args_info.string_values_no_short_arg);
44
for (i = 0; i < args_info.multistring_values_given; ++i)
46
printf ("specified --multistring-values with argument %s\n",
47
args_info.multistring_values_arg[i]);
48
printf ("specified --multistring-values with (original) argument %s\n",
49
args_info.multistring_values_orig[i]);
52
for (i = 0; i < args_info.multistring_values_def_given; ++i)
54
printf ("specified --multistring-values-def with argument %s\n",
55
args_info.multistring_values_def_arg[i]);
57
("specified --multistring-values-def with (original) argument %s\n",
58
(args_info.multistring_values_def_orig[i] ?
59
args_info.multistring_values_def_orig[i] : "(null)"));
62
for (i = 0; i < args_info.multistring_values_no_short_given; ++i)
63
printf ("specified --multistring-values-no-short with argument %s\n",
64
args_info.multistring_values_no_short_arg[i]);
66
if (args_info.int_values_given)
68
printf ("specified --int-values with argument %d\n",
69
args_info.int_values_arg);
70
printf ("specified --int-values with (original) argument %s\n",
71
args_info.int_values_orig);
74
for (i = 0; i < args_info.int_values_m_given; ++i) {
75
printf("specified --int-values-m with argument %d\n",
76
args_info.int_values_m_arg[i]);
77
printf ("specified --int-values-m with (original) argument %s\n",
78
args_info.int_values_m_orig[i]);
81
if (!args_info.int_values_def_given)
83
printf ("specified --int-values-def with argument %d\n",
84
args_info.int_values_def_arg);
86
if (args_info.values_first_enums_given)
87
printf("specified --values-first-enums with argument %d (%s)\n",
88
args_info.values_first_enums_arg,
89
test_values_cmd_parser_values_first_enums_values
90
[args_info.values_first_enums_arg]);
92
if (args_info.values_first_enums_plus_given)
93
printf("specified --values-first-enums-plus with argument %d (%s)\n",
94
args_info.values_first_enums_plus_arg,
95
test_values_cmd_parser_values_first_enums_plus_values
96
[args_info.values_first_enums_plus_arg]);
98
if (!args_info.values_second_enums_given)
100
printf("specified --values-second-enums with argument %d (%s)\n",
101
args_info.values_second_enums_arg,
102
test_values_cmd_parser_values_second_enums_values
103
[args_info.values_second_enums_arg]);
105
for (i = 0; i < args_info.values_multiple_enums_given; ++i)
107
printf ("specified --values-multiple-enums with argument %d\n",
108
args_info.values_multiple_enums_arg[i]);
110
("specified --values-multiple-enums with (original) argument %s\n",
111
(args_info.values_multiple_enums_orig[i] ?
112
args_info.values_multiple_enums_orig[i] : "(null)"));
115
if (args_info.file_save_given) {
116
if (test_values_cmd_parser_file_save (args_info.file_save_arg, &args_info) == EXIT_FAILURE)
119
printf ("saved configuration file %s\n", args_info.file_save_arg);
123
test_values_cmd_parser_free (&args_info);