https://github.com/philsquared/Catch

sort by:
Revision Author Date Message Commit Date
5df88da 3.1.1 17 October 2022, 17:57:58 UTC
5cd8938 Update explanation of REQUIRE_FALSE in docs/assertions.md 17 October 2022, 13:13:00 UTC
6a422ba Trim superfluous whitespace in docs 17 October 2022, 13:02:45 UTC
a07ac3f Rewrite explanation of problems with && and || in assertions 17 October 2022, 10:36:02 UTC
d8619f0 Fixup shard index docs Closes #2547 16 October 2022, 15:00:29 UTC
95cd95e Add extra explanations to some items in docs/readme.md This should make it easier for people to find what they need, e.g. finding generators by looking for "value parameterized tests". 15 October 2022, 21:50:20 UTC
eb73975 Bold section 'headings' in docs/readme.md 15 October 2022, 21:50:18 UTC
d1394a7 Link to SECTIONS doc at top of test fixtures page. I came here looking for a way to use a fixture. But what I really wanted was better done in the SECTION macro. Feels like a link right at the top would've made it clearer faster. 15 October 2022, 14:59:52 UTC
e94976e Downgrade MacOS version in GHA 15 October 2022, 11:06:50 UTC
0c962d1 Centralize and update docs for floating point comparisons The new docs mention that Approx is deprecated and should not be used, and explain the reasons behind it. Closes #1444 15 October 2022, 09:02:58 UTC
bdf3083 Mute the sign conversion warning with explicit cast 09 October 2022, 17:02:32 UTC
728de35 improve `-ffile-prefix-map` detection (#2517) the current implementation has two problems: * `clang-cl` does not know `-ffile-prefix-map`, but in CMake it is reported as "Clang", so the compiler will warn about an unknown compiler option. * XCode's clang in CMake is reported as "AppleClang", so it is not picked up as "Clang", so it is not passed `-ffile-prefix-map`, even though it supports it. Also changed the map so that the normalized `__FILE__` paths are the same as what the approval tests normalize paths into. Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com> 04 October 2022, 13:55:50 UTC
0e139b7 add versioning to shared libs (#2516) * add versioning to shared libs Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com> 04 October 2022, 13:49:09 UTC
97313f9 fix compilation on cygwin Use std::char_traits<char>::find instead of strnlen for better portability. 04 October 2022, 08:50:18 UTC
6a9bf2e meson cleanups with muon (#2539) * meson: run through muon's fmt to fix formatting * meson: switch arrays to files Allows muon to alphabetically sort files. switch headers back to arrays as split() can only be used on strings. Signed-off-by: Rosen Penev <rosenp@gmail.com> 03 October 2022, 15:23:38 UTC
980c206 Don't expose header windows.h in catch_all.hpp (#2526) * Don't expose header windows.h in catch_all.hpp * Fix generateAmalgamatedFiles.py 03 October 2022, 13:36:37 UTC
4db8b50 Add support for building with Meson (#2530) The Meson[1] build system makes it easier incorporate third-party libaries into a project if they also build using Meson. Let's add a minimal Meson build that's compatible with the CMake build, along with a GitHub workflow to check that it builds and that at least the simplest SelfTest runs. The handling of catch_user_config.hpp is inspired by BUILD.bazel and doesn't attempt to support any configuratons options. Such features could be added later. Meson strongly discourages using wildcards to specify sources, so the source and header lists are copied from CMakeLists.txt. Add a new test workflow to test the Meson builds. I was unable to get these tests to pass with Ubuntu 20.04, so they use Ubuntu 22.04. I'm neither a CMake nor a Meson expert, but the results seem to work for me. [1] https://mesonbuild.com/ Co-authored-by: Mike Crowe <mcrowe@brightsign.biz> 01 October 2022, 21:28:30 UTC
4a7cefe Unused variable removed 28 September 2022, 14:02:10 UTC
243cf71 Make Bazel work with CATCH_CONFIG_SHARED_LIBRARY 27 September 2022, 20:06:12 UTC
4bb7e02 Bazel build: Update of skylib 27 September 2022, 20:06:12 UTC
97d0b1e Suppress clang-tidy warnings for TEMPLATE_TEST_CASE (#2536) * Suppress clang-tidy *-avoid-c-arrays for TEMPLATE_TEST_CASE * Made globalRegistrar `const` to avoid `cppcoreguidelines-avoid-non-const-global-variables` Fixes #2095 26 September 2022, 16:07:50 UTC
c0e582e Fix building as shared library with MSVC. 24 September 2022, 13:15:50 UTC
0de60d8 Suppress -Wuseless-cast Warning Fixes #2520. 22 September 2022, 19:00:05 UTC
d6bbd3f warning: storage class is not first This pull request fixes the warning issued by `nvc++` (the C++ compiler in Nvidia HPC SDK/PGI), and is similar to pull request #1717. 21 September 2022, 18:14:12 UTC
98d37da Raise the minimum CMake version to 3.10 (#2523) 16 September 2022, 15:56:00 UTC
4b3defe Suppress warning "-Wstrict-aliasing" for GCC 5 and 6 15 September 2022, 11:40:16 UTC
c754308 Add GCC 5 and GCC 6 to CI 15 September 2022, 11:40:16 UTC
359542d FileStream: enable automatic flushing when a test executable is killed by a signal (e.g. when executed by ctest with timeout), the reporter files are not flushed. this can lead to incomplete (or empty) report files. to avoid this we enable automatic flushing via `std::unitbuf` compare #663 11 September 2022, 21:49:15 UTC
dea1a6a Fix typos in docs (#2514) 09 September 2022, 14:00:39 UTC
32eae0e Add missing include for VxWorks build. (#2515) `catch_sharding.hpp` was using `std::min` without including `<algorithm>`. This worked on most platforms, but it wasn't transitively included in the VxWorks toolchain. 08 September 2022, 08:21:36 UTC
4adf010 Mention dynamic library stuff in the FAQ Closes #2497 03 September 2022, 20:31:29 UTC
686468d Explain TU as translation unit where appropriate 03 September 2022, 20:22:10 UTC
7b2e7d6 Disable Bazel's env checking on UWP UWP does not support environment variables and so it cannot compile code using getenv. 02 September 2022, 05:11:28 UTC
3ca5cf3 Add CATCH_PLATFORM_WINDOWS_UWP detection macro 02 September 2022, 05:10:38 UTC
dc001fa Allow easy retrieval of RNG seed by the users This makes it so that they don't need parallel RNG seed passing infrastructure for randomized data generation (e.g. inputs for benchmarks). 18 August 2022, 21:23:18 UTC
33e7019 Link to the randomized-shard-registration script from usage tips 17 August 2022, 22:14:07 UTC
9bb206f Remove obsoleted sections of ci-and-misc.md 17 August 2022, 22:05:55 UTC
ab04e59 Improve v2->v3 migration docs 17 August 2022, 22:02:33 UTC
47d56f2 Fix compatibility with cmake 3.8 03 August 2022, 22:09:02 UTC
a118799 Switch MacOS image to macos-12 in Github Actions Also updated GCC version to GCC-11, which is packaged in the runner image. 03 August 2022, 21:54:49 UTC
997a7d4 Fix running the tests with shared library on Windows. Without this fix, the test executable fails because it can not find the dll of Catch2. 25 July 2022, 19:07:49 UTC
2b0fd85 Modify the install directories into convention. 25 July 2022, 08:43:41 UTC
a7dc85d Use DYLD_LIBRARY_PATH on apple platforms. 23 July 2022, 18:45:49 UTC
97c48e0 v3.1.0 17 July 2022, 18:18:44 UTC
9c9f350 Normalize C++ namespace in JUnit's reporter classname field Closes #2468 17 July 2022, 17:15:20 UTC
1bd2338 Add AllTrue, AnyTrue, NoneTrue matchers 16 July 2022, 14:16:05 UTC
f993b70 extend gitignore 16 July 2022, 14:16:05 UTC
caf1264 Fixes for matcher testing helpers when testing bools 16 July 2022, 14:16:05 UTC
a6d59b6 Remove obsolete link to benchmarking tests The benchmarking feature is now documented, so there is no need to direct our users towards our test file to understand how it works. Closes #2471 15 July 2022, 17:49:24 UTC
cc0e914 Different way of checking for support of local warning suppression Closes #2474 15 July 2022, 17:34:35 UTC
3bd0c58 Fix Wunused-variable warning for MinGW Closes #2132 11 July 2022, 20:28:15 UTC
a63ad74 Added new DL_PATHS option to catch_discover_tests() (#2467) This enables setting the required PATH/LD_LIBRARY_PATH environment variables both when retrieving the list of text cases and when executing the tests. Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com> 11 July 2022, 16:31:32 UTC
5f9109a Fix nvcc compile error (#2477) Co-authored-by: Niels Kristian Kjærgård Madsen <nkm@kvantify.dk> 06 July 2022, 22:03:02 UTC
5a1ef7e Redo visibility fallback 27 June 2022, 11:10:22 UTC
bea58bf Allow building Catch2 as dynamic library Also have a check that warns users if they try to combined dynamic library with hidden visibility, which we do not support. Closes #2397 Closes #2398 24 June 2022, 14:26:12 UTC
34d9724 Add experimental CMake script for sharding tests in binaries 24 June 2022, 12:12:55 UTC
5d26904 Add section on running tests in parallel to the FAQ 24 June 2022, 09:20:31 UTC
95a1206 Add doc page with best practices and other usage tips 24 June 2022, 09:20:22 UTC
6f9f146 Shorten lines in sharding docs 21 June 2022, 22:12:16 UTC
8730260 Split apart combined TUs The compile time improvements from using combined TUs mostly isn't worth the annoyance they cause with various IDE shortcuts, like when switching between header and its impl. file. Splitting them apart also fixes the issue of empty subdirs being installed due to `foo/internal` folders that only contained the combined TUs and no headers. Closes #2457 Closes #2463 21 June 2022, 16:48:44 UTC
bdfa920 Use binary path in testBazelReporter reporter output path 21 June 2022, 12:21:12 UTC
a369267 test-fixtures.md: Line-wrap code examples (#2464) * test-fixtures.md: Line-wrap code examples * relinebreak Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com> 19 June 2022, 14:24:59 UTC
1f381a1 Update commercial-users.md (#2465) Using Catch2 and now Catch3 for our client's as well as our own projects and loving it. Especially the easy C++ BDD setup and implementation. 18 June 2022, 21:47:49 UTC
165647a Change provideBazelReporterOutput to local linkage 17 June 2022, 16:23:06 UTC
7e4ec43 Change Bazel XML support to depend upon BAZEL_TEST 17 June 2022, 14:36:14 UTC
078201f Remove HOMEPAGE_URL from project call Closes #2428 16 June 2022, 20:16:44 UTC
8110ee9 Add lib/cmake/Catch2 to conan builddirs in package recipe so extras/*.cmake files are packaged 15 June 2022, 08:50:24 UTC
fa94164 Refactor shared args in approvalTests.py 14 June 2022, 21:42:00 UTC
338e4ec Force disable console colours for tests that regex check output Fixes #2458 14 June 2022, 21:24:06 UTC
372b757 Remove deprecation notice for console colour CLI The required changes were one of the last commits before the full v3 release. 13 June 2022, 21:52:31 UTC
d32fca4 Merge pull request #2452 from lizzyd710/devel Added Cytopia to opensource-users.md 08 June 2022, 13:59:57 UTC
a0ece7b Compatility fixes for GCC5 (#2448) * GCC5 compat: work around inherited constructor issues Don't use inherited constructors, forward manually instead. This basically reverts 61f803126d3cff2195d700d11d07c6578f416b23. I believe that GCC5 does not implement P0136, a C++17 change that made inherited constructors actually usable and was backported as a DR all the way to C++11. * GCC5 compat: bypass std::pair construction issue Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com> 07 June 2022, 16:46:46 UTC
0a810c5 Added Cytopia to opensource-users.md 07 June 2022, 13:06:10 UTC
d0177ee Fix implicit long to double conversion Raises a compiler warning when compiled with `-Wimplicit-int-float-conversion` using clang. 06 June 2022, 22:27:37 UTC
173539a Update the 'Try online' badge link for 3.0.1 05 June 2022, 22:29:05 UTC
8822e28 Update CE link in BDD documentation for 3.0.1 The old compiler was no longer built-for, so it couldn't link against new versions, and also didn't properly provide the user-config header. Closes #2396 05 June 2022, 22:29:02 UTC
ff9506c Only test SEH handling with MSVC MinGW doesn't support `__try` and friends at all, while Clang only supports it partially, and the test would require some changes to make it work there. Since this is only a test, we can afford to keep it MSVC-only. Closes #2447 05 June 2022, 22:29:01 UTC
0c13d02 Update documentation - add pkg-config examples. Use -std=c++14 (instead of c++11). Pointers how to integrate with pkg-config for non-CMake projects. 05 June 2022, 13:58:41 UTC
3644b41 Doc: correct the address of the link to the command-line doc in tutorial.md 04 June 2022, 08:20:01 UTC
1c4f52b Suppress NVCC unused variable warnings (#2427) Closes #2306 03 June 2022, 14:17:14 UTC
231c58a Add table with verbosity levels (missing --list-listeners) (#2443) Co-authored-by: Sergio Losilla <sergio.losilla@nt-bnct.com> Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com> 02 June 2022, 19:50:51 UTC
5efd327 Fix crash when running with --list-listeners and no registered listeners (#2442) Co-authored-by: Sergio Losilla <sergio.losilla@nt-bnct.com> 02 June 2022, 14:11:12 UTC
40dd9dd Fix copy paste error in the new random gen constraint 02 June 2022, 13:51:21 UTC
4142e69 Add full set of constraints to random integral generator Related to #2433 02 June 2022, 10:15:35 UTC
9e44593 Remove obsolete todo 02 June 2022, 09:54:15 UTC
2dc657c Make default colour selection fall-through Closes #2426 02 June 2022, 07:16:10 UTC
cca5923 Leak full Wparentheses suppression for GCC 9 Reported as an issue on Discord. I thought that by GCC 9, the C++ frontend was fixed enough to support `_Pragma`-based suppression correctly, but apparently I was wrong. 31 May 2022, 21:57:09 UTC
8c952bd Point to 3.0.1 in FetchContent example Closes #2326 Closes #2438 31 May 2022, 09:49:24 UTC
85c00eb Ensure that console_width.hpp includes user_config.hpp first Otherwise we can get macro redefinition warnings when another file includes console_width.hpp first, before user_config.hpp. Closes #2431 23 May 2022, 21:57:42 UTC
3a18a68 Mention CMake's integration with CATCH_CONFIG options 21 May 2022, 11:04:09 UTC
605a347 v3.0.1 17 May 2022, 20:13:36 UTC
abb669d Extend project call for Catch2 This provides some extra metadata for CPack and related tools. 17 May 2022, 20:12:44 UTC
dcafc60 Only reseed the internal RNG when a test is first entered This fixes multiple issues with random generators, with the most important one being that multiple nested generators could return values from the same sequence, due to internal implementation details of `GENERATE`, and how they interact with test case paths. The cost of doing this is that given this simple `TEST_CASE`, ```cpp TEST_CASE("foo") { auto i = GENERATE(take(10, random(0, 100)); SECTION("A") { auto j = GENERATE(take(10, random(0, 100)); } SECTION("B") { auto k = GENERATE(take(10, random(0, 100)); } } ``` `k` will have different values between running the test as a whole, e.g. with `./tests "foo"`, and running only the "B" section with `./tests "foo" -c "B"`. I consider this an acceptable cost, because the only alternative would be very messy to implement, and add a lot of brittle and complex code for relatively little benefit. If this calculation changes, we will need to instead walk the current tracker tree whenever a random generator is being constructed, check for random generators on the path to root, and take a seed from them. 17 May 2022, 19:49:26 UTC
7a2a6c6 Make Random*Generators be seedable This is a necessary step to fix issue with combining multiple random generators in one test case, with different section nesting. 17 May 2022, 15:57:21 UTC
359cd61 Rename global rng() to sharedRng() 17 May 2022, 13:43:23 UTC
9c72b30 Reseed global rng instance unconditionally 17 May 2022, 10:35:34 UTC
6044f02 Don't reseed std::srand when resetting rng state We no longer use `std::rand` anywhere, so there is no point, and it might even interfere with our users use of `std::(s)rand`. 17 May 2022, 09:54:19 UTC
5d7883b Remove leftover comment in tests 16 May 2022, 19:50:52 UTC
04a54b0 Fix release automation script 16 May 2022, 16:39:01 UTC
48f3226 Add support for retrieving generator's element as string 16 May 2022, 14:34:06 UTC
back to top