Martin Hořeňovský
4fe2432e05
Rework of REQUIRE* changes in CATCH_CONFIG_FAST_COMPILE
...
`ResultBuilder`s destructor now checks for exceptions, preventing false
negatives. The speedup should remain the same give or take a tiny bit.
2017-03-29 21:12:06 +02:00
Martin Hořeňovský
c3a41e26a7
Suppress -Wexit-time-destructors in Catch code
...
This is another warning that follows test macros, making it painful to
suppress without leaking outside. Luckily clang's `_Pragma`
implementation works.
Should fix #308
2017-03-29 20:30:59 +02:00
Phil Nash
4838039b65
Merge pull request #869 from mloskot/patch-1
...
Add nanodbc library to Catch users
2017-03-27 07:43:27 +01:00
Mateusz Łoskot
2a221b8fcd
Add nanodbc library to Catch users
2017-03-26 21:26:08 +02:00
Rian Quinn
79ce6930a2
remove redundant "/"
...
This "/" is not needed as CMake adds this automatically
2017-03-23 21:18:07 +01:00
Martin Hořeňovský
d762a7ca6c
Expanded documentation about THROWS_AS assertions
2017-03-23 21:16:52 +01:00
Martin Hořeňovský
f23b6b8b85
Don't sanitize exception type in REQUIRE_THROWS_AS
...
Effectively a revert of previous commit, fixing #542 , where this was
added to stop linters complaining about `REQUIRE_THROWS_AS` used like
`REQUIRE_THROWS_AS(expr, std::exception);`, which would be slicing the
caught exception. Now it is user's responsibility to pass us proper
exception type.
Closes #833 which wanted to add `typename`, so that the construct works
in a template, but that would not work with MSVC and older GCC's, as
having `typename` outside of a template is allowed only from C++11
onward.
2017-03-23 21:11:21 +01:00
Martin Hořeňovský
4597b43912
Throw instead of calling exit in RegistrarForTagAliases constructor
...
Caries a problem vis-a-vis Windows, just like previous commit, but that
can be fixed later on.
Closes #866
2017-03-22 18:40:07 +01:00
Martin Hořeňovský
f64d914bff
Throw instead of calling exit in enforceNotReservedTag
...
Closes #865
2017-03-22 17:53:22 +01:00
Martin Hořeňovský
d07999ddff
Version struct now uses char* for holding branch name
...
Since the info is constant, and the only use is to write it out during
runtime, there is no need for `std::string`.
2017-03-22 17:45:36 +01:00
Kevin Ushey
e04dc5105b
use inline 'libraryVersion()' function ( closes #858 )
2017-03-22 15:51:02 +01:00
Phil Nash
cffb031ce1
Added polymorphic_value to OSS users
2017-03-22 10:33:52 +00:00
Phil Nash
f3ec843ba6
Changed all internal forwarding macro usages to put macro name as first argument
...
(and ‘expression’, if any, last)
This is a first step towards allowing expression arguments to become variadic
2017-03-21 13:23:35 +00:00
Martin Hořeňovský
55ed17f97b
Removed stray define
2017-03-20 10:53:32 +01:00
Martin Hořeňovský
6a502cc2f5
Renamed licence file, license should now be detected by github
2017-03-20 08:59:25 +01:00
Martin Hořeňovský
6a009fabcb
Documented REQUIRE under CATCH_CONFIG_FAST_COMPILE
2017-03-17 17:02:39 +01:00
Martin Hořeňovský
7a8a0205b4
CATCH_CONFIG_FAST_COMPILE now disables trys in REQUIRE*
...
This seems to give about 15% speedup when compiling tests using GCC.
The tradeoff is that under certain circumstances, there is a chance for
false negative result, when the expression under test throws exception
and the test code catches it before it gets to the test runner.
Example:
``` cpp
TEST_CASE("False negative") {
try {
REQUIRE(throws() == "");
} catch (...) {}
}
```
This test case will succeed, reporting no assertions checked, instead of
failing as it would with `CATCH_CONFIG_FAST_COMPILE` disabled. However,
just removing the try-catch block inside client's code will fix this, so
it is worthwhile.
This change does not apply to CHECK* macros, because these are currently
specified as continuing on exception and thus need the local try-catch
to work as intended.
2017-03-17 13:21:40 +01:00
Mickey Rose
4dc06bdb70
Use bulk vector::insert rather than back_inserter
2017-03-15 15:19:38 +00:00
Phil Nash
08b597b3e2
Merge pull request #856 from lightmare/script-exec-perm
...
Set execute permission on runnable python scripts
2017-03-15 11:44:40 +00:00
Mickey Rose
46d166406d
Set execute permission on runnable python scripts
2017-03-15 12:24:18 +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
e7984e3711
Reorganised the readme/ ref docs TOC and added link to reporters docs
2017-03-15 09:08:20 +00:00
Phil Nash
90d89377ea
Added docs on reporters
2017-03-15 09:07:23 +00:00
Phil Nash
0692317bc5
Added Obj-C bindings fix to release notes
2017-03-15 09:04:09 +00:00
Martin Hořeňovský
95fc8d62a2
Fixed up old documentation links in release notes
2017-03-13 21:31:26 +01:00
Martin Hořeňovský
0c015aa887
v1.8.2 release
2017-03-13 21:29:30 +01:00
Phil Nash
f69f821853
Updatecd [!shouldFail] docs with extra explanatory note,
2017-03-13 19:35:17 +00:00
Phil Nash
485dbdc0e7
Added link to event listeners docs
2017-03-13 19:27:18 +00:00
Phil Nash
0afd52b98d
Fix Objective-C Matchers
...
Fixes #854
2017-03-13 15:40:21 +00:00
Phil Nash
38b05f1400
Don’t assume first CL arg (exe name) is present
...
Fixes #729
2017-03-13 11:00:58 +00:00
Phil Nash
db9866677e
Don’t ref past end of string
...
fixes #830
2017-03-13 10:22:02 +00:00
Phil Nash
4101ff314a
#include <ctype> for std::to lower
2017-03-10 19:25:00 +00:00
Phil Nash
68da5a6d19
Docs for Listeners
2017-03-10 19:17:25 +00:00
Phil Nash
e4a25ad5ff
Added CATCH_REGISTER_LISTENER without the INTERNAL_ prefix
2017-03-10 19:15:03 +00:00
Phil Nash
5d6c744d38
Qualified std::tolower in Clara.
...
Fixes #543
2017-03-10 18:38:52 +00:00
Phil Nash
5dd0639520
Added FAIL_CHECK
...
Works like FAIL, but does not abort test.
As proposed in #765
2017-03-08 15:42:11 +00:00
Phil Nash
a2515755c3
Merge pull request #846 from m0ppers/patch-1
...
Add ArangoDB
2017-03-07 11:34:07 +00:00
m0ppers
807941eb31
Add ArangoDB
2017-03-07 12:29:13 +01:00
Martin Hořeňovský
a2e20b07f8
"Fix" build by annotating the new test as !shouldfail
...
The quick test under ctest checks only for no tests failing, not for the
expected output.
2017-03-07 10:17:59 +01:00
Martin Hořeňovský
ace70407a2
Add tests for #835
...
Also add ErrnoGuard before `isatty` call, because apparently it can set
errno to 25 (ENOTTY).
2017-03-06 22:07:33 +01:00
Martin Hořeňovský
613e1466f9
Save errno before using sprintf, ifstream.
...
std::ifstream in libstdc++ contains a bug, where it sets errno to zero.
To work around it, we manually save the errno before using std::ifstream
in debugger check, and reset it after we are done.
We also preventively save errno before using sprintf.
Fixes #835
2017-03-06 21:51:22 +01:00
Alex Glyde
d8f45cd5f1
changing tabs to spaces
2017-03-06 10:55:00 -05:00
Alex Glyde
3afd077b55
teamcity reporter should time durations explicitly
2017-03-06 10:35:03 -05:00
Martin Hořeňovský
e95bf48445
Take std::string by const-ref where possible
...
Most places already do, this brings over some forgotten places.
Also close #842
2017-03-06 13:16:43 +01:00
Martin Hořeňovský
932a405e18
/Wx -> /WX (stupid typo)
2017-03-06 11:29:57 +01:00
Martin Hořeňovský
9a037204fa
Enable /Wx (Warnings as error) for SelfTest builds
2017-03-06 11:21:35 +01:00
Martin Hořeňovský
374c050a42
benchmarkCompile.py fixup
2017-03-06 10:59:17 +01:00
Martin Hořeňovský
8b8e3ee117
Disable C4702 in Exception tests self tests
...
VS 2015 in Release mode sees through our indirection and complains.
There is no reason to make the indirectoin harder to reason about,
instead of just disabling the warning.
2017-03-06 10:52:21 +01:00
Martin Hořeňovský
af1ed708e4
Copied release note fixes to documentation
2017-03-06 10:46:21 +01:00
Phil Nash
041498b221
Fixed unintentional tabs
2017-03-06 09:23:31 +00:00