765 Commits

Author SHA1 Message Date
ac207fc90f Use latest release in docs 2025-06-15 13:05:41 -06:00
5abfc0aa9c Add return code constants to API 2025-04-29 09:26:28 -06:00
4c93a595a1 Fix typos 2025-04-26 22:46:42 -06:00
5b3b228603 Update generator docs with relevant headers 2025-04-12 12:05:58 -06:00
2b60af89e2 v3.8.1 2025-04-08 12:40:18 -06:00
914aeecfe2 v3.8.0 2025-01-06 00:41:45 +01:00
232e893785 Downgrade required CMake to 3.16
We still want to build VS 2017 through AppVeyor, and those images
have CMake 3.16.2 installed. We could install newer CMake as part
of the build, but since we don't use newer CMake features yet, this
is simpler.
2025-01-05 23:45:00 +01:00
7d7b2f89f2 Support adding test tags as CTest labels in catch_discover_tests
We also bump the minimum CMake version to 3.20 as per #2943
2025-01-05 20:02:00 +01:00
506276c592 Fix wrong reference to REGISTER_ENUM
This was renamed to CATCH_REGISTER_ENUM in 541f1ed1 (Only provide
CATCH_REGISTER_ENUM, 2019-04-21).
2024-11-12 23:29:54 +01:00
e260288807 Allow disabling use of __builtin_constant_p in internal macros
Turns out that even in GCC, the expression in `__builtin_cosntant_p`
can end up evaluated and side-effects executed. To allow users to
work around this bug, I added a configuration option to disable its
use in internal macros.

