Matthew Parnell 7294bd15d7 Add STATIC_REQUIRE for compile time assertions
issue #1356

A constant expression can be checked at compile time; if the user wishes
to check something they known can  be checked at compile time, then they
can now STATIC_REQUIRE.

By  default  this  will  use  REQUIRE  and  be  at  runtime,  such  that
other  assertions   can  be   run.  It  can   be  enabled   by  defining
CATCH_USE_STATIC_REQUIRE

This uses static_assert; as some compilers cannot handle the modern:
    static_assert(expr)
and require the older form with a message:
    static_assert(expr, desc)
the expression has been included as  the message, rather than leaving it
as an empty string, which can be a warning on some linters.
2018-08-14 11:29:45 +01:00
2017-11-07 11:41:49 +00:00
2018-06-24 12:32:22 +02:00
2018-07-10 12:48:14 +02:00
2018-07-23 10:12:15 +02:00
2018-07-15 17:03:12 +02:00
2018-07-23 10:12:15 +02:00
2018-07-23 10:12:15 +02:00
2018-03-09 10:37:56 +01:00
2018-07-23 10:15:52 +02:00
2018-01-05 14:39:59 +00:00
2018-07-23 10:12:15 +02:00
2017-08-17 07:45:12 +01:00
2018-07-23 10:12:15 +02:00
2018-07-23 10:12:15 +02:00

catch logo

Github Releases Build Status Build status codecov Try online Join the chat in Discord: https://discord.gg/4CWS9zD

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:

More

Description
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)
Readme 65 MiB
Languages
C++ 90.2%
CMake 5.4%
Python 3.2%
Meson 0.7%
Starlark 0.3%