A modern, C++-native, test framework for unit-tests, TDD and BDD - using C++14, C++17 and later (C++11 support is in v2.x branch, and C++03 on the Catch1.x branch)
Go to file
Martin Hořeňovský 4565b826cf
Modify generator tracking to allow GENERATEs between SECTIONs
This means that code such as

```cpp
TEST_CASE() {
    SECTION("first") { SUCCEED(); }
    auto _ = GENERATE(1, 2);
    SECTION("second") { SUCCEED(); }
}
```

will run and report 3 assertions, 1 from section "first" and 2
from section "second". This also applies for greater and potentially
more confusing nesting, but fundamentally it is up to the user to
avoid overly complex and confusing nestings, just as with `SECTION`s.

The old behaviour of `GENERATE` as first thing in a `TEST_CASE`,
`GENERATE` not followed by a `SECTION`, etc etc should be unchanged.

Closes #1938
2020-07-26 11:35:06 +02:00
.conan Upload conan releases to catch2 remote (instead of Catch2) 2020-05-06 20:53:42 +02:00
.github Update FUNDING file (-Patreon, +PayPal) 2020-07-24 22:35:17 +02:00
CMake Add Wsuggest-override to warning flags 2020-05-13 16:09:34 +02:00
data/artwork Move artwork/ to data/artwork/ 2019-12-06 11:36:12 +01:00
docs Add --min-duration option 2020-07-26 10:47:53 +02:00
examples Replace a TODO comment in examples 2020-07-22 21:49:58 +02:00
extras Fixup catch_discover_tests 2020-05-20 07:14:06 +02:00
src Modify generator tracking to allow GENERATEs between SECTIONs 2020-07-26 11:35:06 +02:00
tests Modify generator tracking to allow GENERATEs between SECTIONs 2020-07-26 11:35:06 +02:00
third_party fixing UB 2020-07-22 17:17:33 +02:00
tools Make scripts/updateDocumentToC.py executable. 2020-07-22 21:43:16 +02:00
.clang-format Clang-format configuration added. 2020-07-22 21:43:30 +02:00
.gitattributes Update gitattributes 2018-07-23 10:15:52 +02:00
.gitignore Add Bazel support for the v3 branch 2020-05-26 14:49:49 +02:00
.travis.yml Add development build option to CMake and enable it on CI 2020-02-26 16:07:26 +01:00
BUILD.bazel Add Bazel support for the v3 branch 2020-05-26 14:49:49 +02:00
CMakeLists.txt Remove catch_default_main.hpp 2020-05-09 18:00:49 +02:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2017-08-17 07:45:12 +01:00
LICENSE.txt Renamed licence file, license should now be detected by github 2017-03-20 08:59:25 +01:00
README.md Remove mentions of single header version from README 2020-05-03 09:54:18 +02:00
WORKSPACE Add Bazel support for the v3 branch 2020-05-26 14:49:49 +02:00
appveyor.yml Require Python3 for running tests 2020-05-06 14:56:33 +02:00
codecov.yml Do not count test files into coverage 2020-02-02 14:51:41 +01:00
conanfile.py Fix Conan recipe 2020-05-03 19:34:37 +02:00

README.md

catch logo

Github Releases Build Status Build status codecov

Join the chat in Discord: https://discord.gg/4CWS9zD

Catch2 is released!

If you've been using an earlier version of Catch, please see the Breaking Changes section of the release notes before moving to Catch2. You might also like to read this blog post for more details.

What's the Catch?

Catch2 is a multi-paradigm test framework for C++.

How to use it

This documentation comprises these three parts:

More