Martin Hořeňovský
1967feac49
Introduce stubs for throwing specific exception types
...
This allows us to move <stdexcept> out of the common path, and replace
it with just <exception>. The difference between these two headers is
~13k lines after preprocessing on libstdc++ (16k vs 3k) and ~17k lines
for MS's STL(33k vs 16k).
Note that this is only beneficial if no other stdlib header we use
includes <stdexcept>. AFAIK this is true for the newest MS's STL,
but I have no idea of the applicability for libstdc++ and libc++.
2019-06-14 19:13:50 +02:00
Martin Hořeňovský
f0b7b0ca11
Add a FUNDING file
2019-06-07 19:15:35 +02:00
Martin Hořeňovský
4b1252547c
Merge pull request #1616 from fodinabor/integrate_nonius
...
Integrate nonius to provide more advanced benchmarking
2019-06-07 07:01:47 +02:00
Martin Hořeňovský
10067a47da
Add an extra test for benchmarking macros
...
Also updated baselines
2019-06-06 21:29:25 +02:00
Martin Hořeňovský
e340ab8db6
Various improvements to the benchmarking support
...
* Units from <ratio> are no longer redeclared in our own namespace
* The default clock is `steady_clock`, not `high_resolution_clock`,
because, as HH says "high_resolution_clock is useless. If you want
measure the passing of time, use steady_clock. If you want user
friendly time, use system_clock".
* Benchmarking support is opt-in, not opt-out, to avoid the large
(~10%) compile time penalty.
* Benchmarking-related options in CLI are always present, to decrease
the amount of code that is only compiled conditionally and making
the whole shebang more maintainble.
2019-06-06 21:28:56 +02:00
Joachim Meyer
ce2560ca95
Integrate Nonius benchmark into Catch2
...
Changes done to Nonius:
* Moved things into "Catch::Benchmark" namespace
* Benchmarks were integrated with `TEST_CASE`/`SECTION`/`GENERATE` macros
* Removed Nonius's parameters for benchmarks, Generators should be used instead
* Added relevant methods to the reporter interface (default-implemented, to avoid
breaking existing 3rd party reporters)
* Async processing is guarded with `_REENTRANT` macro for GCC/Clang, used by default
on MSVC
* Added a macro `CATCH_CONFIG_DISABLE_BENCHMARKING` that removes all traces of
benchmarking from Catch
2019-06-06 19:33:37 +02:00
Martin Hořeňovský
00347f1e79
v2.8.0
2019-05-26 22:47:00 +02:00
Martin Hořeňovský
a5a2d08fbb
Remove commented out code
2019-05-26 21:19:55 +02:00
Martin Hořeňovský
97602b248b
Remove obsolete file with wrong advice
2019-05-25 21:20:37 +02:00
Martin Hořeňovský
e28e162795
Merge pull request #1638 from janisozaur/patch-1
...
Prevent building in source dir
2019-05-25 21:15:58 +02:00
Martin Hořeňovský
90378f4a59
Have conan test-build the package in a separate subdirectory
2019-05-25 19:58:49 +02:00
Jozef Grajciar
84f8e806b8
Nttp support tests approvals
2019-05-23 21:03:47 +02:00
Jozef Grajciar
732e4b06db
docs for signature based parametrised test cases
2019-05-23 21:03:47 +02:00
Jozef Grajciar
0c43f98fa2
Nttp support
...
Closes #1531
2019-05-23 21:03:47 +02:00
Martin Hořeňovský
bd703dd74b
Merge pull request #1611 from cincodenada/unscoped-disabled-prefixed
...
Add UNSCOPED_INFO to prefix/disabled sections
2019-05-23 14:19:22 +02:00
Martin Hořeňovský
99602787cd
Fix error message when unmatched quotes are encountered by CAPTURE
...
Thanks to @ledvinap for noticing
2019-05-23 13:54:51 +02:00
Michał Janiszewski
bfb4ee1597
Prevent building in source dir
...
Fixes #1636
2019-05-21 06:38:06 +02:00
Phil Nash
31537c43d9
Rebased approvals
2019-05-21 00:05:39 +01:00
Phil Nash
96355da34e
StringRef no longer repoints m_start to m_data after c_str() on a substring.
...
This fixes an issue where a self-assignment of a StringRef copy would point into internally (and now dangling) data.
(now self-assignment check is no longer needed)
2019-05-21 00:04:44 +01:00
Phil Nash
71fce429af
Fix clang warning on self-assignment
2019-05-21 00:04:44 +01:00
Jozef Grajciar
d13e094598
Remove unique type check
...
Closes #1628
2019-05-20 21:13:05 +02:00
Phil Nash
d30f1dda02
Rebased approvals
2019-05-18 20:53:28 +01:00
Phil Nash
3bce8ba14b
Fix StringRef self-assignment after substring
...
Thanks to Alex Tkachenko for spotting it.
2019-05-18 17:54:39 +01:00
Jozef Grajciar
e680c4b9fb
fix SEGFAULT during construction of Session
...
coloured output tried to write startup exceptions
to stream which was not initialized
2019-05-15 20:14:25 +02:00
mlimber
f1e14a1168
Add missing word
2019-05-09 22:40:59 +02:00
Martin Hořeňovský
92ad9ee355
Merge pull request #1614 from mlimber/master
...
Allow custom precision in error reports for floating-point numbers
2019-05-03 17:46:03 +02:00
Martin Hořeňovský
e2862a8d71
Add documentation for custom precision in float stringification
2019-05-03 15:40:21 +02:00
Martin Hořeňovský
1161011dd0
Refactor custom precision in floating point stringification
...
Also fixup tests.
2019-05-03 15:38:06 +02:00
mlimber
53a83e855e
Add support for custom precision in floating point stringification
...
Closes #1612
2019-05-02 21:34:47 +02:00
Petr Ledvina
9c741fe960
Allow quotes in CAPTURE arguments ( #1608 )
...
* Allow quotes in CAPTURE arguments
Fix CAPTURE to handle string and character literals properly
2019-05-01 19:12:44 +02:00
Phil nash
979bbf03bb
Removed another redundant ; (from docs)
2019-04-27 18:52:38 +01:00
Phil nash
33ce3f3953
added cpp to another code block in docs
2019-04-27 18:51:26 +01:00
Phil nash
87a9424c9d
Removed redundant ;
2019-04-27 18:50:05 +01:00
Phil nash
00cb0035c9
Enclosed generated StringMaker for enums in Catch namespace, rather than qualified
2019-04-26 18:24:52 +01:00
Phil nash
6267b06089
Added #include for <memory> (for unique_ptr)
2019-04-26 17:06:44 +01:00
Phil nash
9837c35df1
Rebased approvals for stringified enum tests
2019-04-26 11:30:19 +01:00
Phil nash
46066ede17
Merge branch enum stringification work
2019-04-26 11:26:45 +01:00
Phil nash
6981783178
Added some missing #includes
2019-04-25 14:19:00 +01:00
Phil nash
08c8df1e3b
include StringRef, rather than fwd decl, for splitString
2019-04-25 10:32:55 +01:00
Phil nash
daeb5a87e6
Removed global qualification of specialisation
2019-04-25 10:23:58 +01:00
Phil nash
f2ee4f17ad
Moved enum tests that depend on internals to IntrospectiveTests.
...
- also factored out makeEnumInfo, so tests don't need to touch registry
- and added usage test that involves namespace
2019-04-25 10:13:11 +01:00
Wu Yuanshou
182fc3e46e
fix example's mistake in slow-compiles.md
...
the example lack the generation of factorial.o file which lead to an undefined reference error.
2019-04-25 09:48:22 +02:00
Joel Bradshaw
6b5b72651d
Add UNSCOPED_INFO to prefix/disabled sections
2019-04-24 12:56:39 -07:00
Joel Bradshaw
f45bb00351
Add failing test for CATCH_UNSCOPED_CAPTURE
...
Actually fails to compile, which is good
2019-04-24 12:55:11 -07:00
Martin Hořeňovský
7c37501b07
v2.7.2
2019-04-22 23:15:59 +02:00
Martin Hostettler
4a1ca1ab55
TrackerContext: Remove misleading instance static method.
...
TrackerContext is not used as singleton, so just remove this misleading
method
2019-04-22 16:37:22 +02:00
Phil Nash
e02d9e788f
Document CATCH_REGISTER_ENUM
2019-04-21 20:32:20 +03:00
Phil Nash
541f1ed1b3
Only provide CATCH_REGISTER_ENUM
...
No longer have version without the CATCH_ prefix
2019-04-21 20:26:46 +03:00
Phil Nash
346723c9b6
Renamed STRINGIFY_ENUM to REGISTER_ENUM
2019-04-21 20:15:26 +03:00
Phil Nash
5a74fcc9c9
Removed IEnumInfo (just use EnumInfo directly)
2019-04-21 20:09:58 +03:00