Commit Graph

2778 Commits

Author SHA1 Message Date
Martin Hořeňovský 5929d9530c
Add generic generator modifiers
This means mutiple generic generators and some inference helper
* take(n, generator)
* filter(predicate, generator)
* map(func, generator)
* repeat(generator, repeats)
2019-01-31 10:43:15 +01:00
Martin Hořeňovský e46a70f829
Redo generator interface 2019-01-31 10:43:06 +01:00
Martin Hořeňovský 64a9c02315
Remove obsolete IndexTracker 2019-01-29 14:45:52 +01:00
Martin Hořeňovský 61f4c7ab85
Remove unused type from tests 2019-01-27 00:03:11 +01:00
Robin Moussu 50fefd059a fix variant detection with non-clang compiler 2019-01-26 18:35:14 +01:00
Robin Moussu a2baabbf71 Fix variant test for libstdc++ version 9 (#1515)
By using non-trivially copyable types, we force libstdc++-9's variant to
properly enter the valueless-by-exception state for our stringification
test.

Related to #1511
2019-01-26 18:32:17 +01:00
Martin Hořeňovský 6f9cdd6583
Release builds on travis now respect C++17 if specified 2019-01-25 22:51:15 +01:00
Martin Hořeňovský d9e99dc2ca
Improve explanation of why -Wparentheses suppression leaks
Related to #1508
2019-01-25 21:29:12 +01:00
Martin Hořeňovský 804a2118c2
Merge pull request #1452 from drdanz/ParseAddAndCatchTest_DISABLED
ParseAndAddCatchTests: Add PARSE_CATCH_TESTS_HIDDEN_TESTS_DISABLED option
2019-01-23 15:07:03 +01:00
Martin Hořeňovský aa1e470058
Merge hidden-test-disabled and hidden-test-hidden 2019-01-23 15:05:33 +01:00
Jozef Grajciar 8d5d54e529 Docs: note to INFO 2019-01-22 12:37:03 +01:00
Jozef Grajciar 73d533ff5c Examples: add semicolon after INFO 2019-01-22 12:37:03 +01:00
Jozef Grajciar 899c5ed3df Console Colour: fix compilation 2019-01-19 23:12:54 +01:00
Martin Hořeňovský 084b1d5fe6
Fix colourized output to file
This change should be backwards compatible, but it would be better
to make the console colour API take an argument in the long term.

Fixes #1502
2019-01-19 13:32:39 +01:00
Martin Hořeňovský 4109870435
Merge pull request #1484 from Lotterleben/extend_contributing
contributing.md: Add build instructions
2019-01-19 13:06:06 +01:00
Martin Hořeňovský 2988e9f6cf
Update contributing.md to reflect current test setup 2019-01-19 13:05:27 +01:00
Lotte Steenbrink bc02ada4b0 Add build instructions to contributing.md 2019-01-19 13:05:22 +01:00
Martin Hořeňovský 61e1ea9185
Merge pull request #1492 from Lotterleben/fix_1394
fix #1394: avoid superfluous re-run when specific section is selected
2019-01-18 16:46:40 +01:00
Martin Hořeňovský b275ead8c3
Remove the obsolete issue template 2019-01-18 15:38:09 +01:00
Martin Hořeňovský b0381e42b2
Update issue templates
The old template that combined both bug reports and issue requests has led to various weird issues being filed, maybe having a separate one for each will help.
2019-01-18 15:36:34 +01:00
Martin Hořeňovský 8989c9b560
Integrate tests for #1394 into our test suite 2019-01-18 15:14:17 +01:00
Lotte Steenbrink d084162b2f Avoid superfluous re-run when specific section is selected
Fixes #1394
2019-01-18 15:13:40 +01:00
Torfinn Berset 0387fb64ce Added Bloomlife to list of commercial users 2019-01-14 18:11:38 +01:00
Martin Hořeňovský 75200b462c
Change CATCH_BREAK_INTO_DEBUGGER to always expand into a function call
This avoids -Wextra-semi-stmt warning inside our code
2019-01-13 23:22:36 +01:00
Martin Hořeňovský 17e09be3b9
Fix stupid (C4800) warning 2019-01-13 19:01:12 +01:00
Martin Hořeňovský 1c99b0ff81
Minor cleanup in decomposer 2019-01-13 16:23:20 +01:00
Martin Hořeňovský 64a0f466ec
Add missing noexcept in move constructors
Because both copy and move operations are trivial, this doesn't
actually change anything, but it silences a static analysis warning.
2019-01-13 16:17:42 +01:00
Axel Huebl 47602ac556 RunContext: Uninit Member
Fix an uninitialized member in `RunContext`.

Found with coverity in a downstream project.
2019-01-13 10:26:47 +01:00
Axel Huebl d1e7344f16 ClockEstimate: DivByZero
The clock estimator has a potential division by zero.
Using `iteration + 1` seems also more logical to me for
an average.

Found with coverity in a downstream project.
2019-01-11 11:55:51 +01:00
NeroBurner 3ed5441067 fix ctest output with space before name
When PARSE_CATCH_TESTS_ADD_TARGET_IN_TEST_NAME is enabled the cmake helper script fails to extract the testcase name if a whitespace is before the name string. Use regex to consider and remove this whitespace.

fix by Mike-Devel
fixes: https://github.com/catchorg/Catch2/issues/1493
2019-01-10 20:09:00 +01:00
Jozef Grajciar bdee512057 small cleanup of code 2019-01-10 13:07:54 +01:00
Axel Huebl 188b3e6511 hexEscapeChar: restore stream
The ostream passed as reference to `hexEscapeChar` is manipulated
and its original state not restored. This fixes it.

Seen via coverity in a downstream project.
2019-01-10 13:05:36 +01:00
Antonio Mallia bbf70ca74b Missing <type_traits> include 2019-01-10 12:52:15 +01:00
NeroBurner 23f023f9ed cpp higlighting for test-cases-and-sections.md
add c++ highlighting for the last two examples, all others already have highlighting
2019-01-10 12:29:21 +01:00
Martin Hořeňovský c1720d0c42
Fix assert message
I messed up copy-paste when modifying the assert messages in last
commit.
2019-01-03 10:14:15 +01:00
hbina4326 d54c2258e0 Add additional static_assert for the REQUIRE(a == b && c == d) case 2019-01-02 22:44:54 +01:00
BiCapitalization b3faceede2 Add nice error messages for unsupported && and ||
As explained in issue #1273, `operator&&` and `operator||` should give
a proper compile time error on use instead of the compiler complaining
about them not being defined. This commit adds an `always_false` type in
`catch_meta.hpp` used for implementing a nice `static_assert` for both
of the abovementioned operators.

Closes #1273
2019-01-01 19:13:47 +01:00
Uilian Ries e7fce90b49 Force to install Conan 1.10.2
- Conan Package Tools is not ready for Conan 1.11.x

Signed-off-by: Uilian Ries <uilianries@gmail.com>
2019-01-01 12:22:11 +01:00
Khem Raj 799c7a2eed Remove redundant move to avoid Wredundant-move with Clang
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-12-29 22:56:37 +01:00
Martin Hořeňovský 9bc15939a5
Don't use exception-related std:: functions with -fno-exceptions
This doesn't cause trouble with GCC/Clang and libstdc++, but IAR
and its stdlib apparently doesn't compile when you use `fno-exceptions`
and `std::current_exception`/`std::rethrow_exception`.

Fixes #1462
2018-12-18 20:19:39 +01:00
Martin Hořeňovský 461843b1f0
Merge pull request #1468 from JoeyGrajciar/template_product_test_case
Template product test case
2018-12-10 11:39:26 +01:00
Jozef Grajciar 5b4ffd3c93 Docs: added docs for TEMPLATE_PRODUCT_TEST_CASE 2018-12-10 08:24:08 +01:00
Jozef Grajciar 21a1cd5683 Template tests: added TEMPLATE_PRODUCT_TEST_CASE
support for generating test cases based on multiple template template
types combined with template arguments for each of the template template
types specified

e.g.
```
TEMPLATE_PRODUCT_TEST_CASE("template product","[template]",
			   (std::tuple, std::pair, std::map),
			   ((int,float),(char,double),(int,char)))
```
will effectively create 9 test cases with types:
std::tuple<int,float>
std::tuple<char,double>
std::tuple<int,char>
std::pair<int,float>
std::pair<char, double>
std::pair<int,char>
std::map<int,float>
std::map<char,double>
std::map<int,char>

Tested type is accessible in test case body as TestType
Unique name is created by appending ` - <index>` to test name
since preprocessor has some limitations in recursions

Closes #1454
2018-12-10 08:22:09 +01:00
Uilian Ries 4902cd7215 #926 Fix Conan package reference
- Package channel should be changed automatically when
  matching the stable branch pattern
- Update Bintray upload address

Signed-off-by: Uilian Ries <uilianries@gmail.com>
2018-11-28 19:55:47 +01:00
offa 18ff34788c Deprecated 'sudo: false' removed from travis config. 2018-11-26 22:51:23 +01:00
Martin Hořeňovský d0de666362
Merge pull request #1458 from ndusart/cppcodec
Add cppcodec in opensource users
2018-11-26 21:11:51 +01:00
Martin Hořeňovský 6ccd467094
v2.5.0 2018-11-26 20:50:38 +01:00
Martin Hořeňovský 34dcd2c436
Remove remains of the old conan things from release script 2018-11-26 20:47:40 +01:00
Martin Hořeňovský 16656c4c9e
Update the release process documentation 2018-11-26 20:41:14 +01:00
Nicolas Dusart 862955d657
add cppcodec in opensource users 2018-11-26 11:49:14 +01:00