Loading...
Searching...
No Matches
Catch Namespace Reference

## Namespaces

namespace | Benchmark
namespace | Clara
namespace | Detail
namespace | Generators
namespace | literals
namespace | Matchers
namespace | TestCaseTracking
namespace | TextFlow

## Classes

struct | always_false
class | Approx
class | AssertionHandler
struct | AssertionInfo
struct | AssertionReaction
class | AssertionResult
struct | AssertionResultData
struct | AutoReg
struct | BenchmarkInfo
struct | BenchmarkStats
class | BinaryExpr
struct | capture_by_value
class | Capturer
struct | ColumnInfo
class | Config
struct | ConfigData
class | Context
struct | Counts
struct | Decomposer
class | ExceptionTranslatorRegistrar
class | ExprLhs
class | GeneratorException
class | IConfig
class | IExceptionTranslator
class | IExceptionTranslatorRegistry
class | IGeneratorTracker
class | IMutableEnumValuesRegistry
class | IMutableRegistryHub
class | IRegistryHub
class | IResultCapture
struct | is_callable
struct | is_callable< Fun(Args...)>
struct | is_callable_tester
struct | is_range
class | ITestInvoker
class | ITransientExpression
class | LazyExpression
struct | MessageBuilder
struct | MessageInfo
struct | MessageStream
struct | NameAndTags
class | Optional
struct | ProcessedReporterSpec
struct | ratio_string
struct | ratio_string< std::atto >
struct | ratio_string< std::femto >
struct | ratio_string< std::micro >
struct | ratio_string< std::milli >
struct | ratio_string< std::nano >
struct | ratio_string< std::pico >
struct | RegistrarForTagAliases
class | ReporterSpec
struct | ResultDisposition
struct | ResultWas
class | ReusableStringStream
class | ScopedMessage
class | Section
struct | SectionEndInfo
struct | SectionInfo
class | Session
struct | SignalDefs
class | SimplePcg32
struct | SourceLineInfo
struct | StreamEndStop
struct | StringMaker
struct | StringMaker< bool >
struct | StringMaker< Catch::Approx >
struct | StringMaker< char * >
struct | StringMaker< char >
struct | StringMaker< char const * >
struct | StringMaker< char[SZ]>
struct | StringMaker< double >
struct | StringMaker< float >
struct | StringMaker< int >
struct | StringMaker< long >
struct | StringMaker< long long >
struct | StringMaker< R C::* >
struct | StringMaker< R, std::enable_if_t< is_range< R >::value &&!::Catch::Detail::IsStreamInsertable< R >::value > >
struct | StringMaker< signed char >
struct | StringMaker< signed char[SZ]>
struct | StringMaker< std::chrono::duration< Value, Ratio > >
struct | StringMaker< std::chrono::duration< Value, std::ratio< 1 > > >
struct | StringMaker< std::chrono::duration< Value, std::ratio< 3600 > > >
struct | StringMaker< std::chrono::duration< Value, std::ratio< 60 > > >
struct | StringMaker< std::chrono::time_point< Clock, Duration > >
struct | StringMaker< std::chrono::time_point< std::chrono::system_clock, Duration > >
struct | StringMaker< std::nullptr_t >
struct | StringMaker< std::string >
struct | StringMaker< std::wstring >
struct | StringMaker< T * >
struct | StringMaker< T[SZ]>
struct | StringMaker< unsigned char >
struct | StringMaker< unsigned char[SZ]>
struct | StringMaker< unsigned int >
struct | StringMaker< unsigned long >
struct | StringMaker< unsigned long long >
struct | StringMaker< wchar_t * >
struct | StringMaker< wchar_t const * >
class | StringRef
struct | StringStreams
class | TablePrinter
struct | Tag
struct | TagAlias
class | TestCaseHandle
struct | TestCaseInfo
struct | TestFailureException
| Used to signal that an assertion macro failed. More...
class | TestInvokerAsMethod
class | TestInvokerFixture
struct | TestSkipException
| Used to signal that the remainder of a test should be skipped. More...
class | TestSpec
class | Timer
struct | Totals
struct | true_given
class | UnaryExpr
struct | Version
struct | WaitForKeypress
struct | WarnAbout
class | WildcardPattern

