opt: test the new embedded-\n-in-usage behaviour.
authorRusty Russell <rusty@rustcorp.com.au>
Tue, 11 Feb 2014 02:47:44 +0000 (13:17 +1030)
committerRusty Russell <rusty@rustcorp.com.au>
Tue, 11 Feb 2014 02:47:44 +0000 (13:17 +1030)
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
ccan/opt/test/run-usage.c

index c647537058860e03e1cbf42ec6ff9f545b2d762b..aec8324474f2b2a547574d870968c92b476e3e3e 100644 (file)
@@ -30,7 +30,7 @@ int main(int argc, char *argv[])
        char *longname = strdup("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
        char *shortname = strdup("shortname");
 
-       plan_tests(50);
+       plan_tests(51);
        opt_register_table(subtables, NULL);
        opt_register_noarg("--kkk|-k", my_cb, NULL, "magic kkk option");
        opt_register_noarg("-?", opt_usage_and_exit, "<MyArgs>...",
@@ -112,11 +112,17 @@ int main(int argc, char *argv[])
        /* 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.");
+       opt_register_noarg("--split", my_cb, NULL, "New line in\nlong 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"));
+       ok1(strstr(output, "\n"
+                  "--long   Extremely long option which requires more than one line for its full description to be\n"
+                  "         shown in the usage message.\n"));
+       ok1(strstr(output, "\n"
+                  "--split  New line in\n"
+                  "         long option which requires more than one line for its full description to be shown in the\n"
+                  "         usage message.\n"));
        free(output);
 
        free(shortname);