Related to #2925
2024-10-27 20:27:03 +01:00
fa43b77429 v3.7.1 2024-09-17 10:45:43 +02:00
77eca4e819 Simplify instructions by not changing directories for the ctest command 2024-09-13 14:45:04 +02:00
35c3403fbb Fix typo in release notes 2024-08-14 12:27:57 +02:00
31588bb4f5 v3.7.0 2024-08-14 12:05:21 +02:00
008676a741 Use correct matcher name in the matcher example in assertion docs 2024-08-13 19:21:07 +02:00
b15158c1db Fix typo in test-cases-and-sections.md 2024-08-13 12:28:03 +02:00
8898cc6160 Mark non-const function for TEST_CASE_METHOD as deprecated 2024-08-05 20:13:03 +02:00
f7cd0ba051 TEST_CASE_PERSISTENT_FIXTURE: A new fixture macro for allowing persistent fixtures throughout a TEST_CASE (#2885)
This PR introduces a new `TEST_CASE` macro called `TEST_CASE_PERSISTENT_FIXTURE`. `TEST_CASE_PERSISTENT_FIXTURE` offers the same functionality as `TEST_CASE_METHOD` except for one difference. The object on which the test method is invoked is only created once for all invocations of the test case. The object is created just after the `testCaseStarting` event is broadcast and the object is destroyed just before the `testCaseEnding` event is broadcast.

The main motivation for this new functionality is to allow `TEST_CASE`s to do expensive setup and teardown once per `TEST_CASE`, without having to resort to abusing event listeners or static function variables with manual initialization.


Implements #1602

---------

Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com>
2024-08-05 17:01:41 +02:00
a40dd478f3 Update docs for REQUIRE_THROWS_MATCHES 2024-07-27 14:02:28 +02:00
4e8d92bf02 v3.6.0 2024-05-05 20:58:18 +02:00
b5373dadca v3.5.4 2024-04-10 12:05:46 +02:00
9271083a04 Merge pull request #2850 from jeremy-rifkin/jr/mention-succeed-in-loggingmd
Mention SUCCEED along with FAIL in logging.md
2024-03-30 15:59:43 +01:00
07701f946a Mention SUCCEED along with FAIL in logging.md 2024-03-29 15:40:18 -05:00
c0dfe13bb6 Improve example for custom options in reporter spec 2024-03-26 23:28:48 +01:00
cad65c5003 Fix insufficiently escaped backslash in docs 2024-03-26 23:23:15 +01:00
8ac8190e49 v3.5.3 2024-03-01 22:07:10 +01:00
28c2f0b0c2 Mention x87 and ffast-math breaking FP random gen reproducibility 2024-02-19 15:02:11 +01:00
2e1b02a0e2 Document issue with spaceship operator in assertion and MSVC 2024-02-19 15:02:10 +01:00
82e9b9b5f2 Update CMake build instructions for current CMake version 2024-02-19 15:02:08 +01:00
031a163a2c Improve tutorial.md with link to two-file setup instructions. 2024-02-19 15:01:14 +01:00
b817497528 Fix number of current reporter
There are nine reporters in Catch2 3.5.2, Automake, compact, console,
JSON, JUnit, SonarQube, TAP, TeamCity and XML.
2024-02-16 21:29:57 +01:00
4f1b24df77 clarify duration unit in docs 2024-02-16 21:29:19 +01:00
3157d6bbf1 Add Bazel instructions to integration docs (#2812)
Co-authored-by: Fædon Jóhannes Sinis <fs@treble.tech>
2024-02-16 16:58:09 +01:00
79205da6a6 Fix typo in release notes for v3.5.2 2024-01-15 14:23:00 +01:00
05e10dfccc v3.5.2 2024-01-15 14:13:53 +01:00
f981c9cbca v3.5.1 2023-12-31 15:15:04 +01:00
3acb8b30f1 More detailed examples for lifetimes in combined matcher exprs
Example taken from #2777
2023-12-13 17:24:23 +01:00
3f23192e55 Fix typo in release notes 2023-12-13 17:24:18 +01:00
53d0d913a4 v3.5.0 2023-12-11 00:55:40 +01:00
d4e9fb8aa5 Highlight that SECTIONs rerun the entire test case from beginning (#2749) 2023-12-10 22:35:54 +01:00
b606bc2802 Remove obsolete section in limitations.md
We no longer use `std::shuffle` to implement random test order, so
a debug mode bug in old versions of libstdc++ cannot apply to us.
2023-12-10 22:09:48 +01:00
4ab0af8baf Fix minor typos in documentation (#2769)
Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com>
2023-12-10 22:01:13 +01:00
ae4fe16b81 Make the user-facing random Generators reproducible
Thanks to the new distributions, this is almost trivial change.
2023-12-10 19:53:44 +01:00
21d2da23bc Fix typo in tostring.md
specialiation -> specialization
2023-12-09 21:00:24 +01:00
0520ff4436 [DOC] Replaced broken link (fixes #2770)
The original link is no longer available but a fork is still on GitHub.
2023-12-02 22:05:48 +01:00
2c68a0d05f lifted suggested version
Did this, because with 3.0.1, the files
- catch_xmlwriter.cpp
- catch_string_manip.hpp
- catch_test_case_info.hpp

were missing

This led to some obvious and some obscure compile errors when compiling
with g++ 13.2.0 (std c++17 or c++20)
One of these errors being "Elaborated-type-specifier for a scoped enum
must not use the ‘class’ keyword"

Since this is a rather bad experience and debugging it is
time-consuming, I suggest to simply boost the recommended version in the
snippet which is likely copied by new Catch2 users
2023-11-14 17:10:31 +01:00
966d361551 Improve formatting of test specification docs
The existing formatting created one-element lists separated by paragraphs, when it would make more sense to have the paragraphs that are providing more information about one of those list entries be part of the list entry itself.

I think this makes the documentation easier to read in both markdown and html form, and should also improve the structure for assistive technologies.
2023-10-24 16:01:56 +02:00
766541d12d why-catch.md: Add JetBrains survey link 2023-09-27 20:14:35 +02:00
b4ffba5087 Update sample output in docs/benchmarks.md 2023-09-08 10:04:17 +02:00
2a19ae16b8 Rewrite commandline test spec docs
Closes #2738
2023-08-30 16:18:34 +02:00