mirror of
https://github.com/catchorg/Catch2.git
synced 2024-12-23 03:43:28 +01:00
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)
b87caafd91
- The current setup tries to detect USE_CPP14/USE_CPP17 and sets the CXX_STANDARD property for the SelfTest target. This is not ideal, since CMAKE_CXX_STANDARD can be provided by the toolchain file or as command line option and should be used by the library internally correctly. Hence, the whole set of the relevant lines from `projects/CMakeLists.txt` have been removed. - The above can also cause subtle issues where the user is expecting the tests to compile with C++17 after setting CMAKE_CXX_STANDARD and then getting results of compilation with C++11 as USE_CPP17 has not been set. - The current build matrix used the above code to run the tests. So, even though the it should not required anymore to build Catch2, it was still required to send correct options to build matrix. In that respect, .travis.yml has been modified to send correct options to the build command in the new setup. |
||
---|---|---|
.conan | ||
.github | ||
artwork | ||
CMake | ||
contrib | ||
docs | ||
examples | ||
include | ||
misc | ||
projects | ||
scripts | ||
single_include/catch2 | ||
third_party | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
appveyor.yml | ||
CMakeLists.txt | ||
CODE_OF_CONDUCT.md | ||
codecov.yml | ||
conanfile.py | ||
LICENSE.txt | ||
README.md |
The latest version of the single header can be downloaded directly using this link
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 stands for C++ Automated Test Cases in a Header and is a multi-paradigm test framework for C++. which also supports Objective-C (and maybe C). It is primarily distributed as a single header file, although certain extensions may require additional headers.
How to use it
This documentation comprises these three parts:
- Why do we need yet another C++ Test Framework?
- Tutorial - getting started
- Reference section - all the details
More
- Issues and bugs can be raised on the Issue tracker on GitHub
- For discussion or questions please use the dedicated Google Groups forum or our Discord
- See who else is using Catch2