Bug 550433 – g_test_init doesn't recognize --help
authorChristian Dywan <cdywan@src.gnome.org>
Mon, 8 Sep 2008 08:25:29 +0000 (08:25 +0000)
committerChristian Dywan <cdywan@src.gnome.org>
Mon, 8 Sep 2008 08:25:29 +0000 (08:25 +0000)
* glib/gtestutils.c (parse_args): Add detailed --help output

svn path=/trunk/; revision=7442

ChangeLog
glib/gtestutils.c

index 45ad19b..3590fb8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-09-08  Christian Dywan  <christian@imendio.com>
+
+       Bug 550433 – g_test_init doesn't recognize --help
+
+       * glib/gtestutils.c (parse_args): Add detailed --help output
+
 2008-09-02  Matthias Clasen  <mclasen@redhat.com>
 
        * configure.in: Bump version
index 8c0eb1f..179a3d7 100644 (file)
@@ -228,6 +228,9 @@ g_test_log (GTestLogType lbit,
     }
 }
 
+/* We intentionally parse the command line without GOptionContext
+ * because otherwise you would never be able to test it.
+ */
 static void
 parse_args (gint    *argc_p,
             gchar ***argv_p)
@@ -347,6 +350,27 @@ parse_args (gint    *argc_p,
             }
           argv[i] = NULL;
         }
+      else if (strcmp ("-?", argv[i]) == 0 || strcmp ("--help", argv[i]) == 0)
+        {
+          printf ("Usage:\n"
+                  "  %s [OPTION...]\n\n"
+                  "Help Options:\n"
+                  "  -?, --help                     Show help options\n"
+                  "Test Options:\n"
+                  "  -l                             List test cases available in a test executable\n"
+                  "  -seed=RANDOMSEED               Provide a random seed to reproduce test\n"
+                  "                                 runs using random numbers\n"
+                  "  --verbose                      Run tests verbosely\n"
+                  "  -q, --quiet                    Run tests quietly\n"
+                  "  -p TESTPATH                    execute all tests matching TESTPATH\n"
+                  "  -m {perf|slow|thorough|quick}  Execute tests according modes\n"
+                  "  --debug-log                    debug test logging output\n"
+                  "  -k, --keep-going               gtester-specific argument\n"
+                  "  --GTestLogFD=N                 gtester-specific argument\n"
+                  "  --GTestSkipCount=N             gtester-specific argument\n",
+                  argv[0]);
+          exit (0);
+        }
     }
   /* collapse argv */
   e = 1;