diff options
Diffstat (limited to 'lib/tests/test_opts2.c')
-rw-r--r-- | lib/tests/test_opts2.c | 69 |
1 files changed, 41 insertions, 28 deletions
diff --git a/lib/tests/test_opts2.c b/lib/tests/test_opts2.c index 23496617..d1b0aca3 100644 --- a/lib/tests/test_opts2.c +++ b/lib/tests/test_opts2.c | |||
@@ -30,16 +30,18 @@ void my_free(int *argc, char **newargv, char **argv) { | |||
30 | printf("'%s' ", newargv[i]); | 30 | printf("'%s' ", newargv[i]); |
31 | /* Stop freeing when we get to the start of the original array */ | 31 | /* Stop freeing when we get to the start of the original array */ |
32 | if (freeflag) { | 32 | if (freeflag) { |
33 | if (newargv[i] == argv[1]) | 33 | if (newargv[i] == argv[1]) { |
34 | freeflag = 0; | 34 | freeflag = 0; |
35 | else | 35 | } else { |
36 | free(newargv[i]); | 36 | free(newargv[i]); |
37 | } | ||
37 | } | 38 | } |
38 | } | 39 | } |
39 | printf("\n"); | 40 | printf("\n"); |
40 | /* Free only if it's a different array */ | 41 | /* Free only if it's a different array */ |
41 | if (newargv != argv) | 42 | if (newargv != argv) { |
42 | free(newargv); | 43 | free(newargv); |
44 | } | ||
43 | *argc = 0; | 45 | *argc = 0; |
44 | } | 46 | } |
45 | 47 | ||
@@ -51,8 +53,9 @@ int array_diff(int i1, char **a1, int i2, char **a2) { | |||
51 | return 0; | 53 | return 0; |
52 | } | 54 | } |
53 | for (i = 0; i <= i1; i++) { | 55 | for (i = 0; i <= i1; i++) { |
54 | if (a1[i] == NULL && a2[i] == NULL) | 56 | if (a1[i] == NULL && a2[i] == NULL) { |
55 | continue; | 57 | continue; |
58 | } | ||
56 | if (a1[i] == NULL || a2[i] == NULL) { | 59 | if (a1[i] == NULL || a2[i] == NULL) { |
57 | printf(" Argument # %i null in one array!\n", i); | 60 | printf(" Argument # %i null in one array!\n", i); |
58 | return 0; | 61 | return 0; |
@@ -90,7 +93,8 @@ int main(int argc, char **argv) { | |||
90 | } | 93 | } |
91 | 94 | ||
92 | { | 95 | { |
93 | char *argv_test[] = {"prog_name", "arg1", "--extra-opts=section1", "--arg3", "val2", (char *)NULL}; | 96 | char *argv_test[] = {"prog_name", "arg1", "--extra-opts=section1", |
97 | "--arg3", "val2", (char *)NULL}; | ||
94 | argc_test = 5; | 98 | argc_test = 5; |
95 | char *argv_known[] = {"prog_name", "--foobar=baz", "arg1", "--arg3", "val2", (char *)NULL}; | 99 | char *argv_known[] = {"prog_name", "--foobar=baz", "arg1", "--arg3", "val2", (char *)NULL}; |
96 | argv_new = np_extra_opts(&argc_test, argv_test, "check_disk"); | 100 | argv_new = np_extra_opts(&argc_test, argv_test, "check_disk"); |
@@ -108,30 +112,39 @@ int main(int argc, char **argv) { | |||
108 | } | 112 | } |
109 | 113 | ||
110 | { | 114 | { |
111 | char *argv_test[] = {"check_tcp", "--extra-opts", "--extra-opts=tcp_long_lines", (char *)NULL}; | 115 | char *argv_test[] = {"check_tcp", "--extra-opts", "--extra-opts=tcp_long_lines", |
116 | (char *)NULL}; | ||
112 | argc_test = 3; | 117 | argc_test = 3; |
113 | char *argv_known[] = { | 118 | char *argv_known[] = {"check_tcp", |
114 | "check_tcp", | 119 | "--timeout=10", |
115 | "--timeout=10", | 120 | "--escape", |
116 | "--escape", | 121 | "--send=Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda " |
117 | "--send=Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " | 122 | "Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " |
118 | "yadda Foo bar BAZ yadda " | 123 | "yadda Foo bar BAZ yadda " |
119 | "yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " | 124 | "yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " |
120 | "yadda Foo bar BAZ " | 125 | "yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " |
121 | "yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda " | 126 | "yadda Foo bar BAZ " |
122 | "yadda yadda Foo bar " | 127 | "yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda " |
123 | "BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda", | 128 | "yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda " |
124 | "--expect=Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " | 129 | "yadda yadda Foo bar " |
125 | "yadda Foo bar BAZ yadda " | 130 | "BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ " |
126 | "yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " | 131 | "yadda yadda yadda Foo bar BAZ yadda yadda yadda", |
127 | "yadda Foo bar BAZ " | 132 | "--expect=Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " |
128 | "yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda " | 133 | "yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " |
129 | "yadda yadda Foo bar " | 134 | "yadda Foo bar BAZ yadda " |
130 | "BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ " | 135 | "yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " |
131 | "yadda yadda yadda Foo " | 136 | "yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda " |
132 | "bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda", | 137 | "yadda Foo bar BAZ " |
133 | "--jail", | 138 | "yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda " |
134 | (char *)NULL}; | 139 | "yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda " |
140 | "yadda yadda Foo bar " | ||
141 | "BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ " | ||
142 | "yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ " | ||
143 | "yadda yadda yadda Foo " | ||
144 | "bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ " | ||
145 | "yadda yadda yadda Foo bar BAZ yadda yadda yadda", | ||
146 | "--jail", | ||
147 | (char *)NULL}; | ||
135 | argv_new = np_extra_opts(&argc_test, argv_test, "check_tcp"); | 148 | argv_new = np_extra_opts(&argc_test, argv_test, "check_tcp"); |
136 | ok(array_diff(argc_test, argv_new, 6, argv_known), "Long lines test"); | 149 | ok(array_diff(argc_test, argv_new, 6, argv_known), "Long lines test"); |
137 | my_free(&argc_test, argv_new, argv_test); | 150 | my_free(&argc_test, argv_new, argv_test); |