cmcfarlen opened a new pull request, #13658: URL: https://github.com/apache/trafficserver/pull/13658
Resurrecting #12703 but with help from Claude Registering whole executables means a failure names the binary rather than the case that broke, a single case cannot be run on its own, and ctest can only schedule at executable granularity. Use catch_discover_tests so ctest sees each TEST_CASE, which takes the suite from ~100 entries to 1022. That only works if cases stop depending on each other, since each now runs in its own process concurrently with the rest. Fixed the fallout: - test_http2 relied on whichever case ran first calling url_init() and friends; moved that into the test-run listener. - The plugin.yaml, storage/plugin/ssl_multicert config, and cache shm tests each shared one fixed temp file or POSIX shm name across every case, so concurrent cases deleted each other's state. Made those per process. The config tests get a directory per process rather than unique file names, which preserves the names they depend on. - test_RefCountCache has its own main() and is not a Catch2 runner, so it stays a single add_test. add_catch2_test grows an ENVIRONMENT argument. It applies the variables via a `cmake -E env` prefix instead of ctest's ENVIRONMENT property because catch_discover_tests flattens PROPERTIES into one ;-joined string, which silently dropped all but the first variable and clobbered SKIP_RETURN_CODE. --order decl is gone: with one case per process there is no order left to pin. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
