mirror of
https://github.com/catchorg/Catch2.git
synced 2025-03-31 15:44:47 +02:00

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
Reference
To get the most out of Catch2, start with the tutorial. Once you're up and running consider the following reference material.
Writing tests:
- Assertion macros
- Matchers (asserting complex properties)
- Comparing floating point numbers
- Logging macros
- Test cases and sections
- Test fixtures
- Explicitly skipping, passing, and failing tests at runtime
- Reporters (output customization)
- Event Listeners
- Data Generators (value parameterized tests)
- Other macros
- Micro benchmarking
Fine tuning:
Running:
Odds and ends:
- Frequently Asked Questions (FAQ)
- Best practices and other tips
- CMake integration
- Tooling integration (CI, test runners, other)
- Known limitations
Other: