Martin Hořeňovský
302e2c0b06
Do not copy around TestCaseInfo
...
Now a `TEST_CASE` macro should create a single TestCaseInfo and then
it should never be copied around. This, together with latter changes,
should significantly decrease the number of allocations made before
`main` is even entered.
2019-11-14 10:52:34 +01:00
Phil nash
43428c6093
First commit of STRINGIFY_ENUM
2019-04-04 15:55:46 +01:00
Phil Nash
5884ec1e28
Moved registry hub to generic singleton
2018-08-19 11:13:19 +02:00
Martin Hořeňovský
446bad752f
Move std::exception_ptr out of interfaces
2017-07-27 12:24:52 +02:00
Phil Nash
e01ed48a70
Made everything used in test case registration noexcept
...
- this prevents warnings about startup-time exceptions
2017-07-13 08:25:47 +01:00
Martin Hořeňovský
da0edcbe25
Collect startup exceptions instead of throwing them
...
Previously, some errors in Catch configuration would cause exceptions to
be thrown before main was even entered. This leads to call to
`std::terminate`, which is not a particularly nice way of ending the
binary.
Now these exceptions are registered with a global collector and used
once Catch enters main. They can also be optionally ignored, if user
supplies his own main and opts not to check them (or ignored them
intentionally).
Closes #921
2017-06-04 21:39:27 +02:00
Phil Nash
8ccbf63f28
Removed Ptr, Shared and SharedImpl
2017-04-25 21:56:14 +01:00
Phil Nash
dd78824697
Migrated IReporterFactory to std::shared_ptr
2017-04-25 21:56:14 +01:00
Phil Nash
4ec8d53e91
Tag Alias registry is part of registry hub instead of it’s own singleton
...
- should now be cleaned up properly
2017-03-15 09:45:37 +00:00
Phil Nash
afcc38efc5
Fixes for single include
2015-08-07 17:28:48 +01:00
Phil Nash
368714e7aa
Added Listeners (programatically provided extra reporters)
2015-08-07 08:20:56 +01:00
Phil Nash
c4a089c12b
Refactored a lot of code from headers into impl headers only compiled into one TU
...
- also added noimpl option to single header script - which only generates the non impl code
2013-12-03 18:52:41 +00:00
Phil Nash
2a9d8d9e36
Changed "const X ref"s to "X const ref"s
...
- Brought older code up to current convention (with the help of a Python script)
2013-04-23 18:58:56 +01:00
Phil Nash
06a671a349
Renamed TestCaseInfo -> TestCase
2012-11-22 19:17:20 +00:00
Phil Nash
c96f9330a0
Collect assertion info up front
2012-10-17 08:14:22 +01:00
Phil Nash
9c6ce97f01
Made ITestCase a shared object
2012-08-14 08:38:22 +01:00
Phil Nash
a695eb9006
Builds almost completely cleanly with -WEverything in LLVM
2012-08-13 07:46:10 +01:00
Phil Nash
3b80af7a06
Recreated the single include test project and got it working after impl refactorings
2012-08-09 07:47:30 +01:00
Phil Nash
da0ae952fc
Renamed static registries -> registry hub
2012-08-07 07:58:34 +01:00