Browse Source

opt: test the new embedded-\n-in-usage behaviour.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Rusty Russell 12 years ago
parent
commit
76565e3d88
1 changed files with 9 additions and 3 deletions
  1. 9 3
      ccan/opt/test/run-usage.c

+ 9 - 3
ccan/opt/test/run-usage.c

@@ -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);