LSST Applications 24.1.6,g063fba187b+e7121a6b04,g0f08755f38+4e0faf0f7f,g12f32b3c4e+7915c4de30,g1653933729+a8ce1bb630,g168dd56ebc+a8ce1bb630,g28da252d5a+94d9f37a33,g2bbee38e9b+ae03bbfc84,g2bc492864f+ae03bbfc84,g3156d2b45e+6e55a43351,g347aa1857d+ae03bbfc84,g35bb328faa+a8ce1bb630,g3a166c0a6a+ae03bbfc84,g3e281a1b8c+c5dd892a6c,g414038480c+6b9177ef31,g41af890bb2+9e154f3e8d,g6b1c1869cb+adc49b6f1a,g781aacb6e4+a8ce1bb630,g7af13505b9+3363a39af3,g7f202ee025+406ba613a5,g80478fca09+8fbba356e2,g82479be7b0+0d223595df,g858d7b2824+4e0faf0f7f,g89c8672015+f4add4ffd5,g9125e01d80+a8ce1bb630,g9726552aa6+414189b318,ga5288a1d22+32d6120315,gacef1a1666+7f85da65db,gb58c049af0+d64f4d3760,gbcfae0f0a0+a8c62e8bb6,gc28159a63d+ae03bbfc84,gcf0d15dbbd+412a8a6f35,gda6a2b7d83+412a8a6f35,gdaeeff99f8+1711a396fd,ge79ae78c31+ae03bbfc84,gf0baf85859+c1f95f4921,gfa517265be+4e0faf0f7f,gfa999e8aa5+17cd334064,gfb92a5be7c+4e0faf0f7f
LSST Data Management Base Package
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
doctest.h File Reference
#include <signal.h>

Go to the source code of this file.

Classes

class  doctest::String
 
class  doctest::Contains
 
struct  doctest::TestCaseData
 
struct  doctest::AssertData
 
class  doctest::AssertData::StringContains
 
struct  doctest::MessageData
 
struct  doctest::SubcaseSignature
 
struct  doctest::IContextScope
 
struct  doctest::ContextOptions
 OCLINT too many fields. More...
 
struct  doctest::detail::types::enable_if< COND, T >
 
struct  doctest::detail::types::enable_if< true, T >
 
struct  doctest::detail::types::true_type
 
struct  doctest::detail::types::false_type
 
struct  doctest::detail::types::remove_reference< T >
 
struct  doctest::detail::types::remove_reference< T & >
 
struct  doctest::detail::types::remove_reference< T && >
 
struct  doctest::detail::types::is_rvalue_reference< T >
 
struct  doctest::detail::types::is_rvalue_reference< T && >
 
struct  doctest::detail::types::remove_const< T >
 
struct  doctest::detail::types::remove_const< const T >
 
struct  doctest::detail::types::is_enum< T >
 
struct  doctest::detail::types::underlying_type< T >
 
struct  doctest::detail::types::is_pointer< T >
 
struct  doctest::detail::types::is_pointer< T * >
 
struct  doctest::detail::types::is_array< T >
 
struct  doctest::detail::types::is_array< T[SIZE]>
 
struct  doctest::detail::deferred_false< T >
 
struct  doctest::detail::has_insertion_operator< T, typename >
 
struct  doctest::detail::has_insertion_operator< T, decltype(operator<<(declval< std::ostream & >(), declval< const T & >()), void())>
 
struct  doctest::detail::should_stringify_as_underlying_type< T >
 
struct  doctest::detail::StringMakerBase< C >
 
struct  doctest::detail::StringMakerBase< true >
 
struct  doctest::StringMaker< T >
 
struct  doctest::detail::filldata< T >
 
struct  doctest::detail::filldata< T[N]>
 
struct  doctest::detail::filldata< const char[N]>
 
struct  doctest::detail::filldata< const void * >
 
struct  doctest::detail::filldata< T * >
 
struct  doctest::Approx
 
struct  doctest::IsNaN< F >
 
struct  doctest::detail::TestFailureException
 
struct  doctest::detail::Subcase
 
struct  doctest::detail::Result
 
struct  doctest::detail::Expression_lhs< L >
 
struct  doctest::detail::ExpressionDecomposer
 
struct  doctest::detail::TestSuite
 
struct  doctest::detail::TestCase
 
struct  doctest::detail::RelationalComparator< int, L, R >
 
struct  doctest::detail::RelationalComparator< 0, L, R >
 
struct  doctest::detail::RelationalComparator< 1, L, R >
 
struct  doctest::detail::RelationalComparator< 2, L, R >
 
struct  doctest::detail::RelationalComparator< 3, L, R >
 
struct  doctest::detail::RelationalComparator< 4, L, R >
 
struct  doctest::detail::RelationalComparator< 5, L, R >
 
struct  doctest::detail::ResultBuilder
 
struct  doctest::detail::IExceptionTranslator
 
class  doctest::detail::ExceptionTranslator< T >
 OCLINT destructor of virtual class. More...
 
struct  doctest::detail::ContextScopeBase
 
class  doctest::detail::ContextScope< L >
 
struct  doctest::detail::MessageBuilder
 
struct  doctest::test_suite
 
struct  doctest::description
 
struct  doctest::skip
 
struct  doctest::no_breaks
 
struct  doctest::no_output
 
struct  doctest::timeout
 
struct  doctest::may_fail
 
struct  doctest::should_fail
 
struct  doctest::expected_failures
 
class  doctest::Context
 
struct  doctest::CurrentTestCaseStats
 
struct  doctest::TestCaseException
 
struct  doctest::TestRunStats
 
struct  doctest::QueryData
 
struct  doctest::IReporter
 

Namespaces

namespace  doctest
 
namespace  doctest::detail
 
namespace  std
 STL namespace.
 
namespace  doctest::Color
 
namespace  doctest::assertType
 
namespace  doctest::detail::types
 
namespace  doctest::detail::binaryAssertComparison
 
namespace  doctest::detail::assertAction
 
namespace  doctest_detail_test_suite_ns
 
namespace  doctest::TestCaseFailureReason
 

Macros

#define DOCTEST_VERSION_MAJOR   2
 
#define DOCTEST_VERSION_MINOR   4
 
#define DOCTEST_VERSION_PATCH   11
 
#define DOCTEST_TOSTR_IMPL(x)   #x
 
#define DOCTEST_TOSTR(x)   DOCTEST_TOSTR_IMPL(x)
 
#define DOCTEST_VERSION_STR
 
#define DOCTEST_VERSION    (DOCTEST_VERSION_MAJOR * 10000 + DOCTEST_VERSION_MINOR * 100 + DOCTEST_VERSION_PATCH)
 
#define DOCTEST_CPLUSPLUS   __cplusplus
 
#define DOCTEST_COMPILER(MAJOR, MINOR, PATCH)   ((MAJOR)*10000000 + (MINOR)*100000 + (PATCH))
 
#define DOCTEST_MSVC   0
 
#define DOCTEST_CLANG   0
 
#define DOCTEST_GCC   0
 
#define DOCTEST_ICC   0
 
#define DOCTEST_CLANG_SUPPRESS_WARNING_PUSH
 
#define DOCTEST_CLANG_SUPPRESS_WARNING(w)
 
#define DOCTEST_CLANG_SUPPRESS_WARNING_POP
 
#define DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH(w)
 
#define DOCTEST_GCC_SUPPRESS_WARNING_PUSH
 
#define DOCTEST_GCC_SUPPRESS_WARNING(w)
 
#define DOCTEST_GCC_SUPPRESS_WARNING_POP
 
#define DOCTEST_GCC_SUPPRESS_WARNING_WITH_PUSH(w)
 
#define DOCTEST_MSVC_SUPPRESS_WARNING_PUSH
 
#define DOCTEST_MSVC_SUPPRESS_WARNING(w)
 
#define DOCTEST_MSVC_SUPPRESS_WARNING_POP
 
#define DOCTEST_MSVC_SUPPRESS_WARNING_WITH_PUSH(w)
 
#define DOCTEST_SUPPRESS_COMMON_WARNINGS_PUSH
 
#define DOCTEST_SUPPRESS_COMMON_WARNINGS_POP
 
#define DOCTEST_MAKE_STD_HEADERS_CLEAN_FROM_WARNINGS_ON_WALL_BEGIN
 
#define DOCTEST_MAKE_STD_HEADERS_CLEAN_FROM_WARNINGS_ON_WALL_END   DOCTEST_MSVC_SUPPRESS_WARNING_POP
 
#define DOCTEST_CONFIG_POSIX_SIGNALS
 
#define DOCTEST_CONFIG_NO_EXCEPTIONS
 
#define DOCTEST_CONFIG_NO_TRY_CATCH_IN_ASSERTS
 
#define DOCTEST_SYMBOL_EXPORT   __attribute__((visibility("default")))
 
#define DOCTEST_SYMBOL_IMPORT
 
#define DOCTEST_INTERFACE
 
#define DOCTEST_INTERFACE_DECL   DOCTEST_INTERFACE
 
#define DOCTEST_INTERFACE_DEF
 
#define DOCTEST_EMPTY
 
#define DOCTEST_NOINLINE   __attribute__((noinline))
 
#define DOCTEST_UNUSED   __attribute__((unused))
 
#define DOCTEST_ALIGNMENT(x)   __attribute__((aligned(x)))
 
#define DOCTEST_INLINE_NOINLINE   inline DOCTEST_NOINLINE
 
#define DOCTEST_NORETURN   [[noreturn]]
 
#define DOCTEST_NOEXCEPT   noexcept
 
#define DOCTEST_CONSTEXPR   constexpr
 
#define DOCTEST_CONSTEXPR_FUNC   constexpr
 
#define DOCTEST_NO_SANITIZE_INTEGER
 
#define DOCTEST_DECLARE_INTERFACE(name)
 
#define DOCTEST_DEFINE_INTERFACE(name)    name::~name() = default;
 
#define DOCTEST_CAT_IMPL(s1, s2)   s1##s2
 
#define DOCTEST_CAT(s1, s2)   DOCTEST_CAT_IMPL(s1, s2)
 
#define DOCTEST_ANONYMOUS(x)   DOCTEST_CAT(x, __LINE__)
 
#define DOCTEST_REF_WRAP(x)   x&
 
#define DOCTEST_PLATFORM_LINUX
 
#define DOCTEST_GLOBAL_NO_WARNINGS(var, ...)
 
#define DOCTEST_BREAK_INTO_DEBUGGER()   raise(SIGTRAP)
 
#define DOCTEST_CONFIG_STRING_SIZE_TYPE   unsigned
 
#define DOCTEST_STRINGIFY(...)   toString(__VA_ARGS__)
 
#define SFINAE_OP(ret, op)   decltype((void)(doctest::detail::declval<L>() op doctest::detail::declval<R>()),ret{})
 
#define DOCTEST_DO_BINARY_EXPRESSION_COMPARISON(op, op_str, op_macro)
 
#define DOCTEST_FORBIT_EXPRESSION(rt, op)
 
#define DOCTEST_COMPARISON_RETURN_TYPE   bool
 
#define DOCTEST_RELATIONAL_OP(name, op)
 
#define DOCTEST_CMP_EQ(l, r)   l == r
 
#define DOCTEST_CMP_NE(l, r)   l != r
 
#define DOCTEST_CMP_GT(l, r)   l > r
 
#define DOCTEST_CMP_LT(l, r)   l < r
 
#define DOCTEST_CMP_GE(l, r)   l >= r
 
#define DOCTEST_CMP_LE(l, r)   l <= r
 
#define DOCTEST_BINARY_RELATIONAL_OP(n, op)    template <class L, class R> struct RelationalComparator<n, L, R> { bool operator()(const DOCTEST_REF_WRAP(L) lhs, const DOCTEST_REF_WRAP(R) rhs) const { return op(lhs, rhs); } };
 
#define DOCTEST_ASSERT_OUT_OF_TESTS(decomp)
 
#define DOCTEST_ASSERT_IN_TESTS(decomp)
 
#define DOCTEST_DEFINE_DECORATOR(name, type, def)
 
#define DOCTEST_FUNC_EMPTY   (void)0
 
#define DOCTEST_FUNC_SCOPE_BEGIN   do
 
#define DOCTEST_FUNC_SCOPE_END   while(false)
 
#define DOCTEST_FUNC_SCOPE_RET(v)   (void)0
 
#define DOCTEST_ASSERT_LOG_REACT_RETURN(b)
 
#define DOCTEST_WRAP_IN_TRY(x)   x;
 
#define DOCTEST_CAST_TO_VOID(...)   __VA_ARGS__;
 
#define DOCTEST_REGISTER_FUNCTION(global_prefix, f, decorators)
 
#define DOCTEST_IMPLEMENT_FIXTURE(der, base, func, decorators)
 
#define DOCTEST_CREATE_AND_REGISTER_FUNCTION(f, decorators)
 
#define DOCTEST_CREATE_AND_REGISTER_FUNCTION_IN_CLASS(f, proxy, decorators)
 
#define DOCTEST_TEST_CASE(decorators)    DOCTEST_CREATE_AND_REGISTER_FUNCTION(DOCTEST_ANONYMOUS(DOCTEST_ANON_FUNC_), decorators)
 
#define DOCTEST_TEST_CASE_CLASS(...)    TEST_CASES_CAN_BE_REGISTERED_IN_CLASSES_ONLY_IN_CPP17_MODE_OR_WITH_VS_2017_OR_NEWER
 
#define DOCTEST_TEST_CASE_FIXTURE(c, decorators)
 
#define DOCTEST_TYPE_TO_STRING_AS(str, ...)
 
#define DOCTEST_TYPE_TO_STRING(...)   DOCTEST_TYPE_TO_STRING_AS(#__VA_ARGS__, __VA_ARGS__)
 
#define DOCTEST_TEST_CASE_TEMPLATE_DEFINE_IMPL(dec, T, iter, func)
 
#define DOCTEST_TEST_CASE_TEMPLATE_DEFINE(dec, T, id)
 
#define DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL(id, anon, ...)
 
#define DOCTEST_TEST_CASE_TEMPLATE_INVOKE(id, ...)
 
#define DOCTEST_TEST_CASE_TEMPLATE_APPLY(id, ...)
 
#define DOCTEST_TEST_CASE_TEMPLATE_IMPL(dec, T, anon, ...)
 
#define DOCTEST_TEST_CASE_TEMPLATE(dec, T, ...)    DOCTEST_TEST_CASE_TEMPLATE_IMPL(dec, T, DOCTEST_ANONYMOUS(DOCTEST_ANON_TMP_), __VA_ARGS__)
 
#define DOCTEST_SUBCASE(name)
 
#define DOCTEST_TEST_SUITE_IMPL(decorators, ns_name)
 
#define DOCTEST_TEST_SUITE(decorators)    DOCTEST_TEST_SUITE_IMPL(decorators, DOCTEST_ANONYMOUS(DOCTEST_ANON_SUITE_))
 
#define DOCTEST_TEST_SUITE_BEGIN(decorators)
 
#define DOCTEST_TEST_SUITE_END
 
#define DOCTEST_REGISTER_EXCEPTION_TRANSLATOR_IMPL(translatorName, signature)
 
#define DOCTEST_REGISTER_EXCEPTION_TRANSLATOR(signature)
 
#define DOCTEST_REGISTER_REPORTER(name, priority, reporter)
 
#define DOCTEST_REGISTER_LISTENER(name, priority, reporter)
 
#define DOCTEST_INFO(...)
 
#define DOCTEST_INFO_IMPL(mb_name, s_name, ...)
 
#define DOCTEST_CAPTURE(x)   DOCTEST_INFO(#x " := ", x)
 
#define DOCTEST_ADD_AT_IMPL(type, file, line, mb, ...)
 
#define DOCTEST_ADD_MESSAGE_AT(file, line, ...)   DOCTEST_ADD_AT_IMPL(is_warn, file, line, DOCTEST_ANONYMOUS(DOCTEST_MESSAGE_), __VA_ARGS__)
 
#define DOCTEST_ADD_FAIL_CHECK_AT(file, line, ...)   DOCTEST_ADD_AT_IMPL(is_check, file, line, DOCTEST_ANONYMOUS(DOCTEST_MESSAGE_), __VA_ARGS__)
 
#define DOCTEST_ADD_FAIL_AT(file, line, ...)   DOCTEST_ADD_AT_IMPL(is_require, file, line, DOCTEST_ANONYMOUS(DOCTEST_MESSAGE_), __VA_ARGS__)
 
#define DOCTEST_MESSAGE(...)   DOCTEST_ADD_MESSAGE_AT(__FILE__, __LINE__, __VA_ARGS__)
 
#define DOCTEST_FAIL_CHECK(...)   DOCTEST_ADD_FAIL_CHECK_AT(__FILE__, __LINE__, __VA_ARGS__)
 
#define DOCTEST_FAIL(...)   DOCTEST_ADD_FAIL_AT(__FILE__, __LINE__, __VA_ARGS__)
 
#define DOCTEST_TO_LVALUE(...)   __VA_ARGS__
 
#define DOCTEST_ASSERT_IMPLEMENT_2(assert_type, ...)
 
#define DOCTEST_ASSERT_IMPLEMENT_1(assert_type, ...)
 
#define DOCTEST_BINARY_ASSERT(assert_type, comp, ...)
 
#define DOCTEST_UNARY_ASSERT(assert_type, ...)
 
#define DOCTEST_WARN(...)   DOCTEST_ASSERT_IMPLEMENT_1(DT_WARN, __VA_ARGS__)
 
#define DOCTEST_CHECK(...)   DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
 
#define DOCTEST_REQUIRE(...)   DOCTEST_ASSERT_IMPLEMENT_1(DT_REQUIRE, __VA_ARGS__)
 
#define DOCTEST_WARN_FALSE(...)   DOCTEST_ASSERT_IMPLEMENT_1(DT_WARN_FALSE, __VA_ARGS__)
 
#define DOCTEST_CHECK_FALSE(...)   DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK_FALSE, __VA_ARGS__)
 
#define DOCTEST_REQUIRE_FALSE(...)   DOCTEST_ASSERT_IMPLEMENT_1(DT_REQUIRE_FALSE, __VA_ARGS__)
 
#define DOCTEST_WARN_MESSAGE(cond, ...)   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_WARN, cond); } DOCTEST_FUNC_SCOPE_END
 
#define DOCTEST_CHECK_MESSAGE(cond, ...)   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_CHECK, cond); } DOCTEST_FUNC_SCOPE_END
 
#define DOCTEST_REQUIRE_MESSAGE(cond, ...)   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_REQUIRE, cond); } DOCTEST_FUNC_SCOPE_END
 
#define DOCTEST_WARN_FALSE_MESSAGE(cond, ...)   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_WARN_FALSE, cond); } DOCTEST_FUNC_SCOPE_END
 
#define DOCTEST_CHECK_FALSE_MESSAGE(cond, ...)   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_CHECK_FALSE, cond); } DOCTEST_FUNC_SCOPE_END
 
#define DOCTEST_REQUIRE_FALSE_MESSAGE(cond, ...)   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_REQUIRE_FALSE, cond); } DOCTEST_FUNC_SCOPE_END
 
#define DOCTEST_WARN_EQ(...)   DOCTEST_BINARY_ASSERT(DT_WARN_EQ, eq, __VA_ARGS__)
 
#define DOCTEST_CHECK_EQ(...)   DOCTEST_BINARY_ASSERT(DT_CHECK_EQ, eq, __VA_ARGS__)
 
#define DOCTEST_REQUIRE_EQ(...)   DOCTEST_BINARY_ASSERT(DT_REQUIRE_EQ, eq, __VA_ARGS__)
 
#define DOCTEST_WARN_NE(...)   DOCTEST_BINARY_ASSERT(DT_WARN_NE, ne, __VA_ARGS__)
 
#define DOCTEST_CHECK_NE(...)   DOCTEST_BINARY_ASSERT(DT_CHECK_NE, ne, __VA_ARGS__)
 
#define DOCTEST_REQUIRE_NE(...)   DOCTEST_BINARY_ASSERT(DT_REQUIRE_NE, ne, __VA_ARGS__)
 
#define DOCTEST_WARN_GT(...)   DOCTEST_BINARY_ASSERT(DT_WARN_GT, gt, __VA_ARGS__)
 
#define DOCTEST_CHECK_GT(...)   DOCTEST_BINARY_ASSERT(DT_CHECK_GT, gt, __VA_ARGS__)
 
#define DOCTEST_REQUIRE_GT(...)   DOCTEST_BINARY_ASSERT(DT_REQUIRE_GT, gt, __VA_ARGS__)
 
#define DOCTEST_WARN_LT(...)   DOCTEST_BINARY_ASSERT(DT_WARN_LT, lt, __VA_ARGS__)
 
#define DOCTEST_CHECK_LT(...)   DOCTEST_BINARY_ASSERT(DT_CHECK_LT, lt, __VA_ARGS__)
 
#define DOCTEST_REQUIRE_LT(...)   DOCTEST_BINARY_ASSERT(DT_REQUIRE_LT, lt, __VA_ARGS__)
 
#define DOCTEST_WARN_GE(...)   DOCTEST_BINARY_ASSERT(DT_WARN_GE, ge, __VA_ARGS__)
 
#define DOCTEST_CHECK_GE(...)   DOCTEST_BINARY_ASSERT(DT_CHECK_GE, ge, __VA_ARGS__)
 
#define DOCTEST_REQUIRE_GE(...)   DOCTEST_BINARY_ASSERT(DT_REQUIRE_GE, ge, __VA_ARGS__)
 
#define DOCTEST_WARN_LE(...)   DOCTEST_BINARY_ASSERT(DT_WARN_LE, le, __VA_ARGS__)
 
#define DOCTEST_CHECK_LE(...)   DOCTEST_BINARY_ASSERT(DT_CHECK_LE, le, __VA_ARGS__)
 
#define DOCTEST_REQUIRE_LE(...)   DOCTEST_BINARY_ASSERT(DT_REQUIRE_LE, le, __VA_ARGS__)
 
#define DOCTEST_WARN_UNARY(...)   DOCTEST_UNARY_ASSERT(DT_WARN_UNARY, __VA_ARGS__)
 
#define DOCTEST_CHECK_UNARY(...)   DOCTEST_UNARY_ASSERT(DT_CHECK_UNARY, __VA_ARGS__)
 
#define DOCTEST_REQUIRE_UNARY(...)   DOCTEST_UNARY_ASSERT(DT_REQUIRE_UNARY, __VA_ARGS__)
 
#define DOCTEST_WARN_UNARY_FALSE(...)   DOCTEST_UNARY_ASSERT(DT_WARN_UNARY_FALSE, __VA_ARGS__)
 
#define DOCTEST_CHECK_UNARY_FALSE(...)   DOCTEST_UNARY_ASSERT(DT_CHECK_UNARY_FALSE, __VA_ARGS__)
 
#define DOCTEST_REQUIRE_UNARY_FALSE(...)   DOCTEST_UNARY_ASSERT(DT_REQUIRE_UNARY_FALSE, __VA_ARGS__)
 
#define DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_FALSE   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_MESSAGE   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_FALSE_MESSAGE   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_EQ   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_NE   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_GT   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_LT   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_GE   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_LE   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_UNARY   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_UNARY_FALSE   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_THROWS(...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_THROWS(...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_THROWS(...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_THROWS_AS(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_THROWS_AS(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_THROWS_AS(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_THROWS_WITH(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_THROWS_WITH(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_THROWS_WITH(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_THROWS_WITH_AS(expr, with, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_THROWS_WITH_AS(expr, with, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_THROWS_WITH_AS(expr, with, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_NOTHROW(...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_NOTHROW(...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_NOTHROW(...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_THROWS_MESSAGE(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_THROWS_MESSAGE(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_THROWS_MESSAGE(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_THROWS_AS_MESSAGE(expr, ex, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_THROWS_AS_MESSAGE(expr, ex, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_THROWS_AS_MESSAGE(expr, ex, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_THROWS_WITH_MESSAGE(expr, with, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_THROWS_WITH_MESSAGE(expr, with, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_THROWS_WITH_MESSAGE(expr, with, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_THROWS_WITH_AS_MESSAGE(expr, with, ex, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_THROWS_WITH_AS_MESSAGE(expr, with, ex, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_THROWS_WITH_AS_MESSAGE(expr, with, ex, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_WARN_NOTHROW_MESSAGE(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_CHECK_NOTHROW_MESSAGE(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_REQUIRE_NOTHROW_MESSAGE(expr, ...)   DOCTEST_EXCEPTION_EMPTY_FUNC
 
#define DOCTEST_FAST_WARN_EQ   DOCTEST_WARN_EQ
 
#define DOCTEST_FAST_CHECK_EQ   DOCTEST_CHECK_EQ
 
#define DOCTEST_FAST_REQUIRE_EQ   DOCTEST_REQUIRE_EQ
 
#define DOCTEST_FAST_WARN_NE   DOCTEST_WARN_NE
 
#define DOCTEST_FAST_CHECK_NE   DOCTEST_CHECK_NE
 
#define DOCTEST_FAST_REQUIRE_NE   DOCTEST_REQUIRE_NE
 
#define DOCTEST_FAST_WARN_GT   DOCTEST_WARN_GT
 
#define DOCTEST_FAST_CHECK_GT   DOCTEST_CHECK_GT
 
#define DOCTEST_FAST_REQUIRE_GT   DOCTEST_REQUIRE_GT
 
#define DOCTEST_FAST_WARN_LT   DOCTEST_WARN_LT
 
#define DOCTEST_FAST_CHECK_LT   DOCTEST_CHECK_LT
 
#define DOCTEST_FAST_REQUIRE_LT   DOCTEST_REQUIRE_LT
 
#define DOCTEST_FAST_WARN_GE   DOCTEST_WARN_GE
 
#define DOCTEST_FAST_CHECK_GE   DOCTEST_CHECK_GE
 
#define DOCTEST_FAST_REQUIRE_GE   DOCTEST_REQUIRE_GE
 
#define DOCTEST_FAST_WARN_LE   DOCTEST_WARN_LE
 
#define DOCTEST_FAST_CHECK_LE   DOCTEST_CHECK_LE
 
#define DOCTEST_FAST_REQUIRE_LE   DOCTEST_REQUIRE_LE
 
#define DOCTEST_FAST_WARN_UNARY   DOCTEST_WARN_UNARY
 
#define DOCTEST_FAST_CHECK_UNARY   DOCTEST_CHECK_UNARY
 
#define DOCTEST_FAST_REQUIRE_UNARY   DOCTEST_REQUIRE_UNARY
 
#define DOCTEST_FAST_WARN_UNARY_FALSE   DOCTEST_WARN_UNARY_FALSE
 
#define DOCTEST_FAST_CHECK_UNARY_FALSE   DOCTEST_CHECK_UNARY_FALSE
 
#define DOCTEST_FAST_REQUIRE_UNARY_FALSE   DOCTEST_REQUIRE_UNARY_FALSE
 
#define DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE(id, ...)   DOCTEST_TEST_CASE_TEMPLATE_INVOKE(id,__VA_ARGS__)
 
#define DOCTEST_SCENARIO(name)   DOCTEST_TEST_CASE(" Scenario: " name)
 
#define DOCTEST_SCENARIO_CLASS(name)   DOCTEST_TEST_CASE_CLASS(" Scenario: " name)
 
#define DOCTEST_SCENARIO_TEMPLATE(name, T, ...)   DOCTEST_TEST_CASE_TEMPLATE(" Scenario: " name, T, __VA_ARGS__)
 
#define DOCTEST_SCENARIO_TEMPLATE_DEFINE(name, T, id)   DOCTEST_TEST_CASE_TEMPLATE_DEFINE(" Scenario: " name, T, id)
 
#define DOCTEST_GIVEN(name)   DOCTEST_SUBCASE(" Given: " name)
 
#define DOCTEST_WHEN(name)   DOCTEST_SUBCASE(" When: " name)
 
#define DOCTEST_AND_WHEN(name)   DOCTEST_SUBCASE("And when: " name)
 
#define DOCTEST_THEN(name)   DOCTEST_SUBCASE(" Then: " name)
 
#define DOCTEST_AND_THEN(name)   DOCTEST_SUBCASE(" And: " name)
 
#define TEST_CASE(name)   DOCTEST_TEST_CASE(name)
 
#define TEST_CASE_CLASS(name)   DOCTEST_TEST_CASE_CLASS(name)
 
#define TEST_CASE_FIXTURE(x, name)   DOCTEST_TEST_CASE_FIXTURE(x, name)
 
#define TYPE_TO_STRING_AS(str, ...)   DOCTEST_TYPE_TO_STRING_AS(str, __VA_ARGS__)
 
#define TYPE_TO_STRING(...)   DOCTEST_TYPE_TO_STRING(__VA_ARGS__)
 
#define TEST_CASE_TEMPLATE(name, T, ...)   DOCTEST_TEST_CASE_TEMPLATE(name, T, __VA_ARGS__)
 
#define TEST_CASE_TEMPLATE_DEFINE(name, T, id)   DOCTEST_TEST_CASE_TEMPLATE_DEFINE(name, T, id)
 
#define TEST_CASE_TEMPLATE_INVOKE(id, ...)   DOCTEST_TEST_CASE_TEMPLATE_INVOKE(id, __VA_ARGS__)
 
#define TEST_CASE_TEMPLATE_APPLY(id, ...)   DOCTEST_TEST_CASE_TEMPLATE_APPLY(id, __VA_ARGS__)
 
#define SUBCASE(name)   DOCTEST_SUBCASE(name)
 
#define TEST_SUITE(decorators)   DOCTEST_TEST_SUITE(decorators)
 
#define TEST_SUITE_BEGIN(name)   DOCTEST_TEST_SUITE_BEGIN(name)
 
#define TEST_SUITE_END   DOCTEST_TEST_SUITE_END
 
#define REGISTER_EXCEPTION_TRANSLATOR(signature)   DOCTEST_REGISTER_EXCEPTION_TRANSLATOR(signature)
 
#define REGISTER_REPORTER(name, priority, reporter)   DOCTEST_REGISTER_REPORTER(name, priority, reporter)
 
#define REGISTER_LISTENER(name, priority, reporter)   DOCTEST_REGISTER_LISTENER(name, priority, reporter)
 
#define INFO(...)   DOCTEST_INFO(__VA_ARGS__)
 
#define CAPTURE(x)   DOCTEST_CAPTURE(x)
 
#define ADD_MESSAGE_AT(file, line, ...)   DOCTEST_ADD_MESSAGE_AT(file, line, __VA_ARGS__)
 
#define ADD_FAIL_CHECK_AT(file, line, ...)   DOCTEST_ADD_FAIL_CHECK_AT(file, line, __VA_ARGS__)
 
#define ADD_FAIL_AT(file, line, ...)   DOCTEST_ADD_FAIL_AT(file, line, __VA_ARGS__)
 
#define MESSAGE(...)   DOCTEST_MESSAGE(__VA_ARGS__)
 
#define FAIL_CHECK(...)   DOCTEST_FAIL_CHECK(__VA_ARGS__)
 
#define FAIL(...)   DOCTEST_FAIL(__VA_ARGS__)
 
#define TO_LVALUE(...)   DOCTEST_TO_LVALUE(__VA_ARGS__)
 
#define WARN(...)   DOCTEST_WARN(__VA_ARGS__)
 
#define WARN_FALSE(...)   DOCTEST_WARN_FALSE(__VA_ARGS__)
 
#define WARN_THROWS(...)   DOCTEST_WARN_THROWS(__VA_ARGS__)
 
#define WARN_THROWS_AS(expr, ...)   DOCTEST_WARN_THROWS_AS(expr, __VA_ARGS__)
 
#define WARN_THROWS_WITH(expr, ...)   DOCTEST_WARN_THROWS_WITH(expr, __VA_ARGS__)
 
#define WARN_THROWS_WITH_AS(expr, with, ...)   DOCTEST_WARN_THROWS_WITH_AS(expr, with, __VA_ARGS__)
 
#define WARN_NOTHROW(...)   DOCTEST_WARN_NOTHROW(__VA_ARGS__)
 
#define CHECK(...)   DOCTEST_CHECK(__VA_ARGS__)
 
#define CHECK_FALSE(...)   DOCTEST_CHECK_FALSE(__VA_ARGS__)
 
#define CHECK_THROWS(...)   DOCTEST_CHECK_THROWS(__VA_ARGS__)
 
#define CHECK_THROWS_AS(expr, ...)   DOCTEST_CHECK_THROWS_AS(expr, __VA_ARGS__)
 
#define CHECK_THROWS_WITH(expr, ...)   DOCTEST_CHECK_THROWS_WITH(expr, __VA_ARGS__)
 
#define CHECK_THROWS_WITH_AS(expr, with, ...)   DOCTEST_CHECK_THROWS_WITH_AS(expr, with, __VA_ARGS__)
 
#define CHECK_NOTHROW(...)   DOCTEST_CHECK_NOTHROW(__VA_ARGS__)
 
#define REQUIRE(...)   DOCTEST_REQUIRE(__VA_ARGS__)
 
#define REQUIRE_FALSE(...)   DOCTEST_REQUIRE_FALSE(__VA_ARGS__)
 
#define REQUIRE_THROWS(...)   DOCTEST_REQUIRE_THROWS(__VA_ARGS__)
 
#define REQUIRE_THROWS_AS(expr, ...)   DOCTEST_REQUIRE_THROWS_AS(expr, __VA_ARGS__)
 
#define REQUIRE_THROWS_WITH(expr, ...)   DOCTEST_REQUIRE_THROWS_WITH(expr, __VA_ARGS__)
 
#define REQUIRE_THROWS_WITH_AS(expr, with, ...)   DOCTEST_REQUIRE_THROWS_WITH_AS(expr, with, __VA_ARGS__)
 
#define REQUIRE_NOTHROW(...)   DOCTEST_REQUIRE_NOTHROW(__VA_ARGS__)
 
#define WARN_MESSAGE(cond, ...)   DOCTEST_WARN_MESSAGE(cond, __VA_ARGS__)
 
#define WARN_FALSE_MESSAGE(cond, ...)   DOCTEST_WARN_FALSE_MESSAGE(cond, __VA_ARGS__)
 
#define WARN_THROWS_MESSAGE(expr, ...)   DOCTEST_WARN_THROWS_MESSAGE(expr, __VA_ARGS__)
 
#define WARN_THROWS_AS_MESSAGE(expr, ex, ...)   DOCTEST_WARN_THROWS_AS_MESSAGE(expr, ex, __VA_ARGS__)
 
#define WARN_THROWS_WITH_MESSAGE(expr, with, ...)   DOCTEST_WARN_THROWS_WITH_MESSAGE(expr, with, __VA_ARGS__)
 
#define WARN_THROWS_WITH_AS_MESSAGE(expr, with, ex, ...)   DOCTEST_WARN_THROWS_WITH_AS_MESSAGE(expr, with, ex, __VA_ARGS__)
 
#define WARN_NOTHROW_MESSAGE(expr, ...)   DOCTEST_WARN_NOTHROW_MESSAGE(expr, __VA_ARGS__)
 
#define CHECK_MESSAGE(cond, ...)   DOCTEST_CHECK_MESSAGE(cond, __VA_ARGS__)
 
#define CHECK_FALSE_MESSAGE(cond, ...)   DOCTEST_CHECK_FALSE_MESSAGE(cond, __VA_ARGS__)
 
#define CHECK_THROWS_MESSAGE(expr, ...)   DOCTEST_CHECK_THROWS_MESSAGE(expr, __VA_ARGS__)
 
#define CHECK_THROWS_AS_MESSAGE(expr, ex, ...)   DOCTEST_CHECK_THROWS_AS_MESSAGE(expr, ex, __VA_ARGS__)
 
#define CHECK_THROWS_WITH_MESSAGE(expr, with, ...)   DOCTEST_CHECK_THROWS_WITH_MESSAGE(expr, with, __VA_ARGS__)
 
#define CHECK_THROWS_WITH_AS_MESSAGE(expr, with, ex, ...)   DOCTEST_CHECK_THROWS_WITH_AS_MESSAGE(expr, with, ex, __VA_ARGS__)
 
#define CHECK_NOTHROW_MESSAGE(expr, ...)   DOCTEST_CHECK_NOTHROW_MESSAGE(expr, __VA_ARGS__)
 
#define REQUIRE_MESSAGE(cond, ...)   DOCTEST_REQUIRE_MESSAGE(cond, __VA_ARGS__)
 
#define REQUIRE_FALSE_MESSAGE(cond, ...)   DOCTEST_REQUIRE_FALSE_MESSAGE(cond, __VA_ARGS__)
 
#define REQUIRE_THROWS_MESSAGE(expr, ...)   DOCTEST_REQUIRE_THROWS_MESSAGE(expr, __VA_ARGS__)
 
#define REQUIRE_THROWS_AS_MESSAGE(expr, ex, ...)   DOCTEST_REQUIRE_THROWS_AS_MESSAGE(expr, ex, __VA_ARGS__)
 
#define REQUIRE_THROWS_WITH_MESSAGE(expr, with, ...)   DOCTEST_REQUIRE_THROWS_WITH_MESSAGE(expr, with, __VA_ARGS__)
 
#define REQUIRE_THROWS_WITH_AS_MESSAGE(expr, with, ex, ...)   DOCTEST_REQUIRE_THROWS_WITH_AS_MESSAGE(expr, with, ex, __VA_ARGS__)
 
#define REQUIRE_NOTHROW_MESSAGE(expr, ...)   DOCTEST_REQUIRE_NOTHROW_MESSAGE(expr, __VA_ARGS__)
 
#define SCENARIO(name)   DOCTEST_SCENARIO(name)
 
#define SCENARIO_CLASS(name)   DOCTEST_SCENARIO_CLASS(name)
 
#define SCENARIO_TEMPLATE(name, T, ...)   DOCTEST_SCENARIO_TEMPLATE(name, T, __VA_ARGS__)
 
#define SCENARIO_TEMPLATE_DEFINE(name, T, id)   DOCTEST_SCENARIO_TEMPLATE_DEFINE(name, T, id)
 
#define GIVEN(name)   DOCTEST_GIVEN(name)
 
#define WHEN(name)   DOCTEST_WHEN(name)
 
#define AND_WHEN(name)   DOCTEST_AND_WHEN(name)
 
#define THEN(name)   DOCTEST_THEN(name)
 
#define AND_THEN(name)   DOCTEST_AND_THEN(name)
 
#define WARN_EQ(...)   DOCTEST_WARN_EQ(__VA_ARGS__)
 
#define CHECK_EQ(...)   DOCTEST_CHECK_EQ(__VA_ARGS__)
 
#define REQUIRE_EQ(...)   DOCTEST_REQUIRE_EQ(__VA_ARGS__)
 
#define WARN_NE(...)   DOCTEST_WARN_NE(__VA_ARGS__)
 
#define CHECK_NE(...)   DOCTEST_CHECK_NE(__VA_ARGS__)
 
#define REQUIRE_NE(...)   DOCTEST_REQUIRE_NE(__VA_ARGS__)
 
#define WARN_GT(...)   DOCTEST_WARN_GT(__VA_ARGS__)
 
#define CHECK_GT(...)   DOCTEST_CHECK_GT(__VA_ARGS__)
 
#define REQUIRE_GT(...)   DOCTEST_REQUIRE_GT(__VA_ARGS__)
 
#define WARN_LT(...)   DOCTEST_WARN_LT(__VA_ARGS__)
 
#define CHECK_LT(...)   DOCTEST_CHECK_LT(__VA_ARGS__)
 
#define REQUIRE_LT(...)   DOCTEST_REQUIRE_LT(__VA_ARGS__)
 
#define WARN_GE(...)   DOCTEST_WARN_GE(__VA_ARGS__)
 
#define CHECK_GE(...)   DOCTEST_CHECK_GE(__VA_ARGS__)
 
#define REQUIRE_GE(...)   DOCTEST_REQUIRE_GE(__VA_ARGS__)
 
#define WARN_LE(...)   DOCTEST_WARN_LE(__VA_ARGS__)
 
#define CHECK_LE(...)   DOCTEST_CHECK_LE(__VA_ARGS__)
 
#define REQUIRE_LE(...)   DOCTEST_REQUIRE_LE(__VA_ARGS__)
 
#define WARN_UNARY(...)   DOCTEST_WARN_UNARY(__VA_ARGS__)
 
#define CHECK_UNARY(...)   DOCTEST_CHECK_UNARY(__VA_ARGS__)
 
#define REQUIRE_UNARY(...)   DOCTEST_REQUIRE_UNARY(__VA_ARGS__)
 
#define WARN_UNARY_FALSE(...)   DOCTEST_WARN_UNARY_FALSE(__VA_ARGS__)
 
#define CHECK_UNARY_FALSE(...)   DOCTEST_CHECK_UNARY_FALSE(__VA_ARGS__)
 
#define REQUIRE_UNARY_FALSE(...)   DOCTEST_REQUIRE_UNARY_FALSE(__VA_ARGS__)
 
#define FAST_WARN_EQ(...)   DOCTEST_FAST_WARN_EQ(__VA_ARGS__)
 
#define FAST_CHECK_EQ(...)   DOCTEST_FAST_CHECK_EQ(__VA_ARGS__)
 
#define FAST_REQUIRE_EQ(...)   DOCTEST_FAST_REQUIRE_EQ(__VA_ARGS__)
 
#define FAST_WARN_NE(...)   DOCTEST_FAST_WARN_NE(__VA_ARGS__)
 
#define FAST_CHECK_NE(...)   DOCTEST_FAST_CHECK_NE(__VA_ARGS__)
 
#define FAST_REQUIRE_NE(...)   DOCTEST_FAST_REQUIRE_NE(__VA_ARGS__)
 
#define FAST_WARN_GT(...)   DOCTEST_FAST_WARN_GT(__VA_ARGS__)
 
#define FAST_CHECK_GT(...)   DOCTEST_FAST_CHECK_GT(__VA_ARGS__)
 
#define FAST_REQUIRE_GT(...)   DOCTEST_FAST_REQUIRE_GT(__VA_ARGS__)
 
#define FAST_WARN_LT(...)   DOCTEST_FAST_WARN_LT(__VA_ARGS__)
 
#define FAST_CHECK_LT(...)   DOCTEST_FAST_CHECK_LT(__VA_ARGS__)
 
#define FAST_REQUIRE_LT(...)   DOCTEST_FAST_REQUIRE_LT(__VA_ARGS__)
 
#define FAST_WARN_GE(...)   DOCTEST_FAST_WARN_GE(__VA_ARGS__)
 
#define FAST_CHECK_GE(...)   DOCTEST_FAST_CHECK_GE(__VA_ARGS__)
 
#define FAST_REQUIRE_GE(...)   DOCTEST_FAST_REQUIRE_GE(__VA_ARGS__)
 
#define FAST_WARN_LE(...)   DOCTEST_FAST_WARN_LE(__VA_ARGS__)
 
#define FAST_CHECK_LE(...)   DOCTEST_FAST_CHECK_LE(__VA_ARGS__)
 
#define FAST_REQUIRE_LE(...)   DOCTEST_FAST_REQUIRE_LE(__VA_ARGS__)
 
#define FAST_WARN_UNARY(...)   DOCTEST_FAST_WARN_UNARY(__VA_ARGS__)
 
#define FAST_CHECK_UNARY(...)   DOCTEST_FAST_CHECK_UNARY(__VA_ARGS__)
 
#define FAST_REQUIRE_UNARY(...)   DOCTEST_FAST_REQUIRE_UNARY(__VA_ARGS__)
 
#define FAST_WARN_UNARY_FALSE(...)   DOCTEST_FAST_WARN_UNARY_FALSE(__VA_ARGS__)
 
#define FAST_CHECK_UNARY_FALSE(...)   DOCTEST_FAST_CHECK_UNARY_FALSE(__VA_ARGS__)
 
#define FAST_REQUIRE_UNARY_FALSE(...)   DOCTEST_FAST_REQUIRE_UNARY_FALSE(__VA_ARGS__)
 
#define TEST_CASE_TEMPLATE_INSTANTIATE(id, ...)   DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE(id, __VA_ARGS__)
 
#define DOCTEST_SINGLE_HEADER
 

Typedefs

typedef decltype(nullptr) std::nullptr_t
 
typedef decltype(sizeof(void *)) std::size_t
 
typedef basic_ostream< char, char_traits< char > > std::ostream
 
typedef basic_istream< char, char_traits< char > > std::istream
 
using doctest::detail::funcType = void (*)()
 
using doctest::detail::assert_handler = void (*)(const AssertData&)
 
using doctest::detail::reporterCreatorFunc = IReporter* (*)(const ContextOptions&)
 
using DOCTEST_ANON_FOR_SEMICOLON___LINE__ = int ()
 

Enumerations

enum  doctest::Color::Enum {
  doctest::Color::None = 0 , doctest::Color::White , doctest::Color::Red , doctest::Color::Green ,
  doctest::Color::Blue , doctest::Color::Cyan , doctest::Color::Yellow , doctest::Color::Grey ,
  doctest::Color::Bright = 0x10 , doctest::Color::BrightRed = Bright | Red , doctest::Color::BrightGreen = Bright | Green , doctest::Color::LightGrey = Bright | Grey ,
  doctest::Color::BrightWhite = Bright | White
}
 
enum  doctest::assertType::Enum {
  doctest::assertType::is_warn = 1 , doctest::assertType::is_check = 2 * is_warn , doctest::assertType::is_require = 2 * is_check , doctest::assertType::is_normal = 2 * is_require ,
  doctest::assertType::is_throws = 2 * is_normal , doctest::assertType::is_throws_as = 2 * is_throws , doctest::assertType::is_throws_with = 2 * is_throws_as , doctest::assertType::is_nothrow = 2 * is_throws_with ,
  doctest::assertType::is_false = 2 * is_nothrow , doctest::assertType::is_unary = 2 * is_false , doctest::assertType::is_eq = 2 * is_unary , doctest::assertType::is_ne = 2 * is_eq ,
  doctest::assertType::is_lt = 2 * is_ne , doctest::assertType::is_gt = 2 * is_lt , doctest::assertType::is_ge = 2 * is_gt , doctest::assertType::is_le = 2 * is_ge ,
  doctest::assertType::DT_WARN = is_normal | is_warn , doctest::assertType::DT_CHECK = is_normal | is_check , doctest::assertType::DT_REQUIRE = is_normal | is_require , doctest::assertType::DT_WARN_FALSE = is_normal | is_false | is_warn ,
  doctest::assertType::DT_CHECK_FALSE = is_normal | is_false | is_check , doctest::assertType::DT_REQUIRE_FALSE = is_normal | is_false | is_require , doctest::assertType::DT_WARN_THROWS = is_throws | is_warn , doctest::assertType::DT_CHECK_THROWS = is_throws | is_check ,
  doctest::assertType::DT_REQUIRE_THROWS = is_throws | is_require , doctest::assertType::DT_WARN_THROWS_AS = is_throws_as | is_warn , doctest::assertType::DT_CHECK_THROWS_AS = is_throws_as | is_check , doctest::assertType::DT_REQUIRE_THROWS_AS = is_throws_as | is_require ,
  doctest::assertType::DT_WARN_THROWS_WITH = is_throws_with | is_warn , doctest::assertType::DT_CHECK_THROWS_WITH = is_throws_with | is_check , doctest::assertType::DT_REQUIRE_THROWS_WITH = is_throws_with | is_require , doctest::assertType::DT_WARN_THROWS_WITH_AS = is_throws_with | is_throws_as | is_warn ,
  doctest::assertType::DT_CHECK_THROWS_WITH_AS = is_throws_with | is_throws_as | is_check , doctest::assertType::DT_REQUIRE_THROWS_WITH_AS = is_throws_with | is_throws_as | is_require , doctest::assertType::DT_WARN_NOTHROW = is_nothrow | is_warn , doctest::assertType::DT_CHECK_NOTHROW = is_nothrow | is_check ,
  doctest::assertType::DT_REQUIRE_NOTHROW = is_nothrow | is_require , doctest::assertType::DT_WARN_EQ = is_normal | is_eq | is_warn , doctest::assertType::DT_CHECK_EQ = is_normal | is_eq | is_check , doctest::assertType::DT_REQUIRE_EQ = is_normal | is_eq | is_require ,
  doctest::assertType::DT_WARN_NE = is_normal | is_ne | is_warn , doctest::assertType::DT_CHECK_NE = is_normal | is_ne | is_check , doctest::assertType::DT_REQUIRE_NE = is_normal | is_ne | is_require , doctest::assertType::DT_WARN_GT = is_normal | is_gt | is_warn ,
  doctest::assertType::DT_CHECK_GT = is_normal | is_gt | is_check , doctest::assertType::DT_REQUIRE_GT = is_normal | is_gt | is_require , doctest::assertType::DT_WARN_LT = is_normal | is_lt | is_warn , doctest::assertType::DT_CHECK_LT = is_normal | is_lt | is_check ,
  doctest::assertType::DT_REQUIRE_LT = is_normal | is_lt | is_require , doctest::assertType::DT_WARN_GE = is_normal | is_ge | is_warn , doctest::assertType::DT_CHECK_GE = is_normal | is_ge | is_check , doctest::assertType::DT_REQUIRE_GE = is_normal | is_ge | is_require ,
  doctest::assertType::DT_WARN_LE = is_normal | is_le | is_warn , doctest::assertType::DT_CHECK_LE = is_normal | is_le | is_check , doctest::assertType::DT_REQUIRE_LE = is_normal | is_le | is_require , doctest::assertType::DT_WARN_UNARY = is_normal | is_unary | is_warn ,
  doctest::assertType::DT_CHECK_UNARY = is_normal | is_unary | is_check , doctest::assertType::DT_REQUIRE_UNARY = is_normal | is_unary | is_require , doctest::assertType::DT_WARN_UNARY_FALSE = is_normal | is_false | is_unary | is_warn , doctest::assertType::DT_CHECK_UNARY_FALSE = is_normal | is_false | is_unary | is_check ,
  doctest::assertType::DT_REQUIRE_UNARY_FALSE = is_normal | is_false | is_unary | is_require
}
 
enum  doctest::detail::binaryAssertComparison::Enum {
  doctest::detail::binaryAssertComparison::eq = 0 , doctest::detail::binaryAssertComparison::ne , doctest::detail::binaryAssertComparison::gt , doctest::detail::binaryAssertComparison::lt ,
  doctest::detail::binaryAssertComparison::ge , doctest::detail::binaryAssertComparison::le
}
 
enum  doctest::detail::assertAction::Enum { doctest::detail::assertAction::nothing = 0 , doctest::detail::assertAction::dbgbreak = 1 , doctest::detail::assertAction::shouldthrow = 2 }
 
enum  doctest::TestCaseFailureReason::Enum {
  doctest::TestCaseFailureReason::None = 0 , doctest::TestCaseFailureReason::AssertFailure = 1 , doctest::TestCaseFailureReason::Exception = 2 , doctest::TestCaseFailureReason::Crash = 4 ,
  doctest::TestCaseFailureReason::TooManyFailedAsserts = 8 , doctest::TestCaseFailureReason::Timeout = 16 , doctest::TestCaseFailureReason::ShouldHaveFailedButDidnt = 32 , doctest::TestCaseFailureReason::ShouldHaveFailedAndDid = 64 ,
  doctest::TestCaseFailureReason::DidntFailExactlyNumTimes = 128 , doctest::TestCaseFailureReason::FailedExactlyNumTimes = 256 , doctest::TestCaseFailureReason::CouldHaveFailedAndDid = 512
}
 

Functions

template<class traits >
basic_ostream< char, traits > & std::operator<< (basic_ostream< char, traits > &, const char *)
 
String doctest::operator+ (const String &lhs, const String &rhs)
 
bool doctest::operator== (const String &lhs, const String &rhs)
 
bool doctest::operator!= (const String &lhs, const String &rhs)
 
bool doctest::operator< (const String &lhs, const String &rhs)
 
bool doctest::operator> (const String &lhs, const String &rhs)
 
bool doctest::operator<= (const String &lhs, const String &rhs)
 
bool doctest::operator>= (const String &lhs, const String &rhs)
 
String doctest::toString (const Contains &in)
 
bool doctest::operator== (const String &lhs, const Contains &rhs)
 
bool doctest::operator== (const Contains &lhs, const String &rhs)
 
bool doctest::operator!= (const String &lhs, const Contains &rhs)
 
bool doctest::operator!= (const Contains &lhs, const String &rhs)
 
std::ostreamdoctest::Color::operator<< (std::ostream &s, Color::Enum code)
 
const char * doctest::assertString (assertType::Enum at)
 
const char * doctest::failureString (assertType::Enum at)
 
const char * doctest::skipPathFromFilename (const char *file)
 
template<typename T >
T && doctest::detail::declval ()
 
template<class T >
constexpr T && doctest::detail::forward (typename types::remove_reference< T >::type &t) noexcept
 
template<class T >
constexpr T && doctest::detail::forward (typename types::remove_reference< T >::type &&t) noexcept
 
std::ostreamdoctest::detail::tlssPush ()
 
String doctest::detail::tlssPop ()
 
template<typename T >
void doctest::detail::filloss (std::ostream *stream, const T &in)
 
template<typename T , size_t N>
void doctest::detail::filloss (std::ostream *stream, const T(&in)[N])
 
template<typename T >
String doctest::detail::toStream (const T &in)
 
template<typename T >
String doctest::toString ()
 
template<typename T , typename detail::types::enable_if<!detail::should_stringify_as_underlying_type< T >::value, bool >::type = true>
String doctest::toString (const T &value)
 
String doctest::toString (String in)
 
String doctest::toString (std::nullptr_t)
 
String doctest::toString (bool in)
 
String doctest::toString (float in)
 
String doctest::toString (double in)
 
String doctest::toString (double long in)
 
String doctest::toString (char in)
 
String doctest::toString (char signed in)
 
String doctest::toString (char unsigned in)
 
String doctest::toString (short in)
 
String doctest::toString (short unsigned in)
 
String doctest::toString (signed in)
 
String doctest::toString (unsigned in)
 
String doctest::toString (long in)
 
String doctest::toString (long unsigned in)
 
String doctest::toString (long long in)
 
String doctest::toString (long long unsigned in)
 
String doctest::toString (const Approx &in)
 
const ContextOptionsdoctest::getContextOptions ()
 
String doctest::toString (IsNaN< float > in)
 
String doctest::toString (IsNaN< double > in)
 
String doctest::toString (IsNaN< double long > in)
 
bool doctest::detail::checkIfShouldThrow (assertType::Enum at)
 
void doctest::detail::throwException ()
 
template<typename L , typename R >
String doctest::detail::stringifyBinaryExpr (const L &lhs, const char *op, const R &rhs)
 
template<typename L , typename R >
bool doctest::detail::eq (const L &lhs, const R &rhs)
 
template<typename L , typename R >
bool doctest::detail::ne (const L &lhs, const R &rhs)
 
template<typename L , typename R >
bool doctest::detail::lt (const L &lhs, const R &rhs)
 
template<typename L , typename R >
bool doctest::detail::gt (const L &lhs, const R &rhs)
 
template<typename L , typename R >
bool doctest::detail::le (const L &lhs, const R &rhs)
 
template<typename L , typename R >
bool doctest::detail::ge (const L &lhs, const R &rhs)
 
int doctest::detail::regTest (const TestCase &tc)
 
int doctest::detail::setTestSuite (const TestSuite &ts)
 
bool doctest::detail::isDebuggerActive ()
 
template<typename T >
int doctest::detail::instantiationHelper (const T &)
 
void doctest::detail::failed_out_of_a_testing_context (const AssertData &ad)
 
bool doctest::detail::decomp_assert (assertType::Enum at, const char *file, int line, const char *expr, const Result &result)
 
template<int comparison, typename L , typename R >
 doctest::detail::__attribute__ ((noinline)) bool binary_assert(assertType
 
template<typename L >
 doctest::detail::__attribute__ ((noinline)) bool unary_assert(assertType
 
void doctest::detail::registerExceptionTranslatorImpl (const IExceptionTranslator *et)
 
template<typename L >
ContextScope< L > doctest::detail::MakeContextScope (const L &lambda)
 
template<typename T >
int doctest::registerExceptionTranslator (String(*translateFunction)(T))
 
doctest::detail::TestSuitedoctest_detail_test_suite_ns::getCurrentTestSuite ()
 
void doctest::detail::registerReporterImpl (const char *name, int prio, reporterCreatorFunc c, bool isReporter)
 
template<typename Reporter >
IReporterdoctest::detail::reporterCreator (const ContextOptions &o)
 
template<typename Reporter >
int doctest::registerReporter (const char *name, int priority, bool isReporter)
 

Variables

bool doctest::is_running_in_test
 

Macro Definition Documentation

◆ ADD_FAIL_AT

#define ADD_FAIL_AT ( file,
line,
... )   DOCTEST_ADD_FAIL_AT(file, line, __VA_ARGS__)

Definition at line 2956 of file doctest.h.

◆ ADD_FAIL_CHECK_AT

#define ADD_FAIL_CHECK_AT ( file,
line,
... )   DOCTEST_ADD_FAIL_CHECK_AT(file, line, __VA_ARGS__)

Definition at line 2955 of file doctest.h.

◆ ADD_MESSAGE_AT

#define ADD_MESSAGE_AT ( file,
line,
... )   DOCTEST_ADD_MESSAGE_AT(file, line, __VA_ARGS__)

Definition at line 2954 of file doctest.h.

◆ AND_THEN

#define AND_THEN ( name)    DOCTEST_AND_THEN(name)

Definition at line 3014 of file doctest.h.

◆ AND_WHEN

#define AND_WHEN ( name)    DOCTEST_AND_WHEN(name)

Definition at line 3012 of file doctest.h.

◆ CAPTURE

#define CAPTURE ( x)    DOCTEST_CAPTURE(x)

Definition at line 2953 of file doctest.h.

◆ CHECK

#define CHECK ( ...)    DOCTEST_CHECK(__VA_ARGS__)

Definition at line 2969 of file doctest.h.

◆ CHECK_EQ

#define CHECK_EQ ( ...)    DOCTEST_CHECK_EQ(__VA_ARGS__)

Definition at line 3017 of file doctest.h.

◆ CHECK_FALSE

#define CHECK_FALSE ( ...)    DOCTEST_CHECK_FALSE(__VA_ARGS__)

Definition at line 2970 of file doctest.h.

◆ CHECK_FALSE_MESSAGE

#define CHECK_FALSE_MESSAGE ( cond,
... )   DOCTEST_CHECK_FALSE_MESSAGE(cond, __VA_ARGS__)

Definition at line 2992 of file doctest.h.

◆ CHECK_GE

#define CHECK_GE ( ...)    DOCTEST_CHECK_GE(__VA_ARGS__)

Definition at line 3029 of file doctest.h.

◆ CHECK_GT

#define CHECK_GT ( ...)    DOCTEST_CHECK_GT(__VA_ARGS__)

Definition at line 3023 of file doctest.h.

◆ CHECK_LE

#define CHECK_LE ( ...)    DOCTEST_CHECK_LE(__VA_ARGS__)

Definition at line 3032 of file doctest.h.

◆ CHECK_LT

#define CHECK_LT ( ...)    DOCTEST_CHECK_LT(__VA_ARGS__)

Definition at line 3026 of file doctest.h.

◆ CHECK_MESSAGE

#define CHECK_MESSAGE ( cond,
... )   DOCTEST_CHECK_MESSAGE(cond, __VA_ARGS__)

Definition at line 2991 of file doctest.h.

◆ CHECK_NE

#define CHECK_NE ( ...)    DOCTEST_CHECK_NE(__VA_ARGS__)

Definition at line 3020 of file doctest.h.

◆ CHECK_NOTHROW

#define CHECK_NOTHROW ( ...)    DOCTEST_CHECK_NOTHROW(__VA_ARGS__)

Definition at line 2975 of file doctest.h.

◆ CHECK_NOTHROW_MESSAGE

#define CHECK_NOTHROW_MESSAGE ( expr,
... )   DOCTEST_CHECK_NOTHROW_MESSAGE(expr, __VA_ARGS__)

Definition at line 2997 of file doctest.h.

◆ CHECK_THROWS

#define CHECK_THROWS ( ...)    DOCTEST_CHECK_THROWS(__VA_ARGS__)

Definition at line 2971 of file doctest.h.

◆ CHECK_THROWS_AS

#define CHECK_THROWS_AS ( expr,
... )   DOCTEST_CHECK_THROWS_AS(expr, __VA_ARGS__)

Definition at line 2972 of file doctest.h.

◆ CHECK_THROWS_AS_MESSAGE

#define CHECK_THROWS_AS_MESSAGE ( expr,
ex,
... )   DOCTEST_CHECK_THROWS_AS_MESSAGE(expr, ex, __VA_ARGS__)

Definition at line 2994 of file doctest.h.

◆ CHECK_THROWS_MESSAGE

#define CHECK_THROWS_MESSAGE ( expr,
... )   DOCTEST_CHECK_THROWS_MESSAGE(expr, __VA_ARGS__)

Definition at line 2993 of file doctest.h.

◆ CHECK_THROWS_WITH

#define CHECK_THROWS_WITH ( expr,
... )   DOCTEST_CHECK_THROWS_WITH(expr, __VA_ARGS__)

Definition at line 2973 of file doctest.h.

◆ CHECK_THROWS_WITH_AS

#define CHECK_THROWS_WITH_AS ( expr,
with,
... )   DOCTEST_CHECK_THROWS_WITH_AS(expr, with, __VA_ARGS__)

Definition at line 2974 of file doctest.h.

◆ CHECK_THROWS_WITH_AS_MESSAGE

#define CHECK_THROWS_WITH_AS_MESSAGE ( expr,
with,
ex,
... )   DOCTEST_CHECK_THROWS_WITH_AS_MESSAGE(expr, with, ex, __VA_ARGS__)

Definition at line 2996 of file doctest.h.

◆ CHECK_THROWS_WITH_MESSAGE

#define CHECK_THROWS_WITH_MESSAGE ( expr,
with,
... )   DOCTEST_CHECK_THROWS_WITH_MESSAGE(expr, with, __VA_ARGS__)

Definition at line 2995 of file doctest.h.

◆ CHECK_UNARY

#define CHECK_UNARY ( ...)    DOCTEST_CHECK_UNARY(__VA_ARGS__)

Definition at line 3035 of file doctest.h.

◆ CHECK_UNARY_FALSE

#define CHECK_UNARY_FALSE ( ...)    DOCTEST_CHECK_UNARY_FALSE(__VA_ARGS__)

Definition at line 3038 of file doctest.h.

◆ DOCTEST_ADD_AT_IMPL

#define DOCTEST_ADD_AT_IMPL ( type,
file,
line,
mb,
... )
Value:
doctest::detail::MessageBuilder mb(file, line, doctest::assertType::type); \
mb * __VA_ARGS__; \
if(mb.log()) \
DOCTEST_BREAK_INTO_DEBUGGER(); \
mb.react(); \
#define DOCTEST_FUNC_SCOPE_BEGIN
Definition doctest.h:2130
#define DOCTEST_FUNC_SCOPE_END
Definition doctest.h:2131

Definition at line 2360 of file doctest.h.

2360#define DOCTEST_ADD_AT_IMPL(type, file, line, mb, ...) \
2361 DOCTEST_FUNC_SCOPE_BEGIN { \
2362 doctest::detail::MessageBuilder mb(file, line, doctest::assertType::type); \
2363 mb * __VA_ARGS__; \
2364 if(mb.log()) \
2365 DOCTEST_BREAK_INTO_DEBUGGER(); \
2366 mb.react(); \
2367 } DOCTEST_FUNC_SCOPE_END

◆ DOCTEST_ADD_FAIL_AT

#define DOCTEST_ADD_FAIL_AT ( file,
line,
... )   DOCTEST_ADD_AT_IMPL(is_require, file, line, DOCTEST_ANONYMOUS(DOCTEST_MESSAGE_), __VA_ARGS__)

Definition at line 2372 of file doctest.h.

◆ DOCTEST_ADD_FAIL_CHECK_AT

#define DOCTEST_ADD_FAIL_CHECK_AT ( file,
line,
... )   DOCTEST_ADD_AT_IMPL(is_check, file, line, DOCTEST_ANONYMOUS(DOCTEST_MESSAGE_), __VA_ARGS__)

Definition at line 2371 of file doctest.h.

◆ DOCTEST_ADD_MESSAGE_AT

#define DOCTEST_ADD_MESSAGE_AT ( file,
line,
... )   DOCTEST_ADD_AT_IMPL(is_warn, file, line, DOCTEST_ANONYMOUS(DOCTEST_MESSAGE_), __VA_ARGS__)

Definition at line 2370 of file doctest.h.

◆ DOCTEST_ALIGNMENT

#define DOCTEST_ALIGNMENT ( x)    __attribute__((aligned(x)))

Definition at line 360 of file doctest.h.

◆ DOCTEST_AND_THEN

#define DOCTEST_AND_THEN ( name)    DOCTEST_SUBCASE(" And: " name)

Definition at line 2930 of file doctest.h.

◆ DOCTEST_AND_WHEN

#define DOCTEST_AND_WHEN ( name)    DOCTEST_SUBCASE("And when: " name)

Definition at line 2928 of file doctest.h.

◆ DOCTEST_ANONYMOUS

#define DOCTEST_ANONYMOUS ( x)    DOCTEST_CAT(x, __LINE__)

Definition at line 424 of file doctest.h.

◆ DOCTEST_ASSERT_IMPLEMENT_1

#define DOCTEST_ASSERT_IMPLEMENT_1 ( assert_type,
... )
Value:
DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__); \

Definition at line 2394 of file doctest.h.

2394#define DOCTEST_ASSERT_IMPLEMENT_1(assert_type, ...) \
2395 DOCTEST_FUNC_SCOPE_BEGIN { \
2396 DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__); \
2397 } DOCTEST_FUNC_SCOPE_END // NOLINT(clang-analyzer-cplusplus.NewDeleteLeaks)

◆ DOCTEST_ASSERT_IMPLEMENT_2

#define DOCTEST_ASSERT_IMPLEMENT_2 ( assert_type,
... )
Value:
DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH("-Woverloaded-shift-op-parentheses") \
/* NOLINTNEXTLINE(clang-analyzer-cplusplus.NewDeleteLeaks) */ \
doctest::detail::ResultBuilder DOCTEST_RB(doctest::assertType::assert_type, __FILE__, \
__LINE__, #__VA_ARGS__); \
DOCTEST_WRAP_IN_TRY(DOCTEST_RB.setResult( \
doctest::detail::ExpressionDecomposer(doctest::assertType::assert_type) \
<< __VA_ARGS__)) /* NOLINTNEXTLINE(clang-analyzer-cplusplus.NewDeleteLeaks) */ \
DOCTEST_ASSERT_LOG_REACT_RETURN(DOCTEST_RB) \
#define DOCTEST_CLANG_SUPPRESS_WARNING_POP
Definition doctest.h:125
#define DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH(w)
Definition doctest.h:126

Definition at line 2383 of file doctest.h.

2383#define DOCTEST_ASSERT_IMPLEMENT_2(assert_type, ...) \
2384 DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH("-Woverloaded-shift-op-parentheses") \
2385 /* NOLINTNEXTLINE(clang-analyzer-cplusplus.NewDeleteLeaks) */ \
2386 doctest::detail::ResultBuilder DOCTEST_RB(doctest::assertType::assert_type, __FILE__, \
2387 __LINE__, #__VA_ARGS__); \
2388 DOCTEST_WRAP_IN_TRY(DOCTEST_RB.setResult( \
2389 doctest::detail::ExpressionDecomposer(doctest::assertType::assert_type) \
2390 << __VA_ARGS__)) /* NOLINTNEXTLINE(clang-analyzer-cplusplus.NewDeleteLeaks) */ \
2391 DOCTEST_ASSERT_LOG_REACT_RETURN(DOCTEST_RB) \
2392 DOCTEST_CLANG_SUPPRESS_WARNING_POP

◆ DOCTEST_ASSERT_IN_TESTS

#define DOCTEST_ASSERT_IN_TESTS ( decomp)
Value:
ResultBuilder rb(at, file, line, expr); \
rb.m_failed = failed; \
if(rb.m_failed || getContextOptions()->success) \
rb.m_decomp = decomp; \
if(rb.log()) \
DOCTEST_BREAK_INTO_DEBUGGER(); \
if(rb.m_failed && checkIfShouldThrow(at)) \
throwException()

Definition at line 1753 of file doctest.h.

1753#define DOCTEST_ASSERT_IN_TESTS(decomp) \
1754 ResultBuilder rb(at, file, line, expr); \
1755 rb.m_failed = failed; \
1756 if(rb.m_failed || getContextOptions()->success) \
1757 rb.m_decomp = decomp; \
1758 if(rb.log()) \
1759 DOCTEST_BREAK_INTO_DEBUGGER(); \
1760 if(rb.m_failed && checkIfShouldThrow(at)) \
1761 throwException()

◆ DOCTEST_ASSERT_LOG_REACT_RETURN

#define DOCTEST_ASSERT_LOG_REACT_RETURN ( b)
Value:
b.react(); \
DOCTEST_FUNC_SCOPE_RET(!b.m_failed)
table::Key< int > b
#define DOCTEST_BREAK_INTO_DEBUGGER()
Definition doctest.h:463

Definition at line 2136 of file doctest.h.

2136#define DOCTEST_ASSERT_LOG_REACT_RETURN(b) \
2137 if(b.log()) DOCTEST_BREAK_INTO_DEBUGGER(); \
2138 b.react(); \
2139 DOCTEST_FUNC_SCOPE_RET(!b.m_failed)

◆ DOCTEST_ASSERT_OUT_OF_TESTS

#define DOCTEST_ASSERT_OUT_OF_TESTS ( decomp)
Value:
do { \
if(!is_running_in_test) { \
if(failed) { \
ResultBuilder rb(at, file, line, expr); \
rb.m_failed = failed; \
rb.m_decomp = decomp; \
failed_out_of_a_testing_context(rb); \
if(isDebuggerActive() && !getContextOptions()->no_breaks) \
DOCTEST_BREAK_INTO_DEBUGGER(); \
if(checkIfShouldThrow(at)) \
throwException(); \
} \
return !failed; \
} \
} while(false)

Definition at line 1736 of file doctest.h.

1736#define DOCTEST_ASSERT_OUT_OF_TESTS(decomp) \
1737 do { \
1738 if(!is_running_in_test) { \
1739 if(failed) { \
1740 ResultBuilder rb(at, file, line, expr); \
1741 rb.m_failed = failed; \
1742 rb.m_decomp = decomp; \
1743 failed_out_of_a_testing_context(rb); \
1744 if(isDebuggerActive() && !getContextOptions()->no_breaks) \
1745 DOCTEST_BREAK_INTO_DEBUGGER(); \
1746 if(checkIfShouldThrow(at)) \
1747 throwException(); \
1748 } \
1749 return !failed; \
1750 } \
1751 } while(false)

◆ DOCTEST_BINARY_ASSERT

#define DOCTEST_BINARY_ASSERT ( assert_type,
comp,
... )
Value:
doctest::detail::ResultBuilder DOCTEST_RB(doctest::assertType::assert_type, __FILE__, \
__LINE__, #__VA_ARGS__); \
DOCTEST_WRAP_IN_TRY( \
DOCTEST_RB.binary_assert<doctest::detail::binaryAssertComparison::comp>( \
__VA_ARGS__)) \
DOCTEST_ASSERT_LOG_REACT_RETURN(DOCTEST_RB); \

Definition at line 2399 of file doctest.h.

2399#define DOCTEST_BINARY_ASSERT(assert_type, comp, ...) \
2400 DOCTEST_FUNC_SCOPE_BEGIN { \
2401 doctest::detail::ResultBuilder DOCTEST_RB(doctest::assertType::assert_type, __FILE__, \
2402 __LINE__, #__VA_ARGS__); \
2403 DOCTEST_WRAP_IN_TRY( \
2404 DOCTEST_RB.binary_assert<doctest::detail::binaryAssertComparison::comp>( \
2405 __VA_ARGS__)) \
2406 DOCTEST_ASSERT_LOG_REACT_RETURN(DOCTEST_RB); \
2407 } DOCTEST_FUNC_SCOPE_END

◆ DOCTEST_BINARY_RELATIONAL_OP

#define DOCTEST_BINARY_RELATIONAL_OP ( n,
op )    template <class L, class R> struct RelationalComparator<n, L, R> { bool operator()(const DOCTEST_REF_WRAP(L) lhs, const DOCTEST_REF_WRAP(R) rhs) const { return op(lhs, rhs); } };

Definition at line 1670 of file doctest.h.

1670#define DOCTEST_BINARY_RELATIONAL_OP(n, op) \
1671 template <class L, class R> struct RelationalComparator<n, L, R> { bool operator()(const DOCTEST_REF_WRAP(L) lhs, const DOCTEST_REF_WRAP(R) rhs) const { return op(lhs, rhs); } };

◆ DOCTEST_BREAK_INTO_DEBUGGER

#define DOCTEST_BREAK_INTO_DEBUGGER ( )    raise(SIGTRAP)

Definition at line 463 of file doctest.h.

◆ DOCTEST_CAPTURE

#define DOCTEST_CAPTURE ( x)    DOCTEST_INFO(#x " := ", x)

Definition at line 2358 of file doctest.h.

◆ DOCTEST_CAST_TO_VOID

#define DOCTEST_CAST_TO_VOID ( ...)    __VA_ARGS__;

Definition at line 2156 of file doctest.h.

◆ DOCTEST_CAT

#define DOCTEST_CAT ( s1,
s2 )   DOCTEST_CAT_IMPL(s1, s2)

Definition at line 420 of file doctest.h.

◆ DOCTEST_CAT_IMPL

#define DOCTEST_CAT_IMPL ( s1,
s2 )   s1##s2

Definition at line 419 of file doctest.h.

◆ DOCTEST_CHECK

#define DOCTEST_CHECK ( ...)    DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)

Definition at line 2440 of file doctest.h.

◆ DOCTEST_CHECK_EQ

#define DOCTEST_CHECK_EQ ( ...)    DOCTEST_BINARY_ASSERT(DT_CHECK_EQ, eq, __VA_ARGS__)

Definition at line 2456 of file doctest.h.

◆ DOCTEST_CHECK_FALSE

#define DOCTEST_CHECK_FALSE ( ...)    DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK_FALSE, __VA_ARGS__)

Definition at line 2443 of file doctest.h.

◆ DOCTEST_CHECK_FALSE_MESSAGE

#define DOCTEST_CHECK_FALSE_MESSAGE ( cond,
... )   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_CHECK_FALSE, cond); } DOCTEST_FUNC_SCOPE_END

Definition at line 2451 of file doctest.h.

◆ DOCTEST_CHECK_GE

#define DOCTEST_CHECK_GE ( ...)    DOCTEST_BINARY_ASSERT(DT_CHECK_GE, ge, __VA_ARGS__)

Definition at line 2468 of file doctest.h.

◆ DOCTEST_CHECK_GT

#define DOCTEST_CHECK_GT ( ...)    DOCTEST_BINARY_ASSERT(DT_CHECK_GT, gt, __VA_ARGS__)

Definition at line 2462 of file doctest.h.

◆ DOCTEST_CHECK_LE

#define DOCTEST_CHECK_LE ( ...)    DOCTEST_BINARY_ASSERT(DT_CHECK_LE, le, __VA_ARGS__)

Definition at line 2471 of file doctest.h.

◆ DOCTEST_CHECK_LT

#define DOCTEST_CHECK_LT ( ...)    DOCTEST_BINARY_ASSERT(DT_CHECK_LT, lt, __VA_ARGS__)

Definition at line 2465 of file doctest.h.

◆ DOCTEST_CHECK_MESSAGE

#define DOCTEST_CHECK_MESSAGE ( cond,
... )   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_CHECK, cond); } DOCTEST_FUNC_SCOPE_END

Definition at line 2448 of file doctest.h.

◆ DOCTEST_CHECK_NE

#define DOCTEST_CHECK_NE ( ...)    DOCTEST_BINARY_ASSERT(DT_CHECK_NE, ne, __VA_ARGS__)

Definition at line 2459 of file doctest.h.

◆ DOCTEST_CHECK_NOTHROW

#define DOCTEST_CHECK_NOTHROW ( ...)    DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2867 of file doctest.h.

◆ DOCTEST_CHECK_NOTHROW_MESSAGE

#define DOCTEST_CHECK_NOTHROW_MESSAGE ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2883 of file doctest.h.

◆ DOCTEST_CHECK_THROWS

#define DOCTEST_CHECK_THROWS ( ...)    DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2855 of file doctest.h.

◆ DOCTEST_CHECK_THROWS_AS

#define DOCTEST_CHECK_THROWS_AS ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2858 of file doctest.h.

◆ DOCTEST_CHECK_THROWS_AS_MESSAGE

#define DOCTEST_CHECK_THROWS_AS_MESSAGE ( expr,
ex,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2874 of file doctest.h.

◆ DOCTEST_CHECK_THROWS_MESSAGE

#define DOCTEST_CHECK_THROWS_MESSAGE ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2871 of file doctest.h.

◆ DOCTEST_CHECK_THROWS_WITH

#define DOCTEST_CHECK_THROWS_WITH ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2861 of file doctest.h.

◆ DOCTEST_CHECK_THROWS_WITH_AS

#define DOCTEST_CHECK_THROWS_WITH_AS ( expr,
with,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2864 of file doctest.h.

◆ DOCTEST_CHECK_THROWS_WITH_AS_MESSAGE

#define DOCTEST_CHECK_THROWS_WITH_AS_MESSAGE ( expr,
with,
ex,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2880 of file doctest.h.

◆ DOCTEST_CHECK_THROWS_WITH_MESSAGE

#define DOCTEST_CHECK_THROWS_WITH_MESSAGE ( expr,
with,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2877 of file doctest.h.

◆ DOCTEST_CHECK_UNARY

#define DOCTEST_CHECK_UNARY ( ...)    DOCTEST_UNARY_ASSERT(DT_CHECK_UNARY, __VA_ARGS__)

Definition at line 2475 of file doctest.h.

◆ DOCTEST_CHECK_UNARY_FALSE

#define DOCTEST_CHECK_UNARY_FALSE ( ...)    DOCTEST_UNARY_ASSERT(DT_CHECK_UNARY_FALSE, __VA_ARGS__)

Definition at line 2478 of file doctest.h.

◆ DOCTEST_CLANG

#define DOCTEST_CLANG   0

Definition at line 102 of file doctest.h.

◆ DOCTEST_CLANG_SUPPRESS_WARNING

#define DOCTEST_CLANG_SUPPRESS_WARNING ( w)

Definition at line 124 of file doctest.h.

◆ DOCTEST_CLANG_SUPPRESS_WARNING_POP

#define DOCTEST_CLANG_SUPPRESS_WARNING_POP

Definition at line 125 of file doctest.h.

◆ DOCTEST_CLANG_SUPPRESS_WARNING_PUSH

#define DOCTEST_CLANG_SUPPRESS_WARNING_PUSH

Definition at line 123 of file doctest.h.

◆ DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH

#define DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH ( w)

Definition at line 126 of file doctest.h.

◆ DOCTEST_CMP_EQ

#define DOCTEST_CMP_EQ ( l,
r )   l == r

Definition at line 1482 of file doctest.h.

◆ DOCTEST_CMP_GE

#define DOCTEST_CMP_GE ( l,
r )   l >= r

Definition at line 1486 of file doctest.h.

◆ DOCTEST_CMP_GT

#define DOCTEST_CMP_GT ( l,
r )   l > r

Definition at line 1484 of file doctest.h.

◆ DOCTEST_CMP_LE

#define DOCTEST_CMP_LE ( l,
r )   l <= r

Definition at line 1487 of file doctest.h.

◆ DOCTEST_CMP_LT

#define DOCTEST_CMP_LT ( l,
r )   l < r

Definition at line 1485 of file doctest.h.

◆ DOCTEST_CMP_NE

#define DOCTEST_CMP_NE ( l,
r )   l != r

Definition at line 1483 of file doctest.h.

◆ DOCTEST_COMPARISON_RETURN_TYPE

#define DOCTEST_COMPARISON_RETURN_TYPE   bool

Definition at line 1455 of file doctest.h.

◆ DOCTEST_COMPILER

#define DOCTEST_COMPILER ( MAJOR,
MINOR,
PATCH )   ((MAJOR)*10000000 + (MINOR)*100000 + (PATCH))

Definition at line 77 of file doctest.h.

◆ DOCTEST_CONFIG_NO_EXCEPTIONS

#define DOCTEST_CONFIG_NO_EXCEPTIONS

Definition at line 292 of file doctest.h.

◆ DOCTEST_CONFIG_NO_TRY_CATCH_IN_ASSERTS

#define DOCTEST_CONFIG_NO_TRY_CATCH_IN_ASSERTS

Definition at line 303 of file doctest.h.

◆ DOCTEST_CONFIG_POSIX_SIGNALS

#define DOCTEST_CONFIG_POSIX_SIGNALS

Definition at line 283 of file doctest.h.

◆ DOCTEST_CONFIG_STRING_SIZE_TYPE

#define DOCTEST_CONFIG_STRING_SIZE_TYPE   unsigned

Definition at line 565 of file doctest.h.

◆ DOCTEST_CONSTEXPR

#define DOCTEST_CONSTEXPR   constexpr

Definition at line 390 of file doctest.h.

◆ DOCTEST_CONSTEXPR_FUNC

#define DOCTEST_CONSTEXPR_FUNC   constexpr

Definition at line 391 of file doctest.h.

◆ DOCTEST_CPLUSPLUS

#define DOCTEST_CPLUSPLUS   __cplusplus

Definition at line 74 of file doctest.h.

◆ DOCTEST_CREATE_AND_REGISTER_FUNCTION

#define DOCTEST_CREATE_AND_REGISTER_FUNCTION ( f,
decorators )
Value:
static void f(); \
DOCTEST_REGISTER_FUNCTION(DOCTEST_EMPTY, f, decorators) \
static void f()
#define DOCTEST_EMPTY
Definition doctest.h:347

Definition at line 2182 of file doctest.h.

2182#define DOCTEST_CREATE_AND_REGISTER_FUNCTION(f, decorators) \
2183 static void f(); \
2184 DOCTEST_REGISTER_FUNCTION(DOCTEST_EMPTY, f, decorators) \
2185 static void f()

◆ DOCTEST_CREATE_AND_REGISTER_FUNCTION_IN_CLASS

#define DOCTEST_CREATE_AND_REGISTER_FUNCTION_IN_CLASS ( f,
proxy,
decorators )
Value:
static doctest::detail::funcType proxy() { return f; } \
DOCTEST_REGISTER_FUNCTION(inline, proxy(), decorators) \
static void f()
void(*)() funcType
Definition doctest.h:1612

Definition at line 2187 of file doctest.h.

2187#define DOCTEST_CREATE_AND_REGISTER_FUNCTION_IN_CLASS(f, proxy, decorators) \
2188 static doctest::detail::funcType proxy() { return f; } \
2189 DOCTEST_REGISTER_FUNCTION(inline, proxy(), decorators) \
2190 static void f()

◆ DOCTEST_DECLARE_INTERFACE

#define DOCTEST_DECLARE_INTERFACE ( name)
Value:
virtual ~name(); \
name() = default; \
name(const name&) = delete; \
name(name&&) = delete; \
name& operator=(const name&) = delete; \
name& operator=(name&&) = delete;

Definition at line 407 of file doctest.h.

407#define DOCTEST_DECLARE_INTERFACE(name) \
408 virtual ~name(); \
409 name() = default; \
410 name(const name&) = delete; \
411 name(name&&) = delete; \
412 name& operator=(const name&) = delete; \
413 name& operator=(name&&) = delete;

◆ DOCTEST_DEFINE_DECORATOR

#define DOCTEST_DEFINE_DECORATOR ( name,
type,
def )
Value:
struct name \
{ \
type data; \
name(type in = def) \
: data(in) {} \
void fill(detail::TestCase& state) const { state.DOCTEST_CAT(m_, name) = data; } \
void fill(detail::TestSuite& state) const { state.DOCTEST_CAT(m_, name) = data; } \
}
char * data
Definition BaseRecord.cc:61
T fill(T... args)

Definition at line 1914 of file doctest.h.

1914#define DOCTEST_DEFINE_DECORATOR(name, type, def) \
1915 struct name \
1916 { \
1917 type data; \
1918 name(type in = def) \
1919 : data(in) {} \
1920 void fill(detail::TestCase& state) const { state.DOCTEST_CAT(m_, name) = data; } \
1921 void fill(detail::TestSuite& state) const { state.DOCTEST_CAT(m_, name) = data; } \
1922 }

◆ DOCTEST_DEFINE_INTERFACE

#define DOCTEST_DEFINE_INTERFACE ( name)     name::~name() = default;

Definition at line 415 of file doctest.h.

415#define DOCTEST_DEFINE_INTERFACE(name) \
416 name::~name() = default;

◆ DOCTEST_DO_BINARY_EXPRESSION_COMPARISON

#define DOCTEST_DO_BINARY_EXPRESSION_COMPARISON ( op,
op_str,
op_macro )
Value:
template <typename R> \
DOCTEST_NOINLINE SFINAE_OP(Result,op) operator op(R&& rhs) { \
bool res = op_macro(doctest::detail::forward<const L>(lhs), doctest::detail::forward<R>(rhs)); \
if(m_at & assertType::is_false) \
res = !res; \
if(!res || doctest::getContextOptions()->success) \
return Result(res, stringifyBinaryExpr(lhs, op_str, rhs)); \
return Result(res); \
}
#define DOCTEST_NOINLINE
Definition doctest.h:358
#define SFINAE_OP(ret, op)
Definition doctest.h:1370
const ContextOptions * getContextOptions()

Definition at line 1373 of file doctest.h.

1373#define DOCTEST_DO_BINARY_EXPRESSION_COMPARISON(op, op_str, op_macro) \
1374 template <typename R> \
1375 DOCTEST_NOINLINE SFINAE_OP(Result,op) operator op(R&& rhs) { \
1376 bool res = op_macro(doctest::detail::forward<const L>(lhs), doctest::detail::forward<R>(rhs)); \
1377 if(m_at & assertType::is_false) \
1378 res = !res; \
1379 if(!res || doctest::getContextOptions()->success) \
1380 return Result(res, stringifyBinaryExpr(lhs, op_str, rhs)); \
1381 return Result(res); \
1382 }

◆ DOCTEST_EMPTY

#define DOCTEST_EMPTY

Definition at line 347 of file doctest.h.

◆ DOCTEST_EXCEPTION_EMPTY_FUNC

#define DOCTEST_EXCEPTION_EMPTY_FUNC
Value:
[] { static_assert(false, "Exceptions are disabled! " \
"Use DOCTEST_CONFIG_NO_EXCEPTIONS_BUT_WITH_ALL_ASSERTS if you want to compile with exceptions disabled."); return false; }()

Definition at line 2823 of file doctest.h.

2823#define DOCTEST_EXCEPTION_EMPTY_FUNC [] { static_assert(false, "Exceptions are disabled! " \
2824 "Use DOCTEST_CONFIG_NO_EXCEPTIONS_BUT_WITH_ALL_ASSERTS if you want to compile with exceptions disabled."); return false; }()

◆ DOCTEST_FAIL

#define DOCTEST_FAIL ( ...)    DOCTEST_ADD_FAIL_AT(__FILE__, __LINE__, __VA_ARGS__)

Definition at line 2377 of file doctest.h.

◆ DOCTEST_FAIL_CHECK

#define DOCTEST_FAIL_CHECK ( ...)    DOCTEST_ADD_FAIL_CHECK_AT(__FILE__, __LINE__, __VA_ARGS__)

Definition at line 2376 of file doctest.h.

◆ DOCTEST_FAST_CHECK_EQ

#define DOCTEST_FAST_CHECK_EQ   DOCTEST_CHECK_EQ

Definition at line 2891 of file doctest.h.

◆ DOCTEST_FAST_CHECK_GE

#define DOCTEST_FAST_CHECK_GE   DOCTEST_CHECK_GE

Definition at line 2903 of file doctest.h.

◆ DOCTEST_FAST_CHECK_GT

#define DOCTEST_FAST_CHECK_GT   DOCTEST_CHECK_GT

Definition at line 2897 of file doctest.h.

◆ DOCTEST_FAST_CHECK_LE

#define DOCTEST_FAST_CHECK_LE   DOCTEST_CHECK_LE

Definition at line 2906 of file doctest.h.

◆ DOCTEST_FAST_CHECK_LT

#define DOCTEST_FAST_CHECK_LT   DOCTEST_CHECK_LT

Definition at line 2900 of file doctest.h.

◆ DOCTEST_FAST_CHECK_NE

#define DOCTEST_FAST_CHECK_NE   DOCTEST_CHECK_NE

Definition at line 2894 of file doctest.h.

◆ DOCTEST_FAST_CHECK_UNARY

#define DOCTEST_FAST_CHECK_UNARY   DOCTEST_CHECK_UNARY

Definition at line 2910 of file doctest.h.

◆ DOCTEST_FAST_CHECK_UNARY_FALSE

#define DOCTEST_FAST_CHECK_UNARY_FALSE   DOCTEST_CHECK_UNARY_FALSE

Definition at line 2913 of file doctest.h.

◆ DOCTEST_FAST_REQUIRE_EQ

#define DOCTEST_FAST_REQUIRE_EQ   DOCTEST_REQUIRE_EQ

Definition at line 2892 of file doctest.h.

◆ DOCTEST_FAST_REQUIRE_GE

#define DOCTEST_FAST_REQUIRE_GE   DOCTEST_REQUIRE_GE

Definition at line 2904 of file doctest.h.

◆ DOCTEST_FAST_REQUIRE_GT

#define DOCTEST_FAST_REQUIRE_GT   DOCTEST_REQUIRE_GT

Definition at line 2898 of file doctest.h.

◆ DOCTEST_FAST_REQUIRE_LE

#define DOCTEST_FAST_REQUIRE_LE   DOCTEST_REQUIRE_LE

Definition at line 2907 of file doctest.h.

◆ DOCTEST_FAST_REQUIRE_LT

#define DOCTEST_FAST_REQUIRE_LT   DOCTEST_REQUIRE_LT

Definition at line 2901 of file doctest.h.

◆ DOCTEST_FAST_REQUIRE_NE

#define DOCTEST_FAST_REQUIRE_NE   DOCTEST_REQUIRE_NE

Definition at line 2895 of file doctest.h.

◆ DOCTEST_FAST_REQUIRE_UNARY

#define DOCTEST_FAST_REQUIRE_UNARY   DOCTEST_REQUIRE_UNARY

Definition at line 2911 of file doctest.h.

◆ DOCTEST_FAST_REQUIRE_UNARY_FALSE

#define DOCTEST_FAST_REQUIRE_UNARY_FALSE   DOCTEST_REQUIRE_UNARY_FALSE

Definition at line 2914 of file doctest.h.

◆ DOCTEST_FAST_WARN_EQ

#define DOCTEST_FAST_WARN_EQ   DOCTEST_WARN_EQ

Definition at line 2890 of file doctest.h.

◆ DOCTEST_FAST_WARN_GE

#define DOCTEST_FAST_WARN_GE   DOCTEST_WARN_GE

Definition at line 2902 of file doctest.h.

◆ DOCTEST_FAST_WARN_GT

#define DOCTEST_FAST_WARN_GT   DOCTEST_WARN_GT

Definition at line 2896 of file doctest.h.

◆ DOCTEST_FAST_WARN_LE

#define DOCTEST_FAST_WARN_LE   DOCTEST_WARN_LE

Definition at line 2905 of file doctest.h.

◆ DOCTEST_FAST_WARN_LT

#define DOCTEST_FAST_WARN_LT   DOCTEST_WARN_LT

Definition at line 2899 of file doctest.h.

◆ DOCTEST_FAST_WARN_NE

#define DOCTEST_FAST_WARN_NE   DOCTEST_WARN_NE

Definition at line 2893 of file doctest.h.

◆ DOCTEST_FAST_WARN_UNARY

#define DOCTEST_FAST_WARN_UNARY   DOCTEST_WARN_UNARY

Definition at line 2909 of file doctest.h.

◆ DOCTEST_FAST_WARN_UNARY_FALSE

#define DOCTEST_FAST_WARN_UNARY_FALSE   DOCTEST_WARN_UNARY_FALSE

Definition at line 2912 of file doctest.h.

◆ DOCTEST_FORBIT_EXPRESSION

#define DOCTEST_FORBIT_EXPRESSION ( rt,
op )
Value:
template <typename R> \
rt& operator op(const R&) { \
static_assert(deferred_false<R>::value, \
"Expression Too Complex Please Rewrite As Binary Comparison!"); \
return *this; \
}

Definition at line 1387 of file doctest.h.

1387#define DOCTEST_FORBIT_EXPRESSION(rt, op) \
1388 template <typename R> \
1389 rt& operator op(const R&) { \
1390 static_assert(deferred_false<R>::value, \
1391 "Expression Too Complex Please Rewrite As Binary Comparison!"); \
1392 return *this; \
1393 }

◆ DOCTEST_FUNC_EMPTY

#define DOCTEST_FUNC_EMPTY   (void)0

Definition at line 2119 of file doctest.h.

◆ DOCTEST_FUNC_SCOPE_BEGIN

#define DOCTEST_FUNC_SCOPE_BEGIN   do

Definition at line 2130 of file doctest.h.

◆ DOCTEST_FUNC_SCOPE_END

#define DOCTEST_FUNC_SCOPE_END   while(false)

Definition at line 2131 of file doctest.h.

◆ DOCTEST_FUNC_SCOPE_RET

#define DOCTEST_FUNC_SCOPE_RET ( v)    (void)0

Definition at line 2132 of file doctest.h.

◆ DOCTEST_GCC

#define DOCTEST_GCC   0

Definition at line 105 of file doctest.h.

◆ DOCTEST_GCC_SUPPRESS_WARNING

#define DOCTEST_GCC_SUPPRESS_WARNING ( w)

Definition at line 138 of file doctest.h.

◆ DOCTEST_GCC_SUPPRESS_WARNING_POP

#define DOCTEST_GCC_SUPPRESS_WARNING_POP

Definition at line 139 of file doctest.h.

◆ DOCTEST_GCC_SUPPRESS_WARNING_PUSH

#define DOCTEST_GCC_SUPPRESS_WARNING_PUSH

Definition at line 137 of file doctest.h.

◆ DOCTEST_GCC_SUPPRESS_WARNING_WITH_PUSH

#define DOCTEST_GCC_SUPPRESS_WARNING_WITH_PUSH ( w)

Definition at line 140 of file doctest.h.

◆ DOCTEST_GIVEN

#define DOCTEST_GIVEN ( name)    DOCTEST_SUBCASE(" Given: " name)

Definition at line 2926 of file doctest.h.

◆ DOCTEST_GLOBAL_NO_WARNINGS

#define DOCTEST_GLOBAL_NO_WARNINGS ( var,
... )
Value:
DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH("-Wglobal-constructors") \
static const int var = doctest::detail::consume(&var, __VA_ARGS__); \

Definition at line 450 of file doctest.h.

450#define DOCTEST_GLOBAL_NO_WARNINGS(var, ...) \
451 DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH("-Wglobal-constructors") \
452 static const int var = doctest::detail::consume(&var, __VA_ARGS__); \
453 DOCTEST_CLANG_SUPPRESS_WARNING_POP

◆ DOCTEST_ICC

#define DOCTEST_ICC   0

Definition at line 108 of file doctest.h.

◆ DOCTEST_IMPLEMENT_FIXTURE

#define DOCTEST_IMPLEMENT_FIXTURE ( der,
base,
func,
decorators )
Value:
namespace { /* NOLINT */ \
struct der : public base \
{ \
void f(); \
}; \
static DOCTEST_INLINE_NOINLINE void func() { \
der v; \
v.f(); \
} \
DOCTEST_REGISTER_FUNCTION(DOCTEST_EMPTY, func, decorators) \
} \
#define DOCTEST_INLINE_NOINLINE
Definition doctest.h:366

Definition at line 2168 of file doctest.h.

2168#define DOCTEST_IMPLEMENT_FIXTURE(der, base, func, decorators) \
2169 namespace { /* NOLINT */ \
2170 struct der : public base \
2171 { \
2172 void f(); \
2173 }; \
2174 static DOCTEST_INLINE_NOINLINE void func() { \
2175 der v; \
2176 v.f(); \
2177 } \
2178 DOCTEST_REGISTER_FUNCTION(DOCTEST_EMPTY, func, decorators) \
2179 } \
2180 DOCTEST_INLINE_NOINLINE void der::f() // NOLINT(misc-definitions-in-headers)

◆ DOCTEST_INFO

#define DOCTEST_INFO ( ...)
Value:
DOCTEST_INFO_IMPL(DOCTEST_ANONYMOUS(DOCTEST_CAPTURE_), \
DOCTEST_ANONYMOUS(DOCTEST_CAPTURE_OTHER_), \
__VA_ARGS__)
#define DOCTEST_INFO_IMPL(mb_name, s_name,...)
Definition doctest.h:2350
#define DOCTEST_ANONYMOUS(x)
Definition doctest.h:424

Definition at line 2344 of file doctest.h.

2344#define DOCTEST_INFO(...) \
2345 DOCTEST_INFO_IMPL(DOCTEST_ANONYMOUS(DOCTEST_CAPTURE_), \
2346 DOCTEST_ANONYMOUS(DOCTEST_CAPTURE_OTHER_), \
2347 __VA_ARGS__)

◆ DOCTEST_INFO_IMPL

#define DOCTEST_INFO_IMPL ( mb_name,
s_name,
... )
Value:
[&](std::ostream* s_name) { \
mb_name.m_stream = s_name; \
mb_name * __VA_ARGS__; \
})
ContextScope< L > MakeContextScope(const L &lambda)
Definition doctest.h:1909

Definition at line 2350 of file doctest.h.

2350#define DOCTEST_INFO_IMPL(mb_name, s_name, ...) \
2351 auto DOCTEST_ANONYMOUS(DOCTEST_CAPTURE_) = doctest::detail::MakeContextScope( \
2352 [&](std::ostream* s_name) { \
2353 doctest::detail::MessageBuilder mb_name(__FILE__, __LINE__, doctest::assertType::is_warn); \
2354 mb_name.m_stream = s_name; \
2355 mb_name * __VA_ARGS__; \
2356 })

◆ DOCTEST_INLINE_NOINLINE

#define DOCTEST_INLINE_NOINLINE   inline DOCTEST_NOINLINE

Definition at line 366 of file doctest.h.

◆ DOCTEST_INTERFACE

#define DOCTEST_INTERFACE

Definition at line 334 of file doctest.h.

◆ DOCTEST_INTERFACE_DECL

#define DOCTEST_INTERFACE_DECL   DOCTEST_INTERFACE

Definition at line 343 of file doctest.h.

◆ DOCTEST_INTERFACE_DEF

#define DOCTEST_INTERFACE_DEF

Definition at line 344 of file doctest.h.

◆ DOCTEST_MAKE_STD_HEADERS_CLEAN_FROM_WARNINGS_ON_WALL_BEGIN

#define DOCTEST_MAKE_STD_HEADERS_CLEAN_FROM_WARNINGS_ON_WALL_BEGIN
Value:
DOCTEST_MSVC_SUPPRESS_WARNING_PUSH \
DOCTEST_MSVC_SUPPRESS_WARNING(4548) /* before comma no effect; expected side - effect */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4265) /* virtual functions, but destructor is not virtual */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4986) /* exception specification does not match previous */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4350) /* 'member1' called instead of 'member2' */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4668) /* not defined as a preprocessor macro */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4365) /* signed/unsigned mismatch */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4774) /* format string not a string literal */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4820) /* padding */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4625) /* copy constructor was implicitly deleted */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4626) /* assignment operator was implicitly deleted */ \
DOCTEST_MSVC_SUPPRESS_WARNING(5027) /* move assignment operator implicitly deleted */ \
DOCTEST_MSVC_SUPPRESS_WARNING(5026) /* move constructor was implicitly deleted */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4623) /* default constructor was implicitly deleted */ \
DOCTEST_MSVC_SUPPRESS_WARNING(5039) /* pointer to pot. throwing function passed to extern C */ \
DOCTEST_MSVC_SUPPRESS_WARNING(5045) /* Spectre mitigation for memory load */ \
DOCTEST_MSVC_SUPPRESS_WARNING(5105) /* macro producing 'defined' has undefined behavior */ \
DOCTEST_MSVC_SUPPRESS_WARNING(4738) /* storing float result in memory, loss of performance */ \
DOCTEST_MSVC_SUPPRESS_WARNING(5262) /* implicit fall-through */

Definition at line 228 of file doctest.h.

228#define DOCTEST_MAKE_STD_HEADERS_CLEAN_FROM_WARNINGS_ON_WALL_BEGIN \
229 DOCTEST_MSVC_SUPPRESS_WARNING_PUSH \
230 DOCTEST_MSVC_SUPPRESS_WARNING(4548) /* before comma no effect; expected side - effect */ \
231 DOCTEST_MSVC_SUPPRESS_WARNING(4265) /* virtual functions, but destructor is not virtual */ \
232 DOCTEST_MSVC_SUPPRESS_WARNING(4986) /* exception specification does not match previous */ \
233 DOCTEST_MSVC_SUPPRESS_WARNING(4350) /* 'member1' called instead of 'member2' */ \
234 DOCTEST_MSVC_SUPPRESS_WARNING(4668) /* not defined as a preprocessor macro */ \
235 DOCTEST_MSVC_SUPPRESS_WARNING(4365) /* signed/unsigned mismatch */ \
236 DOCTEST_MSVC_SUPPRESS_WARNING(4774) /* format string not a string literal */ \
237 DOCTEST_MSVC_SUPPRESS_WARNING(4820) /* padding */ \
238 DOCTEST_MSVC_SUPPRESS_WARNING(4625) /* copy constructor was implicitly deleted */ \
239 DOCTEST_MSVC_SUPPRESS_WARNING(4626) /* assignment operator was implicitly deleted */ \
240 DOCTEST_MSVC_SUPPRESS_WARNING(5027) /* move assignment operator implicitly deleted */ \
241 DOCTEST_MSVC_SUPPRESS_WARNING(5026) /* move constructor was implicitly deleted */ \
242 DOCTEST_MSVC_SUPPRESS_WARNING(4623) /* default constructor was implicitly deleted */ \
243 DOCTEST_MSVC_SUPPRESS_WARNING(5039) /* pointer to pot. throwing function passed to extern C */ \
244 DOCTEST_MSVC_SUPPRESS_WARNING(5045) /* Spectre mitigation for memory load */ \
245 DOCTEST_MSVC_SUPPRESS_WARNING(5105) /* macro producing 'defined' has undefined behavior */ \
246 DOCTEST_MSVC_SUPPRESS_WARNING(4738) /* storing float result in memory, loss of performance */ \
247 DOCTEST_MSVC_SUPPRESS_WARNING(5262) /* implicit fall-through */

◆ DOCTEST_MAKE_STD_HEADERS_CLEAN_FROM_WARNINGS_ON_WALL_END

#define DOCTEST_MAKE_STD_HEADERS_CLEAN_FROM_WARNINGS_ON_WALL_END   DOCTEST_MSVC_SUPPRESS_WARNING_POP

Definition at line 249 of file doctest.h.

◆ DOCTEST_MESSAGE

#define DOCTEST_MESSAGE ( ...)    DOCTEST_ADD_MESSAGE_AT(__FILE__, __LINE__, __VA_ARGS__)

Definition at line 2375 of file doctest.h.

◆ DOCTEST_MSVC

#define DOCTEST_MSVC   0

Definition at line 99 of file doctest.h.

◆ DOCTEST_MSVC_SUPPRESS_WARNING

#define DOCTEST_MSVC_SUPPRESS_WARNING ( w)

Definition at line 151 of file doctest.h.

◆ DOCTEST_MSVC_SUPPRESS_WARNING_POP

#define DOCTEST_MSVC_SUPPRESS_WARNING_POP

Definition at line 152 of file doctest.h.

◆ DOCTEST_MSVC_SUPPRESS_WARNING_PUSH

#define DOCTEST_MSVC_SUPPRESS_WARNING_PUSH

Definition at line 150 of file doctest.h.

◆ DOCTEST_MSVC_SUPPRESS_WARNING_WITH_PUSH

#define DOCTEST_MSVC_SUPPRESS_WARNING_WITH_PUSH ( w)

Definition at line 153 of file doctest.h.

◆ DOCTEST_NO_SANITIZE_INTEGER

#define DOCTEST_NO_SANITIZE_INTEGER

Definition at line 399 of file doctest.h.

◆ DOCTEST_NOEXCEPT

#define DOCTEST_NOEXCEPT   noexcept

Definition at line 381 of file doctest.h.

◆ DOCTEST_NOINLINE

#define DOCTEST_NOINLINE   __attribute__((noinline))

Definition at line 358 of file doctest.h.

◆ DOCTEST_NORETURN

#define DOCTEST_NORETURN   [[noreturn]]

Definition at line 373 of file doctest.h.

◆ DOCTEST_PLATFORM_LINUX

#define DOCTEST_PLATFORM_LINUX

Definition at line 443 of file doctest.h.

◆ DOCTEST_REF_WRAP

#define DOCTEST_REF_WRAP ( x)    x&

Definition at line 428 of file doctest.h.

◆ DOCTEST_REGISTER_EXCEPTION_TRANSLATOR

#define DOCTEST_REGISTER_EXCEPTION_TRANSLATOR ( signature)
Value:
signature)
#define DOCTEST_REGISTER_EXCEPTION_TRANSLATOR_IMPL(translatorName, signature)
Definition doctest.h:2320

Definition at line 2326 of file doctest.h.

2326#define DOCTEST_REGISTER_EXCEPTION_TRANSLATOR(signature) \
2327 DOCTEST_REGISTER_EXCEPTION_TRANSLATOR_IMPL(DOCTEST_ANONYMOUS(DOCTEST_ANON_TRANSLATOR_), \
2328 signature)

◆ DOCTEST_REGISTER_EXCEPTION_TRANSLATOR_IMPL

#define DOCTEST_REGISTER_EXCEPTION_TRANSLATOR_IMPL ( translatorName,
signature )
Value:
inline doctest::String translatorName(signature); \
DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_TRANSLATOR_), /* NOLINT(cert-err58-cpp) */ \
doctest::String translatorName(signature)
int registerExceptionTranslator(String(*translateFunction)(T))
Definition doctest.h:1935

Definition at line 2320 of file doctest.h.

2320#define DOCTEST_REGISTER_EXCEPTION_TRANSLATOR_IMPL(translatorName, signature) \
2321 inline doctest::String translatorName(signature); \
2322 DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_TRANSLATOR_), /* NOLINT(cert-err58-cpp) */ \
2323 doctest::registerExceptionTranslator(translatorName)) \
2324 doctest::String translatorName(signature)

◆ DOCTEST_REGISTER_FUNCTION

#define DOCTEST_REGISTER_FUNCTION ( global_prefix,
f,
decorators )
Value:
global_prefix DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_VAR_), /* NOLINT */ \
f, __FILE__, __LINE__, \
decorators))
#define DOCTEST_GLOBAL_NO_WARNINGS(var,...)
Definition doctest.h:450
int regTest(const TestCase &tc)
doctest::detail::TestSuite & getCurrentTestSuite()

Definition at line 2160 of file doctest.h.

2160#define DOCTEST_REGISTER_FUNCTION(global_prefix, f, decorators) \
2161 global_prefix DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_VAR_), /* NOLINT */ \
2162 doctest::detail::regTest( \
2163 doctest::detail::TestCase( \
2164 f, __FILE__, __LINE__, \
2165 doctest_detail_test_suite_ns::getCurrentTestSuite()) * \
2166 decorators))

◆ DOCTEST_REGISTER_LISTENER

#define DOCTEST_REGISTER_LISTENER ( name,
priority,
reporter )
Value:
DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_REPORTER_), /* NOLINT(cert-err58-cpp) */ \
doctest::registerReporter<reporter>(name, priority, false)) \
static_assert(true, "")

Definition at line 2337 of file doctest.h.

2337#define DOCTEST_REGISTER_LISTENER(name, priority, reporter) \
2338 DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_REPORTER_), /* NOLINT(cert-err58-cpp) */ \
2339 doctest::registerReporter<reporter>(name, priority, false)) \
2340 static_assert(true, "")

◆ DOCTEST_REGISTER_REPORTER

#define DOCTEST_REGISTER_REPORTER ( name,
priority,
reporter )
Value:
DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_REPORTER_), /* NOLINT(cert-err58-cpp) */ \
doctest::registerReporter<reporter>(name, priority, true)) \
static_assert(true, "")

Definition at line 2331 of file doctest.h.

2331#define DOCTEST_REGISTER_REPORTER(name, priority, reporter) \
2332 DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_REPORTER_), /* NOLINT(cert-err58-cpp) */ \
2333 doctest::registerReporter<reporter>(name, priority, true)) \
2334 static_assert(true, "")

◆ DOCTEST_RELATIONAL_OP

#define DOCTEST_RELATIONAL_OP ( name,
op )
Value:
template <typename L, typename R> \
const DOCTEST_REF_WRAP(R) rhs) { \
return lhs op rhs; \
}
table::Key< std::string > name
Definition Amplifier.cc:116
#define DOCTEST_COMPARISON_RETURN_TYPE
Definition doctest.h:1455
#define DOCTEST_REF_WRAP(x)
Definition doctest.h:428

Definition at line 1467 of file doctest.h.

1467#define DOCTEST_RELATIONAL_OP(name, op) \
1468 template <typename L, typename R> \
1469 DOCTEST_COMPARISON_RETURN_TYPE name(const DOCTEST_REF_WRAP(L) lhs, \
1470 const DOCTEST_REF_WRAP(R) rhs) { \
1471 return lhs op rhs; \
1472 }

◆ DOCTEST_REQUIRE [1/2]

#define DOCTEST_REQUIRE ( ...)    DOCTEST_ASSERT_IMPLEMENT_1(DT_REQUIRE, __VA_ARGS__)

Definition at line 2441 of file doctest.h.

◆ DOCTEST_REQUIRE [2/2]

#define DOCTEST_REQUIRE   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2441 of file doctest.h.

◆ DOCTEST_REQUIRE_EQ [1/2]

#define DOCTEST_REQUIRE_EQ ( ...)    DOCTEST_BINARY_ASSERT(DT_REQUIRE_EQ, eq, __VA_ARGS__)

Definition at line 2457 of file doctest.h.

◆ DOCTEST_REQUIRE_EQ [2/2]

#define DOCTEST_REQUIRE_EQ   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2457 of file doctest.h.

◆ DOCTEST_REQUIRE_FALSE [1/2]

#define DOCTEST_REQUIRE_FALSE ( ...)    DOCTEST_ASSERT_IMPLEMENT_1(DT_REQUIRE_FALSE, __VA_ARGS__)

Definition at line 2444 of file doctest.h.

◆ DOCTEST_REQUIRE_FALSE [2/2]

#define DOCTEST_REQUIRE_FALSE   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2444 of file doctest.h.

◆ DOCTEST_REQUIRE_FALSE_MESSAGE [1/2]

#define DOCTEST_REQUIRE_FALSE_MESSAGE ( cond,
... )   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_REQUIRE_FALSE, cond); } DOCTEST_FUNC_SCOPE_END

Definition at line 2452 of file doctest.h.

◆ DOCTEST_REQUIRE_FALSE_MESSAGE [2/2]

#define DOCTEST_REQUIRE_FALSE_MESSAGE   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2452 of file doctest.h.

◆ DOCTEST_REQUIRE_GE [1/2]

#define DOCTEST_REQUIRE_GE ( ...)    DOCTEST_BINARY_ASSERT(DT_REQUIRE_GE, ge, __VA_ARGS__)

Definition at line 2469 of file doctest.h.

◆ DOCTEST_REQUIRE_GE [2/2]

#define DOCTEST_REQUIRE_GE   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2469 of file doctest.h.

◆ DOCTEST_REQUIRE_GT [1/2]

#define DOCTEST_REQUIRE_GT ( ...)    DOCTEST_BINARY_ASSERT(DT_REQUIRE_GT, gt, __VA_ARGS__)

Definition at line 2463 of file doctest.h.

◆ DOCTEST_REQUIRE_GT [2/2]

#define DOCTEST_REQUIRE_GT   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2463 of file doctest.h.

◆ DOCTEST_REQUIRE_LE [1/2]

#define DOCTEST_REQUIRE_LE ( ...)    DOCTEST_BINARY_ASSERT(DT_REQUIRE_LE, le, __VA_ARGS__)

Definition at line 2472 of file doctest.h.

◆ DOCTEST_REQUIRE_LE [2/2]

#define DOCTEST_REQUIRE_LE   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2472 of file doctest.h.

◆ DOCTEST_REQUIRE_LT [1/2]

#define DOCTEST_REQUIRE_LT ( ...)    DOCTEST_BINARY_ASSERT(DT_REQUIRE_LT, lt, __VA_ARGS__)

Definition at line 2466 of file doctest.h.

◆ DOCTEST_REQUIRE_LT [2/2]

#define DOCTEST_REQUIRE_LT   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2466 of file doctest.h.

◆ DOCTEST_REQUIRE_MESSAGE [1/2]

#define DOCTEST_REQUIRE_MESSAGE ( cond,
... )   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_REQUIRE, cond); } DOCTEST_FUNC_SCOPE_END

Definition at line 2449 of file doctest.h.

◆ DOCTEST_REQUIRE_MESSAGE [2/2]

#define DOCTEST_REQUIRE_MESSAGE   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2449 of file doctest.h.

◆ DOCTEST_REQUIRE_NE [1/2]

#define DOCTEST_REQUIRE_NE ( ...)    DOCTEST_BINARY_ASSERT(DT_REQUIRE_NE, ne, __VA_ARGS__)

Definition at line 2460 of file doctest.h.

◆ DOCTEST_REQUIRE_NE [2/2]

#define DOCTEST_REQUIRE_NE   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2460 of file doctest.h.

◆ DOCTEST_REQUIRE_NOTHROW

#define DOCTEST_REQUIRE_NOTHROW ( ...)    DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2868 of file doctest.h.

◆ DOCTEST_REQUIRE_NOTHROW_MESSAGE

#define DOCTEST_REQUIRE_NOTHROW_MESSAGE ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2884 of file doctest.h.

◆ DOCTEST_REQUIRE_THROWS

#define DOCTEST_REQUIRE_THROWS ( ...)    DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2856 of file doctest.h.

◆ DOCTEST_REQUIRE_THROWS_AS

#define DOCTEST_REQUIRE_THROWS_AS ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2859 of file doctest.h.

◆ DOCTEST_REQUIRE_THROWS_AS_MESSAGE

#define DOCTEST_REQUIRE_THROWS_AS_MESSAGE ( expr,
ex,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2875 of file doctest.h.

◆ DOCTEST_REQUIRE_THROWS_MESSAGE

#define DOCTEST_REQUIRE_THROWS_MESSAGE ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2872 of file doctest.h.

◆ DOCTEST_REQUIRE_THROWS_WITH

#define DOCTEST_REQUIRE_THROWS_WITH ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2862 of file doctest.h.

◆ DOCTEST_REQUIRE_THROWS_WITH_AS

#define DOCTEST_REQUIRE_THROWS_WITH_AS ( expr,
with,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2865 of file doctest.h.

◆ DOCTEST_REQUIRE_THROWS_WITH_AS_MESSAGE

#define DOCTEST_REQUIRE_THROWS_WITH_AS_MESSAGE ( expr,
with,
ex,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2881 of file doctest.h.

◆ DOCTEST_REQUIRE_THROWS_WITH_MESSAGE

#define DOCTEST_REQUIRE_THROWS_WITH_MESSAGE ( expr,
with,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2878 of file doctest.h.

◆ DOCTEST_REQUIRE_UNARY [1/2]

#define DOCTEST_REQUIRE_UNARY ( ...)    DOCTEST_UNARY_ASSERT(DT_REQUIRE_UNARY, __VA_ARGS__)

Definition at line 2476 of file doctest.h.

◆ DOCTEST_REQUIRE_UNARY [2/2]

#define DOCTEST_REQUIRE_UNARY   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2476 of file doctest.h.

◆ DOCTEST_REQUIRE_UNARY_FALSE [1/2]

#define DOCTEST_REQUIRE_UNARY_FALSE ( ...)    DOCTEST_UNARY_ASSERT(DT_REQUIRE_UNARY_FALSE, __VA_ARGS__)

Definition at line 2479 of file doctest.h.

◆ DOCTEST_REQUIRE_UNARY_FALSE [2/2]

#define DOCTEST_REQUIRE_UNARY_FALSE   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2479 of file doctest.h.

◆ DOCTEST_SCENARIO

#define DOCTEST_SCENARIO ( name)    DOCTEST_TEST_CASE(" Scenario: " name)

Definition at line 2921 of file doctest.h.

◆ DOCTEST_SCENARIO_CLASS

#define DOCTEST_SCENARIO_CLASS ( name)    DOCTEST_TEST_CASE_CLASS(" Scenario: " name)

Definition at line 2922 of file doctest.h.

◆ DOCTEST_SCENARIO_TEMPLATE

#define DOCTEST_SCENARIO_TEMPLATE ( name,
T,
... )   DOCTEST_TEST_CASE_TEMPLATE(" Scenario: " name, T, __VA_ARGS__)

Definition at line 2923 of file doctest.h.

◆ DOCTEST_SCENARIO_TEMPLATE_DEFINE

#define DOCTEST_SCENARIO_TEMPLATE_DEFINE ( name,
T,
id )   DOCTEST_TEST_CASE_TEMPLATE_DEFINE(" Scenario: " name, T, id)

Definition at line 2924 of file doctest.h.

◆ DOCTEST_SINGLE_HEADER

#define DOCTEST_SINGLE_HEADER

Definition at line 3088 of file doctest.h.

◆ DOCTEST_STRINGIFY

#define DOCTEST_STRINGIFY ( ...)    toString(__VA_ARGS__)

Definition at line 1088 of file doctest.h.

◆ DOCTEST_SUBCASE

#define DOCTEST_SUBCASE ( name)
Value:
if(const doctest::detail::Subcase & DOCTEST_ANONYMOUS(DOCTEST_ANON_SUBCASE_) DOCTEST_UNUSED = \
doctest::detail::Subcase(name, __FILE__, __LINE__))
#define DOCTEST_UNUSED
Definition doctest.h:359

Definition at line 2278 of file doctest.h.

2278#define DOCTEST_SUBCASE(name) \
2279 if(const doctest::detail::Subcase & DOCTEST_ANONYMOUS(DOCTEST_ANON_SUBCASE_) DOCTEST_UNUSED = \
2280 doctest::detail::Subcase(name, __FILE__, __LINE__))

◆ DOCTEST_SUPPRESS_COMMON_WARNINGS_POP

#define DOCTEST_SUPPRESS_COMMON_WARNINGS_POP
Value:
DOCTEST_CLANG_SUPPRESS_WARNING_POP \
DOCTEST_GCC_SUPPRESS_WARNING_POP \
DOCTEST_MSVC_SUPPRESS_WARNING_POP

Definition at line 209 of file doctest.h.

209#define DOCTEST_SUPPRESS_COMMON_WARNINGS_POP \
210 DOCTEST_CLANG_SUPPRESS_WARNING_POP \
211 DOCTEST_GCC_SUPPRESS_WARNING_POP \
212 DOCTEST_MSVC_SUPPRESS_WARNING_POP

◆ DOCTEST_SUPPRESS_COMMON_WARNINGS_PUSH

#define DOCTEST_SUPPRESS_COMMON_WARNINGS_PUSH

Definition at line 162 of file doctest.h.

162#define DOCTEST_SUPPRESS_COMMON_WARNINGS_PUSH \
163 DOCTEST_CLANG_SUPPRESS_WARNING_PUSH \
164 DOCTEST_CLANG_SUPPRESS_WARNING("-Wunknown-pragmas") \
165 DOCTEST_CLANG_SUPPRESS_WARNING("-Wweak-vtables") \
166 DOCTEST_CLANG_SUPPRESS_WARNING("-Wpadded") \
167 DOCTEST_CLANG_SUPPRESS_WARNING("-Wmissing-prototypes") \
168 DOCTEST_CLANG_SUPPRESS_WARNING("-Wc++98-compat") \
169 DOCTEST_CLANG_SUPPRESS_WARNING("-Wc++98-compat-pedantic") \
170 \
171 DOCTEST_GCC_SUPPRESS_WARNING_PUSH \
172 DOCTEST_GCC_SUPPRESS_WARNING("-Wunknown-pragmas") \
173 DOCTEST_GCC_SUPPRESS_WARNING("-Wpragmas") \
174 DOCTEST_GCC_SUPPRESS_WARNING("-Weffc++") \
175 DOCTEST_GCC_SUPPRESS_WARNING("-Wstrict-overflow") \
176 DOCTEST_GCC_SUPPRESS_WARNING("-Wstrict-aliasing") \
177 DOCTEST_GCC_SUPPRESS_WARNING("-Wmissing-declarations") \
178 DOCTEST_GCC_SUPPRESS_WARNING("-Wuseless-cast") \
179 DOCTEST_GCC_SUPPRESS_WARNING("-Wnoexcept") \
180 \
181 DOCTEST_MSVC_SUPPRESS_WARNING_PUSH \
182 /* these 4 also disabled globally via cmake: */ \
183 DOCTEST_MSVC_SUPPRESS_WARNING(4514) /* unreferenced inline function has been removed */ \
184 DOCTEST_MSVC_SUPPRESS_WARNING(4571) /* SEH related */ \
185 DOCTEST_MSVC_SUPPRESS_WARNING(4710) /* function not inlined */ \
186 DOCTEST_MSVC_SUPPRESS_WARNING(4711) /* function selected for inline expansion*/ \
187 /* common ones */ \
188 DOCTEST_MSVC_SUPPRESS_WARNING(4616) /* invalid compiler warning */ \
189 DOCTEST_MSVC_SUPPRESS_WARNING(4619) /* invalid compiler warning */ \
190 DOCTEST_MSVC_SUPPRESS_WARNING(4996) /* The compiler encountered a deprecated declaration */ \
191 DOCTEST_MSVC_SUPPRESS_WARNING(4706) /* assignment within conditional expression */ \
192 DOCTEST_MSVC_SUPPRESS_WARNING(4512) /* 'class' : assignment operator could not be generated */ \
193 DOCTEST_MSVC_SUPPRESS_WARNING(4127) /* conditional expression is constant */ \
194 DOCTEST_MSVC_SUPPRESS_WARNING(4820) /* padding */ \
195 DOCTEST_MSVC_SUPPRESS_WARNING(4625) /* copy constructor was implicitly deleted */ \
196 DOCTEST_MSVC_SUPPRESS_WARNING(4626) /* assignment operator was implicitly deleted */ \
197 DOCTEST_MSVC_SUPPRESS_WARNING(5027) /* move assignment operator implicitly deleted */ \
198 DOCTEST_MSVC_SUPPRESS_WARNING(5026) /* move constructor was implicitly deleted */ \
199 DOCTEST_MSVC_SUPPRESS_WARNING(4640) /* construction of local static object not thread-safe */ \
200 DOCTEST_MSVC_SUPPRESS_WARNING(5045) /* Spectre mitigation for memory load */ \
201 DOCTEST_MSVC_SUPPRESS_WARNING(5264) /* 'variable-name': 'const' variable is not used */ \
202 /* static analysis */ \
203 DOCTEST_MSVC_SUPPRESS_WARNING(26439) /* Function may not throw. Declare it 'noexcept' */ \
204 DOCTEST_MSVC_SUPPRESS_WARNING(26495) /* Always initialize a member variable */ \
205 DOCTEST_MSVC_SUPPRESS_WARNING(26451) /* Arithmetic overflow ... */ \
206 DOCTEST_MSVC_SUPPRESS_WARNING(26444) /* Avoid unnamed objects with custom ctor and dtor... */ \
207 DOCTEST_MSVC_SUPPRESS_WARNING(26812) /* Prefer 'enum class' over 'enum' */

◆ DOCTEST_SYMBOL_EXPORT

#define DOCTEST_SYMBOL_EXPORT   __attribute__((visibility("default")))

Definition at line 323 of file doctest.h.

◆ DOCTEST_SYMBOL_IMPORT

#define DOCTEST_SYMBOL_IMPORT

Definition at line 324 of file doctest.h.

◆ DOCTEST_TEST_CASE

#define DOCTEST_TEST_CASE ( decorators)     DOCTEST_CREATE_AND_REGISTER_FUNCTION(DOCTEST_ANONYMOUS(DOCTEST_ANON_FUNC_), decorators)

Definition at line 2193 of file doctest.h.

2193#define DOCTEST_TEST_CASE(decorators) \
2194 DOCTEST_CREATE_AND_REGISTER_FUNCTION(DOCTEST_ANONYMOUS(DOCTEST_ANON_FUNC_), decorators)

◆ DOCTEST_TEST_CASE_CLASS

#define DOCTEST_TEST_CASE_CLASS ( ...)     TEST_CASES_CAN_BE_REGISTERED_IN_CLASSES_ONLY_IN_CPP17_MODE_OR_WITH_VS_2017_OR_NEWER

Definition at line 2203 of file doctest.h.

2203#define DOCTEST_TEST_CASE_CLASS(...) \
2204 TEST_CASES_CAN_BE_REGISTERED_IN_CLASSES_ONLY_IN_CPP17_MODE_OR_WITH_VS_2017_OR_NEWER

◆ DOCTEST_TEST_CASE_FIXTURE

#define DOCTEST_TEST_CASE_FIXTURE ( c,
decorators )
Value:
DOCTEST_IMPLEMENT_FIXTURE(DOCTEST_ANONYMOUS(DOCTEST_ANON_CLASS_), c, \
DOCTEST_ANONYMOUS(DOCTEST_ANON_FUNC_), decorators)
#define DOCTEST_IMPLEMENT_FIXTURE(der, base, func, decorators)
Definition doctest.h:2168

Definition at line 2208 of file doctest.h.

2208#define DOCTEST_TEST_CASE_FIXTURE(c, decorators) \
2209 DOCTEST_IMPLEMENT_FIXTURE(DOCTEST_ANONYMOUS(DOCTEST_ANON_CLASS_), c, \
2210 DOCTEST_ANONYMOUS(DOCTEST_ANON_FUNC_), decorators)

◆ DOCTEST_TEST_CASE_TEMPLATE

#define DOCTEST_TEST_CASE_TEMPLATE ( dec,
T,
... )    DOCTEST_TEST_CASE_TEMPLATE_IMPL(dec, T, DOCTEST_ANONYMOUS(DOCTEST_ANON_TMP_), __VA_ARGS__)

Definition at line 2274 of file doctest.h.

2274#define DOCTEST_TEST_CASE_TEMPLATE(dec, T, ...) \
2275 DOCTEST_TEST_CASE_TEMPLATE_IMPL(dec, T, DOCTEST_ANONYMOUS(DOCTEST_ANON_TMP_), __VA_ARGS__)

◆ DOCTEST_TEST_CASE_TEMPLATE_APPLY

#define DOCTEST_TEST_CASE_TEMPLATE_APPLY ( id,
... )
Value:
DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL(id, DOCTEST_ANONYMOUS(DOCTEST_ANON_TMP_), __VA_ARGS__) \
static_assert(true, "")
#define DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL(id, anon,...)
Definition doctest.h:2255

Definition at line 2264 of file doctest.h.

2264#define DOCTEST_TEST_CASE_TEMPLATE_APPLY(id, ...) \
2265 DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL(id, DOCTEST_ANONYMOUS(DOCTEST_ANON_TMP_), __VA_ARGS__) \
2266 static_assert(true, "")

◆ DOCTEST_TEST_CASE_TEMPLATE_DEFINE

#define DOCTEST_TEST_CASE_TEMPLATE_DEFINE ( dec,
T,
id )
Value:
DOCTEST_ANONYMOUS(DOCTEST_ANON_TMP_))
double dec
Definition Match.cc:41
#define DOCTEST_TEST_CASE_TEMPLATE_DEFINE_IMPL(dec, T, iter, func)
Definition doctest.h:2224
#define DOCTEST_CAT(s1, s2)
Definition doctest.h:420

Definition at line 2251 of file doctest.h.

2251#define DOCTEST_TEST_CASE_TEMPLATE_DEFINE(dec, T, id) \
2252 DOCTEST_TEST_CASE_TEMPLATE_DEFINE_IMPL(dec, T, DOCTEST_CAT(id, ITERATOR), \
2253 DOCTEST_ANONYMOUS(DOCTEST_ANON_TMP_))

◆ DOCTEST_TEST_CASE_TEMPLATE_DEFINE_IMPL

#define DOCTEST_TEST_CASE_TEMPLATE_DEFINE_IMPL ( dec,
T,
iter,
func )
Value:
template <typename T> \
static void func(); \
namespace { /* NOLINT */ \
template <typename Tuple> \
struct iter; \
template <typename Type, typename... Rest> \
struct iter<std::tuple<Type, Rest...>> \
{ \
iter(const char* file, unsigned line, int index) { \
doctest::detail::regTest(doctest::detail::TestCase(func<Type>, file, line, \
doctest::toString<Type>(), \
int(line) * 1000 + index) \
* dec); \
iter<std::tuple<Rest...>>(file, line, index + 1); \
} \
}; \
template <> \
struct iter<std::tuple<>> \
{ \
iter(const char*, unsigned, int) {} \
}; \
} \
template <typename T> \
static void func()
STL namespace.

Definition at line 2224 of file doctest.h.

2224#define DOCTEST_TEST_CASE_TEMPLATE_DEFINE_IMPL(dec, T, iter, func) \
2225 template <typename T> \
2226 static void func(); \
2227 namespace { /* NOLINT */ \
2228 template <typename Tuple> \
2229 struct iter; \
2230 template <typename Type, typename... Rest> \
2231 struct iter<std::tuple<Type, Rest...>> \
2232 { \
2233 iter(const char* file, unsigned line, int index) { \
2234 doctest::detail::regTest(doctest::detail::TestCase(func<Type>, file, line, \
2235 doctest_detail_test_suite_ns::getCurrentTestSuite(), \
2236 doctest::toString<Type>(), \
2237 int(line) * 1000 + index) \
2238 * dec); \
2239 iter<std::tuple<Rest...>>(file, line, index + 1); \
2240 } \
2241 }; \
2242 template <> \
2243 struct iter<std::tuple<>> \
2244 { \
2245 iter(const char*, unsigned, int) {} \
2246 }; \
2247 } \
2248 template <typename T> \
2249 static void func()

◆ DOCTEST_TEST_CASE_TEMPLATE_IMPL

#define DOCTEST_TEST_CASE_TEMPLATE_IMPL ( dec,
T,
anon,
... )
Value:
DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL(anon, anon, std::tuple<__VA_ARGS__>) \
template <typename T> \
static void anon()

Definition at line 2268 of file doctest.h.

2268#define DOCTEST_TEST_CASE_TEMPLATE_IMPL(dec, T, anon, ...) \
2269 DOCTEST_TEST_CASE_TEMPLATE_DEFINE_IMPL(dec, T, DOCTEST_CAT(anon, ITERATOR), anon); \
2270 DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL(anon, anon, std::tuple<__VA_ARGS__>) \
2271 template <typename T> \
2272 static void anon()

◆ DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE

#define DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE ( id,
... )   DOCTEST_TEST_CASE_TEMPLATE_INVOKE(id,__VA_ARGS__)

Definition at line 2916 of file doctest.h.

◆ DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL

#define DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL ( id,
anon,
... )
Value:
DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_CAT(anon, DUMMY), /* NOLINT(cert-err58-cpp, fuchsia-statically-constructed-objects) */ \
DOCTEST_CAT(id, ITERATOR)<__VA_ARGS__>(__FILE__, __LINE__, 0)))
int instantiationHelper(const T &)
Definition doctest.h:1653

Definition at line 2255 of file doctest.h.

2255#define DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL(id, anon, ...) \
2256 DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_CAT(anon, DUMMY), /* NOLINT(cert-err58-cpp, fuchsia-statically-constructed-objects) */ \
2257 doctest::detail::instantiationHelper( \
2258 DOCTEST_CAT(id, ITERATOR)<__VA_ARGS__>(__FILE__, __LINE__, 0)))

◆ DOCTEST_TEST_CASE_TEMPLATE_INVOKE

#define DOCTEST_TEST_CASE_TEMPLATE_INVOKE ( id,
... )
Value:

Definition at line 2260 of file doctest.h.

2260#define DOCTEST_TEST_CASE_TEMPLATE_INVOKE(id, ...) \
2261 DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE_IMPL(id, DOCTEST_ANONYMOUS(DOCTEST_ANON_TMP_), std::tuple<__VA_ARGS__>) \
2262 static_assert(true, "")

◆ DOCTEST_TEST_SUITE

#define DOCTEST_TEST_SUITE ( decorators)     DOCTEST_TEST_SUITE_IMPL(decorators, DOCTEST_ANONYMOUS(DOCTEST_ANON_SUITE_))

Definition at line 2304 of file doctest.h.

2304#define DOCTEST_TEST_SUITE(decorators) \
2305 DOCTEST_TEST_SUITE_IMPL(decorators, DOCTEST_ANONYMOUS(DOCTEST_ANON_SUITE_))

◆ DOCTEST_TEST_SUITE_BEGIN

#define DOCTEST_TEST_SUITE_BEGIN ( decorators)
Value:
DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_VAR_), /* NOLINT(cert-err58-cpp) */ \
static_assert(true, "")
int setTestSuite(const TestSuite &ts)

Definition at line 2308 of file doctest.h.

2308#define DOCTEST_TEST_SUITE_BEGIN(decorators) \
2309 DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_VAR_), /* NOLINT(cert-err58-cpp) */ \
2310 doctest::detail::setTestSuite(doctest::detail::TestSuite() * decorators)) \
2311 static_assert(true, "")

◆ DOCTEST_TEST_SUITE_END

#define DOCTEST_TEST_SUITE_END
Value:
DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_VAR_), /* NOLINT(cert-err58-cpp) */ \
using DOCTEST_ANONYMOUS(DOCTEST_ANON_FOR_SEMICOLON_) = int

Definition at line 2314 of file doctest.h.

2314#define DOCTEST_TEST_SUITE_END \
2315 DOCTEST_GLOBAL_NO_WARNINGS(DOCTEST_ANONYMOUS(DOCTEST_ANON_VAR_), /* NOLINT(cert-err58-cpp) */ \
2316 doctest::detail::setTestSuite(doctest::detail::TestSuite() * "")) \
2317 using DOCTEST_ANONYMOUS(DOCTEST_ANON_FOR_SEMICOLON_) = int

◆ DOCTEST_TEST_SUITE_IMPL

#define DOCTEST_TEST_SUITE_IMPL ( decorators,
ns_name )
Value:
namespace ns_name { namespace doctest_detail_test_suite_ns { \
static DOCTEST_NOINLINE doctest::detail::TestSuite& getCurrentTestSuite() noexcept { \
DOCTEST_MSVC_SUPPRESS_WARNING_WITH_PUSH(4640) \
DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH("-Wexit-time-destructors") \
DOCTEST_GCC_SUPPRESS_WARNING_WITH_PUSH("-Wmissing-field-initializers") \
static bool inited = false; \
DOCTEST_MSVC_SUPPRESS_WARNING_POP \
DOCTEST_CLANG_SUPPRESS_WARNING_POP \
DOCTEST_GCC_SUPPRESS_WARNING_POP \
if(!inited) { \
data* decorators; \
inited = true; \
} \
return data; \
} \
} \
} \
namespace ns_name

Definition at line 2283 of file doctest.h.

2283#define DOCTEST_TEST_SUITE_IMPL(decorators, ns_name) \
2284 namespace ns_name { namespace doctest_detail_test_suite_ns { \
2285 static DOCTEST_NOINLINE doctest::detail::TestSuite& getCurrentTestSuite() noexcept { \
2286 DOCTEST_MSVC_SUPPRESS_WARNING_WITH_PUSH(4640) \
2287 DOCTEST_CLANG_SUPPRESS_WARNING_WITH_PUSH("-Wexit-time-destructors") \
2288 DOCTEST_GCC_SUPPRESS_WARNING_WITH_PUSH("-Wmissing-field-initializers") \
2289 static doctest::detail::TestSuite data{}; \
2290 static bool inited = false; \
2291 DOCTEST_MSVC_SUPPRESS_WARNING_POP \
2292 DOCTEST_CLANG_SUPPRESS_WARNING_POP \
2293 DOCTEST_GCC_SUPPRESS_WARNING_POP \
2294 if(!inited) { \
2295 data* decorators; \
2296 inited = true; \
2297 } \
2298 return data; \
2299 } \
2300 } \
2301 } \
2302 namespace ns_name

◆ DOCTEST_THEN

#define DOCTEST_THEN ( name)    DOCTEST_SUBCASE(" Then: " name)

Definition at line 2929 of file doctest.h.

◆ DOCTEST_TO_LVALUE

#define DOCTEST_TO_LVALUE ( ...)    __VA_ARGS__

Definition at line 2379 of file doctest.h.

◆ DOCTEST_TOSTR

#define DOCTEST_TOSTR ( x)    DOCTEST_TOSTR_IMPL(x)

Definition at line 55 of file doctest.h.

◆ DOCTEST_TOSTR_IMPL

#define DOCTEST_TOSTR_IMPL ( x)    #x

Definition at line 54 of file doctest.h.

◆ DOCTEST_TYPE_TO_STRING

#define DOCTEST_TYPE_TO_STRING ( ...)    DOCTEST_TYPE_TO_STRING_AS(#__VA_ARGS__, __VA_ARGS__)

Definition at line 2222 of file doctest.h.

◆ DOCTEST_TYPE_TO_STRING_AS

#define DOCTEST_TYPE_TO_STRING_AS ( str,
... )
Value:
namespace doctest { \
template <> \
inline String toString<__VA_ARGS__>() { \
return str; \
} \
} \
static_assert(true, "")

Definition at line 2213 of file doctest.h.

2213#define DOCTEST_TYPE_TO_STRING_AS(str, ...) \
2214 namespace doctest { \
2215 template <> \
2216 inline String toString<__VA_ARGS__>() { \
2217 return str; \
2218 } \
2219 } \
2220 static_assert(true, "")

◆ DOCTEST_UNARY_ASSERT

#define DOCTEST_UNARY_ASSERT ( assert_type,
... )
Value:
doctest::detail::ResultBuilder DOCTEST_RB(doctest::assertType::assert_type, __FILE__, \
__LINE__, #__VA_ARGS__); \
DOCTEST_WRAP_IN_TRY(DOCTEST_RB.unary_assert(__VA_ARGS__)) \
DOCTEST_ASSERT_LOG_REACT_RETURN(DOCTEST_RB); \

Definition at line 2409 of file doctest.h.

2409#define DOCTEST_UNARY_ASSERT(assert_type, ...) \
2410 DOCTEST_FUNC_SCOPE_BEGIN { \
2411 doctest::detail::ResultBuilder DOCTEST_RB(doctest::assertType::assert_type, __FILE__, \
2412 __LINE__, #__VA_ARGS__); \
2413 DOCTEST_WRAP_IN_TRY(DOCTEST_RB.unary_assert(__VA_ARGS__)) \
2414 DOCTEST_ASSERT_LOG_REACT_RETURN(DOCTEST_RB); \
2415 } DOCTEST_FUNC_SCOPE_END

◆ DOCTEST_UNUSED

#define DOCTEST_UNUSED   __attribute__((unused))

Definition at line 359 of file doctest.h.

◆ DOCTEST_VERSION

#define DOCTEST_VERSION    (DOCTEST_VERSION_MAJOR * 10000 + DOCTEST_VERSION_MINOR * 100 + DOCTEST_VERSION_PATCH)

Definition at line 62 of file doctest.h.

62#define DOCTEST_VERSION \
63 (DOCTEST_VERSION_MAJOR * 10000 + DOCTEST_VERSION_MINOR * 100 + DOCTEST_VERSION_PATCH)

◆ DOCTEST_VERSION_MAJOR

#define DOCTEST_VERSION_MAJOR   2

Definition at line 49 of file doctest.h.

◆ DOCTEST_VERSION_MINOR

#define DOCTEST_VERSION_MINOR   4

Definition at line 50 of file doctest.h.

◆ DOCTEST_VERSION_PATCH

#define DOCTEST_VERSION_PATCH   11

Definition at line 51 of file doctest.h.

◆ DOCTEST_VERSION_STR

#define DOCTEST_VERSION_STR
Value:
DOCTEST_TOSTR(DOCTEST_VERSION_MINOR) "." \
DOCTEST_TOSTR(DOCTEST_VERSION_PATCH)
#define DOCTEST_VERSION_PATCH
Definition doctest.h:51
#define DOCTEST_VERSION_MINOR
Definition doctest.h:50
#define DOCTEST_TOSTR(x)
Definition doctest.h:55
#define DOCTEST_VERSION_MAJOR
Definition doctest.h:49

Definition at line 57 of file doctest.h.

57#define DOCTEST_VERSION_STR \
58 DOCTEST_TOSTR(DOCTEST_VERSION_MAJOR) "." \
59 DOCTEST_TOSTR(DOCTEST_VERSION_MINOR) "." \
60 DOCTEST_TOSTR(DOCTEST_VERSION_PATCH)

◆ DOCTEST_WARN

#define DOCTEST_WARN ( ...)    DOCTEST_ASSERT_IMPLEMENT_1(DT_WARN, __VA_ARGS__)

Definition at line 2439 of file doctest.h.

◆ DOCTEST_WARN_EQ

#define DOCTEST_WARN_EQ ( ...)    DOCTEST_BINARY_ASSERT(DT_WARN_EQ, eq, __VA_ARGS__)

Definition at line 2455 of file doctest.h.

◆ DOCTEST_WARN_FALSE

#define DOCTEST_WARN_FALSE ( ...)    DOCTEST_ASSERT_IMPLEMENT_1(DT_WARN_FALSE, __VA_ARGS__)

Definition at line 2442 of file doctest.h.

◆ DOCTEST_WARN_FALSE_MESSAGE

#define DOCTEST_WARN_FALSE_MESSAGE ( cond,
... )   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_WARN_FALSE, cond); } DOCTEST_FUNC_SCOPE_END

Definition at line 2450 of file doctest.h.

◆ DOCTEST_WARN_GE

#define DOCTEST_WARN_GE ( ...)    DOCTEST_BINARY_ASSERT(DT_WARN_GE, ge, __VA_ARGS__)

Definition at line 2467 of file doctest.h.

◆ DOCTEST_WARN_GT

#define DOCTEST_WARN_GT ( ...)    DOCTEST_BINARY_ASSERT(DT_WARN_GT, gt, __VA_ARGS__)

Definition at line 2461 of file doctest.h.

◆ DOCTEST_WARN_LE

#define DOCTEST_WARN_LE ( ...)    DOCTEST_BINARY_ASSERT(DT_WARN_LE, le, __VA_ARGS__)

Definition at line 2470 of file doctest.h.

◆ DOCTEST_WARN_LT

#define DOCTEST_WARN_LT ( ...)    DOCTEST_BINARY_ASSERT(DT_WARN_LT, lt, __VA_ARGS__)

Definition at line 2464 of file doctest.h.

◆ DOCTEST_WARN_MESSAGE

#define DOCTEST_WARN_MESSAGE ( cond,
... )   DOCTEST_FUNC_SCOPE_BEGIN { DOCTEST_INFO(__VA_ARGS__); DOCTEST_ASSERT_IMPLEMENT_2(DT_WARN, cond); } DOCTEST_FUNC_SCOPE_END

Definition at line 2447 of file doctest.h.

◆ DOCTEST_WARN_NE

#define DOCTEST_WARN_NE ( ...)    DOCTEST_BINARY_ASSERT(DT_WARN_NE, ne, __VA_ARGS__)

Definition at line 2458 of file doctest.h.

◆ DOCTEST_WARN_NOTHROW

#define DOCTEST_WARN_NOTHROW ( ...)    DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2866 of file doctest.h.

◆ DOCTEST_WARN_NOTHROW_MESSAGE

#define DOCTEST_WARN_NOTHROW_MESSAGE ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2882 of file doctest.h.

◆ DOCTEST_WARN_THROWS

#define DOCTEST_WARN_THROWS ( ...)    DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2854 of file doctest.h.

◆ DOCTEST_WARN_THROWS_AS

#define DOCTEST_WARN_THROWS_AS ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2857 of file doctest.h.

◆ DOCTEST_WARN_THROWS_AS_MESSAGE

#define DOCTEST_WARN_THROWS_AS_MESSAGE ( expr,
ex,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2873 of file doctest.h.

◆ DOCTEST_WARN_THROWS_MESSAGE

#define DOCTEST_WARN_THROWS_MESSAGE ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2870 of file doctest.h.

◆ DOCTEST_WARN_THROWS_WITH

#define DOCTEST_WARN_THROWS_WITH ( expr,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2860 of file doctest.h.

◆ DOCTEST_WARN_THROWS_WITH_AS

#define DOCTEST_WARN_THROWS_WITH_AS ( expr,
with,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2863 of file doctest.h.

◆ DOCTEST_WARN_THROWS_WITH_AS_MESSAGE

#define DOCTEST_WARN_THROWS_WITH_AS_MESSAGE ( expr,
with,
ex,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2879 of file doctest.h.

◆ DOCTEST_WARN_THROWS_WITH_MESSAGE

#define DOCTEST_WARN_THROWS_WITH_MESSAGE ( expr,
with,
... )   DOCTEST_EXCEPTION_EMPTY_FUNC

Definition at line 2876 of file doctest.h.

◆ DOCTEST_WARN_UNARY

#define DOCTEST_WARN_UNARY ( ...)    DOCTEST_UNARY_ASSERT(DT_WARN_UNARY, __VA_ARGS__)

Definition at line 2474 of file doctest.h.

◆ DOCTEST_WARN_UNARY_FALSE

#define DOCTEST_WARN_UNARY_FALSE ( ...)    DOCTEST_UNARY_ASSERT(DT_WARN_UNARY_FALSE, __VA_ARGS__)

Definition at line 2477 of file doctest.h.

◆ DOCTEST_WHEN

#define DOCTEST_WHEN ( name)    DOCTEST_SUBCASE(" When: " name)

Definition at line 2927 of file doctest.h.

◆ DOCTEST_WRAP_IN_TRY

#define DOCTEST_WRAP_IN_TRY ( x)    x;

Definition at line 2142 of file doctest.h.

◆ FAIL

#define FAIL ( ...)    DOCTEST_FAIL(__VA_ARGS__)

Definition at line 2959 of file doctest.h.

◆ FAIL_CHECK

#define FAIL_CHECK ( ...)    DOCTEST_FAIL_CHECK(__VA_ARGS__)

Definition at line 2958 of file doctest.h.

◆ FAST_CHECK_EQ

#define FAST_CHECK_EQ ( ...)    DOCTEST_FAST_CHECK_EQ(__VA_ARGS__)

Definition at line 3043 of file doctest.h.

◆ FAST_CHECK_GE

#define FAST_CHECK_GE ( ...)    DOCTEST_FAST_CHECK_GE(__VA_ARGS__)

Definition at line 3055 of file doctest.h.

◆ FAST_CHECK_GT

#define FAST_CHECK_GT ( ...)    DOCTEST_FAST_CHECK_GT(__VA_ARGS__)

Definition at line 3049 of file doctest.h.

◆ FAST_CHECK_LE

#define FAST_CHECK_LE ( ...)    DOCTEST_FAST_CHECK_LE(__VA_ARGS__)

Definition at line 3058 of file doctest.h.

◆ FAST_CHECK_LT

#define FAST_CHECK_LT ( ...)    DOCTEST_FAST_CHECK_LT(__VA_ARGS__)

Definition at line 3052 of file doctest.h.

◆ FAST_CHECK_NE

#define FAST_CHECK_NE ( ...)    DOCTEST_FAST_CHECK_NE(__VA_ARGS__)

Definition at line 3046 of file doctest.h.

◆ FAST_CHECK_UNARY

#define FAST_CHECK_UNARY ( ...)    DOCTEST_FAST_CHECK_UNARY(__VA_ARGS__)

Definition at line 3062 of file doctest.h.

◆ FAST_CHECK_UNARY_FALSE

#define FAST_CHECK_UNARY_FALSE ( ...)    DOCTEST_FAST_CHECK_UNARY_FALSE(__VA_ARGS__)

Definition at line 3065 of file doctest.h.

◆ FAST_REQUIRE_EQ

#define FAST_REQUIRE_EQ ( ...)    DOCTEST_FAST_REQUIRE_EQ(__VA_ARGS__)

Definition at line 3044 of file doctest.h.

◆ FAST_REQUIRE_GE

#define FAST_REQUIRE_GE ( ...)    DOCTEST_FAST_REQUIRE_GE(__VA_ARGS__)

Definition at line 3056 of file doctest.h.

◆ FAST_REQUIRE_GT

#define FAST_REQUIRE_GT ( ...)    DOCTEST_FAST_REQUIRE_GT(__VA_ARGS__)

Definition at line 3050 of file doctest.h.

◆ FAST_REQUIRE_LE

#define FAST_REQUIRE_LE ( ...)    DOCTEST_FAST_REQUIRE_LE(__VA_ARGS__)

Definition at line 3059 of file doctest.h.

◆ FAST_REQUIRE_LT

#define FAST_REQUIRE_LT ( ...)    DOCTEST_FAST_REQUIRE_LT(__VA_ARGS__)

Definition at line 3053 of file doctest.h.

◆ FAST_REQUIRE_NE

#define FAST_REQUIRE_NE ( ...)    DOCTEST_FAST_REQUIRE_NE(__VA_ARGS__)

Definition at line 3047 of file doctest.h.

◆ FAST_REQUIRE_UNARY

#define FAST_REQUIRE_UNARY ( ...)    DOCTEST_FAST_REQUIRE_UNARY(__VA_ARGS__)

Definition at line 3063 of file doctest.h.

◆ FAST_REQUIRE_UNARY_FALSE

#define FAST_REQUIRE_UNARY_FALSE ( ...)    DOCTEST_FAST_REQUIRE_UNARY_FALSE(__VA_ARGS__)

Definition at line 3066 of file doctest.h.

◆ FAST_WARN_EQ

#define FAST_WARN_EQ ( ...)    DOCTEST_FAST_WARN_EQ(__VA_ARGS__)

Definition at line 3042 of file doctest.h.

◆ FAST_WARN_GE

#define FAST_WARN_GE ( ...)    DOCTEST_FAST_WARN_GE(__VA_ARGS__)

Definition at line 3054 of file doctest.h.

◆ FAST_WARN_GT

#define FAST_WARN_GT ( ...)    DOCTEST_FAST_WARN_GT(__VA_ARGS__)

Definition at line 3048 of file doctest.h.

◆ FAST_WARN_LE

#define FAST_WARN_LE ( ...)    DOCTEST_FAST_WARN_LE(__VA_ARGS__)

Definition at line 3057 of file doctest.h.

◆ FAST_WARN_LT

#define FAST_WARN_LT ( ...)    DOCTEST_FAST_WARN_LT(__VA_ARGS__)

Definition at line 3051 of file doctest.h.

◆ FAST_WARN_NE

#define FAST_WARN_NE ( ...)    DOCTEST_FAST_WARN_NE(__VA_ARGS__)

Definition at line 3045 of file doctest.h.

◆ FAST_WARN_UNARY

#define FAST_WARN_UNARY ( ...)    DOCTEST_FAST_WARN_UNARY(__VA_ARGS__)

Definition at line 3061 of file doctest.h.

◆ FAST_WARN_UNARY_FALSE

#define FAST_WARN_UNARY_FALSE ( ...)    DOCTEST_FAST_WARN_UNARY_FALSE(__VA_ARGS__)

Definition at line 3064 of file doctest.h.

◆ GIVEN

#define GIVEN ( name)    DOCTEST_GIVEN(name)

Definition at line 3010 of file doctest.h.

◆ INFO

#define INFO ( ...)    DOCTEST_INFO(__VA_ARGS__)

Definition at line 2952 of file doctest.h.

◆ MESSAGE

#define MESSAGE ( ...)    DOCTEST_MESSAGE(__VA_ARGS__)

Definition at line 2957 of file doctest.h.

◆ REGISTER_EXCEPTION_TRANSLATOR

#define REGISTER_EXCEPTION_TRANSLATOR ( signature)    DOCTEST_REGISTER_EXCEPTION_TRANSLATOR(signature)

Definition at line 2949 of file doctest.h.

◆ REGISTER_LISTENER

#define REGISTER_LISTENER ( name,
priority,
reporter )   DOCTEST_REGISTER_LISTENER(name, priority, reporter)

Definition at line 2951 of file doctest.h.

◆ REGISTER_REPORTER

#define REGISTER_REPORTER ( name,
priority,
reporter )   DOCTEST_REGISTER_REPORTER(name, priority, reporter)

Definition at line 2950 of file doctest.h.

◆ REQUIRE

#define REQUIRE ( ...)    DOCTEST_REQUIRE(__VA_ARGS__)

Definition at line 2976 of file doctest.h.

◆ REQUIRE_EQ

#define REQUIRE_EQ ( ...)    DOCTEST_REQUIRE_EQ(__VA_ARGS__)

Definition at line 3018 of file doctest.h.

◆ REQUIRE_FALSE

#define REQUIRE_FALSE ( ...)    DOCTEST_REQUIRE_FALSE(__VA_ARGS__)

Definition at line 2977 of file doctest.h.

◆ REQUIRE_FALSE_MESSAGE

#define REQUIRE_FALSE_MESSAGE ( cond,
... )   DOCTEST_REQUIRE_FALSE_MESSAGE(cond, __VA_ARGS__)

Definition at line 2999 of file doctest.h.

◆ REQUIRE_GE

#define REQUIRE_GE ( ...)    DOCTEST_REQUIRE_GE(__VA_ARGS__)

Definition at line 3030 of file doctest.h.

◆ REQUIRE_GT

#define REQUIRE_GT ( ...)    DOCTEST_REQUIRE_GT(__VA_ARGS__)

Definition at line 3024 of file doctest.h.

◆ REQUIRE_LE

#define REQUIRE_LE ( ...)    DOCTEST_REQUIRE_LE(__VA_ARGS__)

Definition at line 3033 of file doctest.h.

◆ REQUIRE_LT

#define REQUIRE_LT ( ...)    DOCTEST_REQUIRE_LT(__VA_ARGS__)

Definition at line 3027 of file doctest.h.

◆ REQUIRE_MESSAGE

#define REQUIRE_MESSAGE ( cond,
... )   DOCTEST_REQUIRE_MESSAGE(cond, __VA_ARGS__)

Definition at line 2998 of file doctest.h.

◆ REQUIRE_NE

#define REQUIRE_NE ( ...)    DOCTEST_REQUIRE_NE(__VA_ARGS__)

Definition at line 3021 of file doctest.h.

◆ REQUIRE_NOTHROW

#define REQUIRE_NOTHROW ( ...)    DOCTEST_REQUIRE_NOTHROW(__VA_ARGS__)

Definition at line 2982 of file doctest.h.

◆ REQUIRE_NOTHROW_MESSAGE

#define REQUIRE_NOTHROW_MESSAGE ( expr,
... )   DOCTEST_REQUIRE_NOTHROW_MESSAGE(expr, __VA_ARGS__)

Definition at line 3004 of file doctest.h.

◆ REQUIRE_THROWS

#define REQUIRE_THROWS ( ...)    DOCTEST_REQUIRE_THROWS(__VA_ARGS__)

Definition at line 2978 of file doctest.h.

◆ REQUIRE_THROWS_AS

#define REQUIRE_THROWS_AS ( expr,
... )   DOCTEST_REQUIRE_THROWS_AS(expr, __VA_ARGS__)

Definition at line 2979 of file doctest.h.

◆ REQUIRE_THROWS_AS_MESSAGE

#define REQUIRE_THROWS_AS_MESSAGE ( expr,
ex,
... )   DOCTEST_REQUIRE_THROWS_AS_MESSAGE(expr, ex, __VA_ARGS__)

Definition at line 3001 of file doctest.h.

◆ REQUIRE_THROWS_MESSAGE

#define REQUIRE_THROWS_MESSAGE ( expr,
... )   DOCTEST_REQUIRE_THROWS_MESSAGE(expr, __VA_ARGS__)

Definition at line 3000 of file doctest.h.

◆ REQUIRE_THROWS_WITH

#define REQUIRE_THROWS_WITH ( expr,
... )   DOCTEST_REQUIRE_THROWS_WITH(expr, __VA_ARGS__)

Definition at line 2980 of file doctest.h.

◆ REQUIRE_THROWS_WITH_AS

#define REQUIRE_THROWS_WITH_AS ( expr,
with,
... )   DOCTEST_REQUIRE_THROWS_WITH_AS(expr, with, __VA_ARGS__)

Definition at line 2981 of file doctest.h.

◆ REQUIRE_THROWS_WITH_AS_MESSAGE

#define REQUIRE_THROWS_WITH_AS_MESSAGE ( expr,
with,
ex,
... )   DOCTEST_REQUIRE_THROWS_WITH_AS_MESSAGE(expr, with, ex, __VA_ARGS__)

Definition at line 3003 of file doctest.h.

◆ REQUIRE_THROWS_WITH_MESSAGE

#define REQUIRE_THROWS_WITH_MESSAGE ( expr,
with,
... )   DOCTEST_REQUIRE_THROWS_WITH_MESSAGE(expr, with, __VA_ARGS__)

Definition at line 3002 of file doctest.h.

◆ REQUIRE_UNARY

#define REQUIRE_UNARY ( ...)    DOCTEST_REQUIRE_UNARY(__VA_ARGS__)

Definition at line 3036 of file doctest.h.

◆ REQUIRE_UNARY_FALSE

#define REQUIRE_UNARY_FALSE ( ...)    DOCTEST_REQUIRE_UNARY_FALSE(__VA_ARGS__)

Definition at line 3039 of file doctest.h.

◆ SCENARIO

#define SCENARIO ( name)    DOCTEST_SCENARIO(name)

Definition at line 3006 of file doctest.h.

◆ SCENARIO_CLASS

#define SCENARIO_CLASS ( name)    DOCTEST_SCENARIO_CLASS(name)

Definition at line 3007 of file doctest.h.

◆ SCENARIO_TEMPLATE

#define SCENARIO_TEMPLATE ( name,
T,
... )   DOCTEST_SCENARIO_TEMPLATE(name, T, __VA_ARGS__)

Definition at line 3008 of file doctest.h.

◆ SCENARIO_TEMPLATE_DEFINE

#define SCENARIO_TEMPLATE_DEFINE ( name,
T,
id )   DOCTEST_SCENARIO_TEMPLATE_DEFINE(name, T, id)

Definition at line 3009 of file doctest.h.

◆ SFINAE_OP

#define SFINAE_OP ( ret,
op )   decltype((void)(doctest::detail::declval<L>() op doctest::detail::declval<R>()),ret{})

Definition at line 1370 of file doctest.h.

◆ SUBCASE

#define SUBCASE ( name)    DOCTEST_SUBCASE(name)

Definition at line 2945 of file doctest.h.

◆ TEST_CASE

#define TEST_CASE ( name)    DOCTEST_TEST_CASE(name)

Definition at line 2936 of file doctest.h.

◆ TEST_CASE_CLASS

#define TEST_CASE_CLASS ( name)    DOCTEST_TEST_CASE_CLASS(name)

Definition at line 2937 of file doctest.h.

◆ TEST_CASE_FIXTURE

#define TEST_CASE_FIXTURE ( x,
name )   DOCTEST_TEST_CASE_FIXTURE(x, name)

Definition at line 2938 of file doctest.h.

◆ TEST_CASE_TEMPLATE

#define TEST_CASE_TEMPLATE ( name,
T,
... )   DOCTEST_TEST_CASE_TEMPLATE(name, T, __VA_ARGS__)

Definition at line 2941 of file doctest.h.

◆ TEST_CASE_TEMPLATE_APPLY

#define TEST_CASE_TEMPLATE_APPLY ( id,
... )   DOCTEST_TEST_CASE_TEMPLATE_APPLY(id, __VA_ARGS__)

Definition at line 2944 of file doctest.h.

◆ TEST_CASE_TEMPLATE_DEFINE

#define TEST_CASE_TEMPLATE_DEFINE ( name,
T,
id )   DOCTEST_TEST_CASE_TEMPLATE_DEFINE(name, T, id)

Definition at line 2942 of file doctest.h.

◆ TEST_CASE_TEMPLATE_INSTANTIATE

#define TEST_CASE_TEMPLATE_INSTANTIATE ( id,
... )   DOCTEST_TEST_CASE_TEMPLATE_INSTANTIATE(id, __VA_ARGS__)

Definition at line 3068 of file doctest.h.

◆ TEST_CASE_TEMPLATE_INVOKE

#define TEST_CASE_TEMPLATE_INVOKE ( id,
... )   DOCTEST_TEST_CASE_TEMPLATE_INVOKE(id, __VA_ARGS__)

Definition at line 2943 of file doctest.h.

◆ TEST_SUITE

#define TEST_SUITE ( decorators)    DOCTEST_TEST_SUITE(decorators)

Definition at line 2946 of file doctest.h.

◆ TEST_SUITE_BEGIN

#define TEST_SUITE_BEGIN ( name)    DOCTEST_TEST_SUITE_BEGIN(name)

Definition at line 2947 of file doctest.h.

◆ TEST_SUITE_END

#define TEST_SUITE_END   DOCTEST_TEST_SUITE_END

Definition at line 2948 of file doctest.h.

◆ THEN

#define THEN ( name)    DOCTEST_THEN(name)

Definition at line 3013 of file doctest.h.

◆ TO_LVALUE

#define TO_LVALUE ( ...)    DOCTEST_TO_LVALUE(__VA_ARGS__)

Definition at line 2960 of file doctest.h.

◆ TYPE_TO_STRING

#define TYPE_TO_STRING ( ...)    DOCTEST_TYPE_TO_STRING(__VA_ARGS__)

Definition at line 2940 of file doctest.h.

◆ TYPE_TO_STRING_AS

#define TYPE_TO_STRING_AS ( str,
... )   DOCTEST_TYPE_TO_STRING_AS(str, __VA_ARGS__)

Definition at line 2939 of file doctest.h.

◆ WARN

#define WARN ( ...)    DOCTEST_WARN(__VA_ARGS__)

Definition at line 2962 of file doctest.h.

◆ WARN_EQ

#define WARN_EQ ( ...)    DOCTEST_WARN_EQ(__VA_ARGS__)

Definition at line 3016 of file doctest.h.

◆ WARN_FALSE

#define WARN_FALSE ( ...)    DOCTEST_WARN_FALSE(__VA_ARGS__)

Definition at line 2963 of file doctest.h.

◆ WARN_FALSE_MESSAGE

#define WARN_FALSE_MESSAGE ( cond,
... )   DOCTEST_WARN_FALSE_MESSAGE(cond, __VA_ARGS__)

Definition at line 2985 of file doctest.h.

◆ WARN_GE

#define WARN_GE ( ...)    DOCTEST_WARN_GE(__VA_ARGS__)

Definition at line 3028 of file doctest.h.

◆ WARN_GT

#define WARN_GT ( ...)    DOCTEST_WARN_GT(__VA_ARGS__)

Definition at line 3022 of file doctest.h.

◆ WARN_LE

#define WARN_LE ( ...)    DOCTEST_WARN_LE(__VA_ARGS__)

Definition at line 3031 of file doctest.h.

◆ WARN_LT

#define WARN_LT ( ...)    DOCTEST_WARN_LT(__VA_ARGS__)

Definition at line 3025 of file doctest.h.

◆ WARN_MESSAGE

#define WARN_MESSAGE ( cond,
... )   DOCTEST_WARN_MESSAGE(cond, __VA_ARGS__)

Definition at line 2984 of file doctest.h.

◆ WARN_NE

#define WARN_NE ( ...)    DOCTEST_WARN_NE(__VA_ARGS__)

Definition at line 3019 of file doctest.h.

◆ WARN_NOTHROW

#define WARN_NOTHROW ( ...)    DOCTEST_WARN_NOTHROW(__VA_ARGS__)

Definition at line 2968 of file doctest.h.

◆ WARN_NOTHROW_MESSAGE

#define WARN_NOTHROW_MESSAGE ( expr,
... )   DOCTEST_WARN_NOTHROW_MESSAGE(expr, __VA_ARGS__)

Definition at line 2990 of file doctest.h.

◆ WARN_THROWS

#define WARN_THROWS ( ...)    DOCTEST_WARN_THROWS(__VA_ARGS__)

Definition at line 2964 of file doctest.h.

◆ WARN_THROWS_AS

#define WARN_THROWS_AS ( expr,
... )   DOCTEST_WARN_THROWS_AS(expr, __VA_ARGS__)

Definition at line 2965 of file doctest.h.

◆ WARN_THROWS_AS_MESSAGE

#define WARN_THROWS_AS_MESSAGE ( expr,
ex,
... )   DOCTEST_WARN_THROWS_AS_MESSAGE(expr, ex, __VA_ARGS__)

Definition at line 2987 of file doctest.h.

◆ WARN_THROWS_MESSAGE

#define WARN_THROWS_MESSAGE ( expr,
... )   DOCTEST_WARN_THROWS_MESSAGE(expr, __VA_ARGS__)

Definition at line 2986 of file doctest.h.

◆ WARN_THROWS_WITH

#define WARN_THROWS_WITH ( expr,
... )   DOCTEST_WARN_THROWS_WITH(expr, __VA_ARGS__)

Definition at line 2966 of file doctest.h.

◆ WARN_THROWS_WITH_AS

#define WARN_THROWS_WITH_AS ( expr,
with,
... )   DOCTEST_WARN_THROWS_WITH_AS(expr, with, __VA_ARGS__)

Definition at line 2967 of file doctest.h.

◆ WARN_THROWS_WITH_AS_MESSAGE

#define WARN_THROWS_WITH_AS_MESSAGE ( expr,
with,
ex,
... )   DOCTEST_WARN_THROWS_WITH_AS_MESSAGE(expr, with, ex, __VA_ARGS__)

Definition at line 2989 of file doctest.h.

◆ WARN_THROWS_WITH_MESSAGE

#define WARN_THROWS_WITH_MESSAGE ( expr,
with,
... )   DOCTEST_WARN_THROWS_WITH_MESSAGE(expr, with, __VA_ARGS__)

Definition at line 2988 of file doctest.h.

◆ WARN_UNARY

#define WARN_UNARY ( ...)    DOCTEST_WARN_UNARY(__VA_ARGS__)

Definition at line 3034 of file doctest.h.

◆ WARN_UNARY_FALSE

#define WARN_UNARY_FALSE ( ...)    DOCTEST_WARN_UNARY_FALSE(__VA_ARGS__)

Definition at line 3037 of file doctest.h.

◆ WHEN

#define WHEN ( name)    DOCTEST_WHEN(name)

Definition at line 3011 of file doctest.h.

Typedef Documentation

◆ DOCTEST_ANON_FOR_SEMICOLON___LINE__

Definition at line 3075 of file doctest.h.