## Typedefs

using | RegistryHubSingleton = Singleton<RegistryHub, IRegistryHub, IMutableRegistryHub>
using | IReporterFactoryPtr = Detail::unique_ptr<IReporterFactory>
template<typename Func, typename... U>
using | FunctionReturnType = std::remove_reference_t<std::remove_cv_t<std::result_of_t<Func(U...)>>>
using | exceptionTranslateFunction = std::string(*)()
using | ExceptionTranslators = std::vector<Detail::unique_ptr<IExceptionTranslator const>>

## Enumerations

enum class | Justification : uint8_t { Left , Right }
enum class | Verbosity { Quiet = 0 , Normal , High }
enum class | ShowDurations { DefaultForReporter , Always , Never }
enum class | TestRunOrder { Declared , LexicographicallySorted , Randomized }
enum class | ColourMode : std::uint8_t { PlatformDefault , ANSI , Win32 , None }
enum class | CaseSensitive { Yes , No }
enum class | GenerateFrom { Time , RandomDevice , Default }
enum class | TestCaseProperties : uint8_t { None = 0 , IsHidden = 1 << 1 , ShouldFail = 1 << 2 , MayFail = 1 << 3 , Throws = 1 << 4 , NonPortable = 1 << 5 , Benchmark = 1 << 6 }

## Functions

bool | operator== (ProcessedReporterSpec const &lhs, ProcessedReporterSpec const &rhs)
std::uint32_t | getSeed ()
| Returns Catch2's current RNG seed.
IRegistryHub const & | getRegistryHub ()
IMutableRegistryHub & | getMutableRegistryHub ()
void | cleanUp ()
std::string | translateActiveException ()
bool | operator< (Tag const &lhs, Tag const &rhs)
bool | operator== (Tag const &lhs, Tag const &rhs)
Detail::unique_ptr< TestCaseInfo > | makeTestCaseInfo (StringRef _className, NameAndTags const &nameAndTags, SourceLineInfo const &_lineInfo)
bool | operator< (TestCaseInfo const &lhs, TestCaseInfo const &rhs)
std::ostream & | operator<< (std::ostream &os, Version const &version)
Version const & | libraryVersion ()
void | handleExceptionMatchExpr (AssertionHandler &handler, std::string const &str)
Clara::Parser | makeCommandLineParser (ConfigData &config)
Detail::unique_ptr< ColourImpl > | makeColourImpl (ColourMode colourSelection, IStream *stream)
bool | isColourImplAvailable (ColourMode colourSelection)
void | cleanUpContext ()
Context & | getCurrentMutableContext ()
SimplePcg32 & | sharedRng ()
void | writeToDebugConsole (std::string const &text)
bool | isDebuggerActive ()
void | formatReconstructedExpression (std::ostream &os, std::string const &lhs, StringRef op, std::string const &rhs)
void | throw_exception (std::exception const &e)
void | throw_logic_error (std::string const &msg)
void | throw_domain_error (std::string const &msg)
void | throw_runtime_error (std::string const &msg)
static void | restorePreviousSignalHandlers () noexcept
static void | handleSignal (int sig)
auto | makeStream (std::string const &filename) -> Detail::unique_ptr< IStream >
auto | operator<< (std::ostream &os, LazyExpression const &lazyExpr) -> std::ostream &
bool | list (IEventListener &reporter, Config const &config)
bool | isRedirectAvailable (OutputRedirect::Kind kind)
Detail::unique_ptr< OutputRedirect > | makeOutputRedirect (bool actual)
RedirectGuard | scopedActivate (OutputRedirect &redirectImpl)
RedirectGuard | scopedDeactivate (OutputRedirect &redirectImpl)
Optional< unsigned int > | parseUInt (std::string const &input, int base)
bool | isnan (float f)
bool | isnan (double d)
float | nextafter (float x, float y)
double | nextafter (double x, double y)
bool | operator== (SimplePcg32 const &lhs, SimplePcg32 const &rhs)
bool | operator!= (SimplePcg32 const &lhs, SimplePcg32 const &rhs)
std::uint32_t | generateRandomSeed (GenerateFrom from)
bool | operator== (ReporterSpec const &lhs, ReporterSpec const &rhs)
Optional< ReporterSpec > | parseReporterSpec (StringRef reporterSpec)
IResultCapture & | getResultCapture ()
void | seedRng (IConfig const &config)
unsigned int | rngSeed ()
void | addSingleton (ISingleton *singleton)
void | cleanupSingletons ()
std::ostream & | operator<< (std::ostream &os, SourceLineInfo const &info)
std::ostream & | cout ()
std::ostream & | cerr ()
std::ostream & | clog ()
bool | startsWith (std::string const &s, std::string const &prefix)
bool | startsWith (StringRef s, char prefix)
bool | endsWith (std::string const &s, std::string const &suffix)
bool | endsWith (std::string const &s, char suffix)
bool | contains (std::string const &s, std::string const &infix)
void | toLowerInPlace (std::string &s)
std::string | toLower (std::string const &s)
char | toLower (char c)
std::string | trim (std::string const &str)
StringRef | trim (StringRef ref)
bool | replaceInPlace (std::string &str, std::string const &replaceThis, std::string const &withThis)
std::vector< StringRef > | splitStringRef (StringRef str, char delimiter)
std::ostream & | operator<< (std::ostream &os, pluralise const &pluraliser)
auto | operator<< (std::ostream &os, StringRef str) -> std::ostream &
std::string | operator+ (StringRef lhs, StringRef rhs)
auto | operator+= (std::string &lhs, StringRef rhs) -> std::string &
std::vector< TestCaseHandle > | sortTests (IConfig const &config, std::vector< TestCaseHandle > const &unsortedTestCases)
bool | isThrowSafe (TestCaseHandle const &testCase, IConfig const &config)
std::vector< TestCaseHandle > | filterTests (std::vector< TestCaseHandle > const &testCases, TestSpec const &testSpec, IConfig const &config)
std::vector< TestCaseHandle > const & | getAllTestCasesSorted (IConfig const &config)
void | throw_test_failure_exception ()
void | throw_test_skip_exception ()
Detail::unique_ptr< ITestInvoker > | makeTestInvoker (void(*testAsFunction)())
bool | uncaught_exceptions ()
std::ostream & | operator<< (std::ostream &os, XmlEncode const &xmlEncode)
void | handleExceptionMatchExpr (AssertionHandler &handler, StringMatcher const &matcher)
std::string | getFormattedDuration (double duration)
bool | shouldShowDuration (IConfig const &config, double duration)
std::string | serializeFilters (std::vector< std::string > const &filters)
std::ostream & | operator<< (std::ostream &out, lineOfChars value)
void | defaultListReporters (std::ostream &out, std::vector< ReporterDescription > const &descriptions, Verbosity verbosity)
void | defaultListListeners (std::ostream &out, std::vector< ListenerDescription > const &descriptions)
void | defaultListTags (std::ostream &out, std::vector< TagInfo > const &tags, bool isFiltered)
void | defaultListTests (std::ostream &out, ColourImpl *streamColour, std::vector< TestCaseHandle > const &tests, bool isFiltered, Verbosity verbosity)
void | printTestRunTotals (std::ostream &stream, ColourImpl &streamColour, Totals const &totals)
static void | writeCounts (JsonObjectWriter &&writer, Counts const &counts)
Context const & | getCurrentContext ()
constexpr auto | operator""_sr (char const *rawChars, std::size_t size) noexcept -> StringRef
constexpr bool | isOk (ResultWas::OfType resultType)
constexpr bool | isJustInfo (int flags)
constexpr ResultDisposition::Flags | operator| (ResultDisposition::Flags lhs, ResultDisposition::Flags rhs)
constexpr bool | isFalseTest (int flags)
constexpr bool | shouldSuppressFailure (int flags)
template<typename Range>
std::string | rangeToString (Range const &range)
template<typename Allocator>
std::string | rangeToString (std::vector< bool, Allocator > const &v)
template<typename C>
Detail::unique_ptr< ITestInvoker > | makeTestInvoker (void(C::*testAsMethod)())
template<typename C>
Detail::unique_ptr< ITestInvoker > | makeTestInvokerFixture (void(C::*testAsMethod)() const)

## Variables

int | StringMaker< float >::precision = std::numeric_limits<float>::max_digits10
int | StringMaker< double >::precision = std::numeric_limits<double>::max_digits10
static SignalDefs | signalDefs []
static char * | altStackMem = nullptr
static std::size_t | altStackSize = 0
static stack_t | oldSigStack {}
static struct sigaction | oldSigActions [sizeof(signalDefs)/sizeof(SignalDefs)] {}
CATCH_INTERNAL_START_WARNINGS_SUPPRESSION static CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS LeakDetector | leakDetector

## Typedef Documentation

## exceptionTranslateFunction

using Catch::exceptionTranslateFunction = std::string(*)()

## ExceptionTranslators

using Catch::ExceptionTranslators = std::vector<Detail::unique_ptr<IExceptionTranslator const>>

## FunctionReturnType

template<typename Func, typename... U>

using Catch::FunctionReturnType = std::remove_reference_t<std::remove_cv_t<std::result_of_t<Func(U...)>>>

## IReporterFactoryPtr

using Catch::IReporterFactoryPtr = Detail::unique_ptr<IReporterFactory>

## RegistryHubSingleton

using Catch::RegistryHubSingleton = Singleton<RegistryHub, IRegistryHub, IMutableRegistryHub>

## Enumeration Type Documentation

## CaseSensitive

enum class Catch::CaseSensitive

strong

Enumerator
Yes |
No |

## ColourMode

enum class Catch::ColourMode : std::uint8_t

strong

Enumerator
PlatformDefault | Let Catch2 pick implementation based on platform detection.
ANSI | Use ANSI colour code escapes.
Win32 | Use Win32 console colour API.
None | Don't use any colour.

## GenerateFrom

enum class Catch::GenerateFrom

strong

Enumerator
Time |
RandomDevice |
Default | Currently equivalent to RandomDevice, but can change at any point.

## Justification

enum class Catch::Justification : uint8_t

strong

Enumerator
Left |
Right |

## ShowDurations

enum class Catch::ShowDurations

strong

Enumerator
DefaultForReporter |
Always |
Never |

## TestCaseProperties

enum class Catch::TestCaseProperties : uint8_t

strong

Enumerator
None |
IsHidden |
ShouldFail |
MayFail |
Throws |
NonPortable |
Benchmark |

## TestRunOrder

enum class Catch::TestRunOrder

strong

Enumerator
Declared |
LexicographicallySorted |
Randomized |

## Verbosity

enum class Catch::Verbosity

strong

Enumerator
Quiet |
Normal |
High |

## Function Documentation

## addSingleton()

void Catch::addSingleton | ( | ISingleton * | singleton | ) |

## cerr()

std::ostream & Catch::cerr | ( |  | ) |

Here is the caller graph for this function:

## cleanUp()

void Catch::cleanUp | ( |  | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## cleanUpContext()

void Catch::cleanUpContext | ( |  | ) |

Here is the caller graph for this function:

## cleanupSingletons()

void Catch::cleanupSingletons | ( |  | ) |

Here is the caller graph for this function:

## clog()

std::ostream & Catch::clog | ( |  | ) |

## contains()

bool Catch::contains | ( | std::string const & | s,
|  | std::string const & | infix )

Here is the caller graph for this function:

## cout()

std::ostream & Catch::cout | ( |  | ) |

Here is the caller graph for this function:

## defaultListListeners()

void Catch::defaultListListeners | ( | std::ostream & | out,
|  | std::vector< ListenerDescription > const & | descriptions )

## defaultListReporters()

void Catch::defaultListReporters | ( | std::ostream & | out,
|  | std::vector< ReporterDescription > const & | descriptions,
|  | Verbosity | verbosity )

## defaultListTags()

void Catch::defaultListTags | ( | std::ostream & | out,
|  | std::vector< TagInfo > const & | tags,
|  | bool | isFiltered )

Here is the call graph for this function:

## defaultListTests()

void Catch::defaultListTests | ( | std::ostream & | out,
|  | ColourImpl * | streamColour,
|  | std::vector< TestCaseHandle > const & | tests,
|  | bool | isFiltered,
|  | Verbosity | verbosity )

Here is the call graph for this function:

## endsWith() [1/2]

bool Catch::endsWith | ( | std::string const & | s,
|  | char | suffix )

## endsWith() [2/2]

bool Catch::endsWith | ( | std::string const & | s,
|  | std::string const & | suffix )

Here is the call graph for this function:
Here is the caller graph for this function:

## filterTests()

std::vector< TestCaseHandle > Catch::filterTests | ( | std::vector< TestCaseHandle > const & | testCases,
|  | TestSpec const & | testSpec,
|  | IConfig const & | config )

Here is the call graph for this function:
Here is the caller graph for this function:

## formatReconstructedExpression()

void Catch::formatReconstructedExpression | ( | std::ostream & | os,
|  | std::string const & | lhs,
|  | StringRef | op,
|  | std::string const & | rhs )

Here is the caller graph for this function:

## generateRandomSeed()

std::uint32_t Catch::generateRandomSeed | ( | GenerateFrom | from | ) |

Here is the caller graph for this function:

## getAllTestCasesSorted()

std::vector< TestCaseHandle > const & Catch::getAllTestCasesSorted | ( | IConfig const & | config | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## getCurrentContext()

Context const & Catch::getCurrentContext | ( |  | ) |

inline

Here is the caller graph for this function:

## getCurrentMutableContext()

Context & Catch::getCurrentMutableContext | ( |  | ) |

Here is the caller graph for this function:

## getFormattedDuration()

std::string Catch::getFormattedDuration | ( | double | duration | ) |

## getMutableRegistryHub()

IMutableRegistryHub & Catch::getMutableRegistryHub | ( |  | ) |

Here is the caller graph for this function:

## getRegistryHub()

IRegistryHub const & Catch::getRegistryHub | ( |  | ) |

Here is the caller graph for this function:

## getResultCapture()

IResultCapture & Catch::getResultCapture | ( |  | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## getSeed()

std::uint32_t Catch::getSeed | ( |  | ) |

Returns Catch2's current RNG seed.

Here is the call graph for this function:

## handleExceptionMatchExpr() [1/2]

void Catch::handleExceptionMatchExpr | ( | AssertionHandler & | handler,
|  | std::string const & | str )

Here is the call graph for this function:
Here is the caller graph for this function:

## handleExceptionMatchExpr() [2/2]

void Catch::handleExceptionMatchExpr | ( | AssertionHandler & | handler,
|  | StringMatcher const & | matcher )

Here is the call graph for this function:

## handleSignal()

static void Catch::handleSignal | ( | int | sig | ) |

static

Here is the call graph for this function:

## isColourImplAvailable()

bool Catch::isColourImplAvailable | ( | ColourMode | colourSelection | ) |

Here is the caller graph for this function:

## isDebuggerActive()

bool Catch::isDebuggerActive | ( |  | ) |

## isFalseTest()

bool Catch::isFalseTest | ( | int | flags | ) |

constexpr

Here is the caller graph for this function:

## isJustInfo()

bool Catch::isJustInfo | ( | int | flags | ) |

constexpr

## isnan() [1/2]

bool Catch::isnan | ( | double | d | ) |

## isnan() [2/2]

bool Catch::isnan | ( | float | f | ) |

## isOk()

bool Catch::isOk | ( | ResultWas::OfType | resultType | ) |

constexpr

Here is the caller graph for this function:

## isRedirectAvailable()

bool Catch::isRedirectAvailable | ( | OutputRedirect::Kind | kind | ) |

## isThrowSafe()

bool Catch::isThrowSafe | ( | TestCaseHandle const & | testCase,
|  | IConfig const & | config )

Here is the call graph for this function:
Here is the caller graph for this function:

## libraryVersion()

Version const & Catch::libraryVersion | ( |  | ) |

Here is the caller graph for this function:

## list()

bool Catch::list | ( | IEventListener & | reporter,
|  | Config const & | config )

Here is the call graph for this function:
Here is the caller graph for this function:

## makeColourImpl()

Detail::unique_ptr< ColourImpl > Catch::makeColourImpl | ( | ColourMode | colourSelection,
|  | IStream * | stream )

Here is the call graph for this function:
Here is the caller graph for this function:

## makeCommandLineParser()

Clara::Parser Catch::makeCommandLineParser | ( | ConfigData & | config | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## makeOutputRedirect()

Detail::unique_ptr< OutputRedirect > Catch::makeOutputRedirect | ( | bool | actual | ) |

Here is the call graph for this function:

## makeStream()

auto Catch::makeStream | ( | std::string const & | filename | ) | -> Detail::unique_ptr<IStream>

Here is the call graph for this function:
Here is the caller graph for this function:

## makeTestCaseInfo()

Detail::unique_ptr< TestCaseInfo > Catch::makeTestCaseInfo | ( | StringRef | _className,
|  | NameAndTags const & | nameAndTags,
|  | SourceLineInfo const & | _lineInfo )

Here is the call graph for this function:
Here is the caller graph for this function:

## makeTestInvoker() [1/2]

Detail::unique_ptr< ITestInvoker > Catch::makeTestInvoker | ( | void(* | testAsFunction )() | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## makeTestInvoker() [2/2]

template<typename C>

Detail::unique_ptr< ITestInvoker > Catch::makeTestInvoker | ( | void(C::* | testAsMethod )() | ) |

Here is the call graph for this function:

## makeTestInvokerFixture()

template<typename C>

Detail::unique_ptr< ITestInvoker > Catch::makeTestInvokerFixture | ( | void(C::* | testAsMethod )() const | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## nextafter() [1/2]

double Catch::nextafter | ( | double | x,
|  | double | y )

## nextafter() [2/2]

float Catch::nextafter | ( | float | x,
|  | float | y )

## operator!=()

bool Catch::operator!= | ( | SimplePcg32 const & | lhs,
|  | SimplePcg32 const & | rhs )

## operator""_sr()

auto Catch::operator""_sr | ( | char const * | rawChars,
|  | std::size_t | size ) -> StringRef

constexprnoexcept

## operator+()

std::string Catch::operator+ | ( | StringRef | lhs,
|  | StringRef | rhs )

## operator+=()

auto Catch::operator+= | ( | std::string & | lhs,
|  | StringRef | rhs ) -> std::string&

## operator<() [1/2]

bool Catch::operator< | ( | Tag const & | lhs,
|  | Tag const & | rhs )

## operator<() [2/2]

bool Catch::operator< | ( | TestCaseInfo const & | lhs,
|  | TestCaseInfo const & | rhs )

## operator<<() [1/7]

auto Catch::operator<< | ( | std::ostream & | os,
|  | LazyExpression const & | lazyExpr ) -> std::ostream&

## operator<<() [2/7]

std::ostream & Catch::operator<< | ( | std::ostream & | os,
|  | pluralise const & | pluraliser )

## operator<<() [3/7]

std::ostream & Catch::operator<< | ( | std::ostream & | os,
|  | SourceLineInfo const & | info )

## operator<<() [4/7]

auto Catch::operator<< | ( | std::ostream & | os,
|  | StringRef | str ) -> std::ostream&

## operator<<() [5/7]

std::ostream & Catch::operator<< | ( | std::ostream & | os,
|  | Version const & | version )

## operator<<() [6/7]

std::ostream & Catch::operator<< | ( | std::ostream & | os,
|  | XmlEncode const & | xmlEncode )

## operator<<() [7/7]

std::ostream & Catch::operator<< | ( | std::ostream & | out,
|  | lineOfChars | value )

## operator==() [1/4]

bool Catch::operator== | ( | ProcessedReporterSpec const & | lhs,
|  | ProcessedReporterSpec const & | rhs )

## operator==() [2/4]

bool Catch::operator== | ( | ReporterSpec const & | lhs,
|  | ReporterSpec const & | rhs )

## operator==() [3/4]

bool Catch::operator== | ( | SimplePcg32 const & | lhs,
|  | SimplePcg32 const & | rhs )

## operator==() [4/4]

bool Catch::operator== | ( | Tag const & | lhs,
|  | Tag const & | rhs )

## operator|()

ResultDisposition::Flags Catch::operator| | ( | ResultDisposition::Flags | lhs,
|  | ResultDisposition::Flags | rhs )

constexpr

## parseReporterSpec()

Optional< ReporterSpec > Catch::parseReporterSpec | ( | StringRef | reporterSpec | ) |

Parses provided reporter spec string into

Returns empty optional on errors, e.g.

- field that is not first and not a key+value pair
- duplicated keys in kv pair
- unknown catch reporter option
- empty key/value in an custom kv pair
- ...

Here is the call graph for this function:
Here is the caller graph for this function:

## parseUInt()

Optional< unsigned int > Catch::parseUInt | ( | std::string const & | input,
|  | int | base )

Here is the call graph for this function:
Here is the caller graph for this function:

## printTestRunTotals()

void Catch::printTestRunTotals | ( | std::ostream & | stream,
|  | ColourImpl & | streamColour,
|  | Totals const & | totals )

Here is the call graph for this function:

## rangeToString() [1/2]

template<typename Range>

std::string Catch::rangeToString | ( | Range const & | range | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## rangeToString() [2/2]

template<typename Allocator>

std::string Catch::rangeToString | ( | std::vector< bool, Allocator > const & | v | ) |

Here is the call graph for this function:

## replaceInPlace()

bool Catch::replaceInPlace | ( | std::string & | str,
|  | std::string const & | replaceThis,
|  | std::string const & | withThis )

## restorePreviousSignalHandlers()

static void Catch::restorePreviousSignalHandlers | ( |  | ) |

staticnoexcept

Here is the caller graph for this function:

## rngSeed()

unsigned int Catch::rngSeed | ( |  | ) |

Here is the call graph for this function:

## scopedActivate()

RedirectGuard Catch::scopedActivate | ( | OutputRedirect & | redirectImpl | ) |

## scopedDeactivate()

RedirectGuard Catch::scopedDeactivate | ( | OutputRedirect & | redirectImpl | ) |

## seedRng()

void Catch::seedRng | ( | IConfig const & | config | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## serializeFilters()

std::string Catch::serializeFilters | ( | std::vector< std::string > const & | filters | ) |

## sharedRng()

SimplePcg32 & Catch::sharedRng | ( |  | ) |

Here is the caller graph for this function:

## shouldShowDuration()

bool Catch::shouldShowDuration | ( | IConfig const & | config,
|  | double | duration )

Here is the call graph for this function:

## shouldSuppressFailure()

bool Catch::shouldSuppressFailure | ( | int | flags | ) |

constexpr

Here is the caller graph for this function:

## sortTests()

std::vector< TestCaseHandle > Catch::sortTests | ( | IConfig const & | config,
|  | std::vector< TestCaseHandle > const & | unsortedTestCases )

Here is the call graph for this function:

## splitStringRef()

std::vector< StringRef > Catch::splitStringRef | ( | StringRef | str,
|  | char | delimiter )

Here is the call graph for this function:
Here is the caller graph for this function:

## startsWith() [1/2]

bool Catch::startsWith | ( | std::string const & | s,
|  | std::string const & | prefix )

Here is the caller graph for this function:

## startsWith() [2/2]

bool Catch::startsWith | ( | StringRef | s,
|  | char | prefix )

Here is the call graph for this function:

## throw_domain_error()

void Catch::throw_domain_error | ( | std::string const & | msg | ) |

Here is the call graph for this function:

## throw_exception()

void Catch::throw_exception | ( | std::exception const & | e | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## throw_logic_error()

void Catch::throw_logic_error | ( | std::string const & | msg | ) |

Here is the call graph for this function:

## throw_runtime_error()

void Catch::throw_runtime_error | ( | std::string const & | msg | ) |

Here is the call graph for this function:

## throw_test_failure_exception()

void Catch::throw_test_failure_exception | ( |  | ) |

Outlines throwing of `TestFailureException` into a single TU

Also handles `CATCH_CONFIG_DISABLE_EXCEPTIONS` for callers.

Here is the caller graph for this function:

## throw_test_skip_exception()

void Catch::throw_test_skip_exception | ( |  | ) |

Outlines throwing of `TestSkipException` into a single TU

Also handles `CATCH_CONFIG_DISABLE_EXCEPTIONS` for callers.

Here is the caller graph for this function:

## toLower() [1/2]

char Catch::toLower | ( | char | c | ) |

## toLower() [2/2]

std::string Catch::toLower | ( | std::string const & | s | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## toLowerInPlace()

void Catch::toLowerInPlace | ( | std::string & | s | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## translateActiveException()

std::string Catch::translateActiveException | ( |  | ) |

Here is the call graph for this function:
Here is the caller graph for this function:

## trim() [1/2]

std::string Catch::trim | ( | std::string const & | str | ) |

Here is the caller graph for this function:

## trim() [2/2]

StringRef Catch::trim | ( | StringRef | ref | ) |

Here is the call graph for this function:

## uncaught_exceptions()

bool Catch::uncaught_exceptions | ( |  | ) |

Here is the caller graph for this function:

## writeCounts()

static void Catch::writeCounts | ( | JsonObjectWriter && | writer,
|  | Counts const & | counts )

static

Here is the call graph for this function:
Here is the caller graph for this function:

## writeToDebugConsole()

void Catch::writeToDebugConsole | ( | std::string const & | text | ) |

Here is the call graph for this function:

## Variable Documentation

## altStackMem

char* Catch::altStackMem = nullptr

static

## altStackSize

std::size_t Catch::altStackSize = 0

static

## leakDetector

CATCH_INTERNAL_START_WARNINGS_SUPPRESSION static CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS LeakDetector Catch::leakDetector

static

## oldSigActions

struct sigaction Catch::oldSigActions[sizeof(signalDefs)/sizeof(SignalDefs)] {}

static

## oldSigStack

stack_t Catch::oldSigStack {}

static

## signalDefs

SignalDefs Catch::signalDefs[]

static

Initial value:
= {
{ SIGINT, "SIGINT - Terminal interrupt signal" },
{ SIGILL, "SIGILL - Illegal instruction signal" },
{ SIGFPE, "SIGFPE - Floating point error signal" },
{ SIGSEGV, "SIGSEGV - Segmentation violation signal" },
{ SIGTERM, "SIGTERM - Termination request signal" },
{ SIGABRT, "SIGABRT - Abort (abnormal termination) signal" }
}

## StringMaker< double >::precision

int Catch::StringMaker< double >::precision = std::numeric_limits<double>::max_digits10

## StringMaker< float >::precision

int Catch::StringMaker< float >::precision = std::numeric_limits<float>::max_digits10