diff --git a/test/README-dev.md b/test/README-dev.md index d015bcf5bf..d8922de000 100644 --- a/test/README-dev.md +++ b/test/README-dev.md @@ -130,7 +130,11 @@ Generic form of C test executables int setup_tests(void) { ADD_TEST(my_test); /* Add each test separately */ - return 1; /* Indicate success */ + return 1; /* Indicates success. Return 0 */ + /* to produce an error with a */ + /* usage message and -1 for */ + /* failure to set up with no */ + /* usage message. */ } You should use the `TEST_xxx` macros provided by `testutil.h` to test all failure diff --git a/test/testutil/main.c b/test/testutil/main.c index 6716750a30..2945bb52b8 100644 --- a/test/testutil/main.c +++ b/test/testutil/main.c @@ -15,6 +15,7 @@ int main(int argc, char *argv[]) { int ret = EXIT_FAILURE; + int setup_res; test_open_streams(); @@ -26,11 +27,11 @@ int main(int argc, char *argv[]) if (!setup_test_framework(argc, argv)) goto end; - if (setup_tests()) { + if ((setup_res = setup_tests()) > 0) { ret = run_tests(argv[0]); cleanup_tests(); opt_check_usage(); - } else { + } else if (setup_res == 0) { opt_help(test_get_options()); } end: