Martin Hořeňovský
950cae9040
Added new assertion macros: `*_THROWS_WITH`
...
It combines `*_THROWS_AS` and `*_THROWS_WITH` macros, so that the
exception type matches expectetations and its contents match a specific
matcher.
2017-06-05 18:40:50 +02:00
Martin Hořeňovský
7f6773bb4d
Merge branch 'master' into dev-modernize
...
Hopefully nothing went too wrong.
2017-06-05 17:19:42 +02:00
Martin Hořeňovský
b459bb4c43
Silence GCC's Wunused-function firing in compilation tests
...
The whole GCC kinda sucks around warnings, this is yet another place
where pragmas manipulating warnings don't work properly and thus a
warning has to be disabled globally... luckily, this time it is
happening in selftest file and thus it isn't too problematic to just
turn that warning of for the entire file.
2017-06-05 16:59:31 +02:00
Martin Hořeňovský
1e16be0b9e
Purge deprecated generators
2017-06-05 16:49:10 +02:00
Martin Hořeňovský
47c8994a61
Inherit from NonCopyable to disable RegisterHub copies
2017-06-04 22:56:57 +02:00
Martin Hořeňovský
860de28b8d
Catch and register startup exceptions in autoregistrars
...
Previously they were registered where they would be thrown otherwise
2017-06-04 22:37:59 +02: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
Martin Hořeňovský
0020747420
Generate single header even if output dir does not exist
2017-06-04 21:28:08 +02:00
Martin Hořeňovský
3e018ef131
Add link to external gcov/lcov example to documentation
...
An alternate take on #916 , that better slots into the existing
documentation.
Closes #916
2017-06-04 12:17:59 +02:00
Martin Hořeňovský
adb66f55a7
Don't include warning headers from catch_xmlwriter.hpp
...
This prevents Catch from disabling `Wpadded` for Clang inside test files
(files that do not define either `CATCH_CONFIG_MAIN` or
`CATCH_CONFIG_RUNNER`).
catch_suppress_warnings.h and catch_reenable_warnings.h should be
included only once*, so that the stitching script includes them as the
first and last header respectively, since it only includes each header
once. This caused a bug, where the first one was included properly, but
the second one was included prematurely, from catch_xmlwriter.hpp, and
thus was guarded by `CATCH_IMPL`.
* At least until the stitching script is changed to accomodate common
warning disabling header.
Fixes #871
2017-06-02 19:10:57 +02:00
Martin Hořeňovský
377c9a746d
Cosmetic fixes (whitespace and spelling)
2017-05-27 14:42:54 +02:00
Martin Hořeňovský
ea48ae0f75
Add test for #914 (stringify truthy exprs in standard way)
2017-05-27 14:42:05 +02:00
twhittock
2d1739b429
ExpressionLhs reconstruction based on value, not truthiness ( #914 )
...
Types which are truthy, but have more information than the truthiness in their string conversion were showing up as 'true' or 'false' instead of showing the underlying type's string value.
2017-05-27 14:09:43 +02:00
Martin Hořeňovský
1c59034be4
Merge pull request #911 from dvirtz/master
...
CTest integration script enhancements
2017-05-27 13:52:55 +02:00
Martin Hořeňovský
52a84788e0
Add Inscopix to commercial users
...
Closes #918
2017-05-27 12:23:35 +02:00
Martin Hořeňovský
169e260e8b
Enable colourized output while in debugger
2017-05-22 00:41:31 +02:00
Martin Hořeňovský
67914d8b86
Move back to static StringMaker<T>::convert
...
This avoids some breakage from the modernization
2017-05-21 23:40:05 +02:00
Martin Hořeňovský
3e328f55fc
Merge pull request #913 from Carrotstrip/master
...
fixed spelling error in tutorial.md
2017-05-21 11:17:25 +02:00
Austin L Wolfgram
b18e67522f
fixed spelling error
2017-05-20 15:10:42 -04:00
dvirtz
4b086bd5b5
added target name to test name and labels
2017-05-18 16:00:18 +03:00
dvirtz
aac594aae3
add option to print debug messages
2017-05-18 15:53:35 +03:00
dvirtz
a49fa0edbe
use absolute path to test files - accroding to CMake docs EXISTS behavior is well-defined only for full paths.
2017-05-18 15:51:44 +03:00
Martin Hořeňovský
d271683c14
Added release process notes/checklist/explanation
2017-05-16 21:33:58 +02:00
Martin Hořeňovský
0bb8e1247e
Merge branch 'master' of https://github.com/awglyde/Catch
2017-05-16 16:09:51 +02:00
Martin Hořeňovský
32d97caf42
Fixed missing ` in tag documentation
2017-05-16 15:45:44 +02:00
Martin Hořeňovský
bc93b29789
Expanded tag documentation
...
It now mentions that most characters are valid as part of tag and other
details.
Closes #909
2017-05-16 15:28:53 +02:00
Martin Hořeňovský
df5cf2d323
Minor fixup in updateVcpkgPackage.py
2017-05-16 14:34:55 +02:00
Martin Hořeňovský
b62c0256b2
Merge branch 'master' of https://github.com/philsquared/Catch
2017-05-16 14:34:27 +02:00
Martin Hořeňovský
1ea84cb734
Expanded logging documentation
...
Closes #884
2017-05-16 14:34:20 +02:00
Martin Hořeňovský
2a5d3736e8
Merge pull request #908 from pJunger/patch-1
...
Typo: Added namespace in method testCaseEnded
2017-05-16 14:05:31 +02:00
Martin Hořeňovský
3dcc923351
v1.9.4
2017-05-16 13:59:29 +02:00
Martin Hořeňovský
589c40077b
Typo fix
...
Somehow I made that in 5ffc8a84cd
without noticing
2017-05-16 13:51:17 +02:00
Martin Hořeňovský
31f5e2ed81
Updated documentation about stringifying UDTs
2017-05-16 13:38:52 +02:00
Patrick Junger
d4e0b1d093
Added namespace in method testCaseEnded
...
Did not compile as is
2017-05-14 14:11:47 +02:00
Antonio Di Monaco
b8443e67da
Added Win32 UNICODE wmain support ( #903 )
...
* Added wmain support
* Added appveyor.yml wmain configuration
* Added wmain configuration flag to CMake
2017-05-11 13:00:03 +02:00
Martin Hořeňovský
85aa770701
Disable unreachable code warning for TrickyTests.cpp
...
Somehow this only triggers for VS 2015, Win32 | Release configuration...
2017-05-08 01:26:06 +02:00
Martin Hořeňovský
f82e312552
Attempt at fixing compilation on OSX
...
Since I don't have actual access to OSX, this might be a tad optimistic.
2017-05-08 01:08:07 +02:00
Martin Hořeňovský
bffef1bffa
Fix alignment for Catch::Option
...
This is so much easier in C++11...
2017-05-08 00:59:44 +02:00
Martin Hořeňovský
7e14232924
Fix C4702 (unreachable code) in generators
...
Generators might get removed anyway, but at least compilation wont
trigger Wx on MSVC in the meantime.
2017-05-08 00:58:44 +02:00
Martin Hořeňovský
d7eb041ab5
Fix compilation on non-OSX platforms
2017-05-08 00:54:53 +02:00
Phil Nash
8c757cc542
Removed need for Error class to capture stream inserted strings into exceptions
2017-05-05 18:39:49 +01:00
Phil Nash
bada67bb72
Rebased approvals
2017-05-05 18:28:04 +01:00
Phil Nash
4c5af2089a
Added CATCH_ENFORCE (and updated CATCH_INTERNAL_ERROR to be stream based)
...
replaced all ad-hoc exceptions (where appropriate) with CATCH_ENFORCE or CATCH_INTERNAL_ERROR - no explicit ostringstreams.
2017-05-05 15:43:31 +01:00
Phil Nash
687437fcd1
converted IStreamingReporter to unique_ptr
2017-05-05 15:43:31 +01:00
Phil Nash
ef8b72c949
Changed dynamic_pointer_casts to static_pointer_casts
2017-05-05 15:43:31 +01:00
Martin Hořeňovský
5604ec7266
Updated toString documentation
...
It will need another update when Catch 2 goes live.
Closes #741
2017-05-03 21:09:27 +02:00
Martin Hořeňovský
a9128d0fac
More macros are now variadic
...
Also added tests for them
2017-05-03 19:10:27 +02:00
Martin Hořeňovský
c5c3d368a2
Added std:: qualification to nullptr_t
...
Apparently Clang doesn't like it unqualfied 😄
2017-05-03 00:29:36 +02:00
Martin Hořeňovský
33ed1773f4
Reworked stringification layer, removed Catch::toString
...
Now the order of stringification checks is
1) StringMaker specialization
2) operator<<
toString overloads and specializations have been removed.
2017-05-02 23:51:03 +02:00
Benjamin R. Jack
6f012f2d1d
Added warning if source file cannot be found
...
If source files are defined using relative paths, CMake will compile the tests, but this script will (sometimes) fail to find and parse the tests from the source files. I have added an explicit warning when ParseAndAddCatchTests fails to find a source file.
2017-05-01 19:55:17 +02:00