Commit 2e26b06e authored by Rusty Russell's avatar Rusty Russell

ccan: add test for line-wrapping usage message.

Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
parent bf06b6e9
...@@ -30,7 +30,7 @@ int main(int argc, char *argv[]) ...@@ -30,7 +30,7 @@ int main(int argc, char *argv[])
char *longname = strdup("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); char *longname = strdup("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
char *shortname = strdup("shortname"); char *shortname = strdup("shortname");
plan_tests(48); plan_tests(50);
opt_register_table(subtables, NULL); opt_register_table(subtables, NULL);
opt_register_noarg("--kkk|-k", my_cb, NULL, "magic kkk option"); opt_register_noarg("--kkk|-k", my_cb, NULL, "magic kkk option");
opt_register_noarg("-?", opt_usage_and_exit, "<MyArgs>...", opt_register_noarg("-?", opt_usage_and_exit, "<MyArgs>...",
...@@ -108,6 +108,17 @@ int main(int argc, char *argv[]) ...@@ -108,6 +108,17 @@ int main(int argc, char *argv[])
ok1(strstr(output, "AAAAll")); ok1(strstr(output, "AAAAll"));
free(output); free(output);
reset_options();
/* Valgrind nails this to 100 anyway :( */
setenv("COLUMNS", "100", 1);
opt_register_noarg("--long", my_cb, NULL, "Extremely long option which requires more than one line for its full description to be shown in the usage message.");
output = opt_usage("longarg", NULL);
diag("%s", output);
ok1(strstr(output, "Usage: longarg \n"));
ok1(strstr(output, "\n--long Extremely long option which requires more than one line for its full description to be shown\n"
" in the usage message.\n"));
free(output);
free(shortname); free(shortname);
free(longname); free(longname);
return exit_status(); return exit_status();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment