Commit 6bafe97b authored by Nick Mathewson's avatar Nick Mathewson 🏃
Browse files

Add a TOR_SKIP_TESTCASES environment variable for suppressing tests.

For example, "TOR_SKIP_TESTCASES=crypto/.. ./src/test/test" will run
the tests and suppress all the "crypto/" tests.  You could get the
same effect by running "./src/test/test :crypto/..", but that can be
harder to arrange from CI.

Part of a fix/workaround for 33643.
parent 3150c303
o Minor features (testing):
- The unit tests now support a "TOR_SKIP_TESTCASES" environment variable
to specify a list of space-separated test cases that should not be
executed. We will use this to disable certain tests that are failing on
Appveyor because of mismatched OpenSSL libraries. Part of ticket 33643.
...@@ -348,6 +348,21 @@ main(int c, const char **v) ...@@ -348,6 +348,21 @@ main(int c, const char **v)
atexit(remove_directory); atexit(remove_directory);
/* Look for TOR_SKIP_TESTCASES: a space-separated list of tests to skip. */
const char *skip_tests = getenv("TOR_SKIP_TESTCASES");
if (skip_tests) {
smartlist_t *skip = smartlist_new();
smartlist_split_string(skip, skip_tests, NULL,
int n = 0;
SMARTLIST_FOREACH_BEGIN(skip, char *, cp) {
n += tinytest_skip(testgroups, cp);
printf("Skipping %d testcases.\n", n);
int have_failed = (tinytest_main(c, v, testgroups) != 0); int have_failed = (tinytest_main(c, v, testgroups) != 0);
free_pregenerated_keys(); free_pregenerated_keys();
Supports Markdown
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