Commit Graph

708 Commits

Author SHA1 Message Date
Martin Hořeňovský ab04e599e7
Improve v2->v3 migration docs 2022-08-18 00:02:33 +02:00
Martin Hořeňovský 97c48e0c34
v3.1.0 2022-07-17 20:18:44 +02:00
Raphael Schaller 1bd233866c Add AllTrue, AnyTrue, NoneTrue matchers 2022-07-16 16:16:05 +02:00
Martin Hořeňovský a6d59b62b2
Remove obsolete link to benchmarking tests
The benchmarking feature is now documented, so there is no need
to direct our users towards our test file to understand how it
works.

Closes #2471
2022-07-15 19:49:24 +02:00
Martin Hořeňovský 34d9724058
Add experimental CMake script for sharding tests in binaries 2022-06-24 14:12:55 +02:00
Martin Hořeňovský 5d269045b2
Add section on running tests in parallel to the FAQ 2022-06-24 11:20:31 +02:00
Martin Hořeňovský 95a1206805
Add doc page with best practices and other usage tips 2022-06-24 11:20:22 +02:00
Martin Hořeňovský 6f9f1465c3
Shorten lines in sharding docs 2022-06-22 00:12:16 +02:00
Frank Dana a369267874
test-fixtures.md: Line-wrap code examples (#2464)
* test-fixtures.md: Line-wrap code examples

* relinebreak

Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com>
2022-06-19 16:24:59 +02:00
Nexus Web Development 1f381a1f62
Update commercial-users.md (#2465)
Using Catch2 and now Catch3 for our client's as well as our own projects and loving it. Especially the easy C++ BDD setup and implementation.
2022-06-18 23:47:49 +02:00
Brandon Jones 7e4ec432d0 Change Bazel XML support to depend upon BAZEL_TEST 2022-06-17 16:36:14 +02:00
Martin Hořeňovský 372b7575f6
Remove deprecation notice for console colour CLI
The required changes were one of the last commits before the full
v3 release.
2022-06-13 23:52:31 +02:00
Elizabeth Sherrock 0a810c5e59
Added Cytopia to opensource-users.md 2022-06-07 09:06:10 -04:00
Martin Hořeňovský 8822e28772
Update CE link in BDD documentation for 3.0.1
The old compiler was no longer built-for, so it couldn't link
against new versions, and also didn't properly provide the
user-config header.

Closes #2396
2022-06-06 00:29:02 +02:00
Petr Kubánek 0c13d021da Update documentation - add pkg-config examples.
Use -std=c++14 (instead of c++11). Pointers how to integrate with
pkg-config for non-CMake projects.
2022-06-05 15:58:41 +02:00
balus 3644b4135d Doc: correct the address of the link to the command-line doc in tutorial.md 2022-06-04 10:20:01 +02:00
Sergio Losilla 231c58a048
Add table with verbosity levels (missing --list-listeners) (#2443)
Co-authored-by: Sergio Losilla <sergio.losilla@nt-bnct.com>
Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com>
2022-06-02 21:50:51 +02:00
Martin Hořeňovský 8c952bd076
Point to 3.0.1 in FetchContent example
Closes #2326
Closes #2438
2022-05-31 11:49:24 +02:00
Martin Hořeňovský 3a18a688a0
Mention CMake's integration with CATCH_CONFIG options 2022-05-21 13:04:09 +02:00
Martin Hořeňovský 605a34765a
v3.0.1 2022-05-17 22:13:36 +02:00
Martin Hořeňovský 5a49285e9c
Add --list-listeners option 2022-05-10 20:57:59 +02:00
Martin Hořeňovský 9dc229693d
Document the stability guarantees of '--order rand' option 2022-04-25 21:45:50 +02:00
Martin Hořeňovský db57a4956f
Fixup ToC in command-line.md 2022-04-25 21:39:48 +02:00
Martin Hořeňovský 48177831ee
Add version placeholder to the example doc in contributing.md 2022-04-25 21:36:03 +02:00
Martin Hořeňovský ee3bbecf51
Improve include guard docs in contributing.md 2022-04-25 21:33:05 +02:00
Martin Hořeňovský 431dcf36ea
Document Catch2's API/ABI stability policies 2022-04-25 18:58:50 +02:00
Martin Hořeňovský e882cb8eb1
Document the new --skip-benchmarks flag 2022-04-25 18:36:40 +02:00
Daniel Feist 291b35b389
Added --skip-benchmarks command-line option. (#2408)
Closes #2392

Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com>
2022-04-23 23:14:49 +02:00
Martin Hořeňovský 73d8fb5bca
Update release-notes.md 2022-04-10 21:43:28 +02:00
Martin Hořeňovský 0a33405983
Mention Bazel support in release notes 2022-04-09 20:55:13 +02:00
Lukasz Okraszewski cb551b4f6d
Add default reporter for Bazel integration (#2399)
When the added Bazel configuration flag is enabled,
a default JUnit reporter will be added if the XML
envrioment variable is defined.
Fix include paths for generated config header.
Enable Bazel config by default when building with
Bazel.


Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com>
2022-04-08 18:01:59 +02:00
Martin Hořeňovský 46b3f7ee5f
Document magic %-prefixed streams 2022-04-07 12:50:18 +02:00
Martin Hořeňovský f9f4e58dfb
Add missing version placeholder to --colour-mode cli option docs 2022-04-07 12:50:14 +02:00
Martin Hořeňovský 423e1d2ebb
Integrate the new reporter specs into Catch2
This means that the CLI interface now uses the new key-value oriented
reporter spec, the common reporter base creates the colour implementation
based on the reporter-specific configuration, and it also stores the
custom configuration options for each reporter instance.

Closes #339 as it allows per-reporter forcing of ansi colour codes.
2022-04-07 12:50:08 +02:00
Martin Hořeňovský 1a8a793178
Refactor colour handling to prepare for per-reporter colour modes
This includes always compiling the ANSI and None colour
implementations, as they don't need to touch any platform
specific APIs, and removing their respective compile-time
configuration options.

Because the Win32 colour implementation requires Win32-specific
APIs, it is still hidden behind a compile-time toggle,
`CATCH_CONFIG_COLOUR_WIN32` (renamed from `..._COLOUR_WINDOWS`).

The commandline options for colours were also changed. The
option now uses different name, and allows to select between
different implementations, rather than changing whether
the compiled-in colour implementation is used through
"yes/no/default" options.
2022-03-28 13:10:13 +02:00
wqking 38879296a7 Add eventpp and accessorpp to Catch2 users 2022-03-13 16:56:07 +01:00
Martin Hořeňovský 05d4ec62c8
Add common ReporterBase as parent of the helper bases
This is useful as a centralized place for handling common reporter
problems like handling output streams, and soon also colour impl
handling.
2022-03-06 16:28:22 +01:00
Martin Hořeňovský 529eec97bb
Mention CMake configure options in release notes 2022-02-23 14:16:36 +01:00
Martin Hořeňovský 72f0372664
Add tests for CMake configure toggles passing to Catch2 build 2022-02-20 19:32:30 +01:00
John Beard 0c722564c3 Examples: remove references to catch_default_main
catch_default_main.hpp was removed in db32550898

The example 000-CatchMain.cpp is no longer compiled, but is still
present in the examples and is still references by other example
files. Remove the file and references to it, as they are confusing.
2022-02-20 13:10:42 +01:00
Martin Hořeňovský 7cf2f88e50
Add small missing things to release notes 2022-02-14 18:22:11 +01:00
Martin Hořeňovský c912f62fc4
Remove Windows.h related defines 2022-02-05 16:21:06 +01:00
Martin Hořeňovský aa3c7be434
Fix ToC in CLI documentation 2022-02-05 16:14:47 +01:00
Martin Hořeňovský b0279e0c14
Remove mention of CATCH_CONFIG_MAIN from docs/configuration.md 2022-02-05 14:55:01 +01:00
Martin Hořeňovský b5dbdc858d
Link to the v2-v3 migration docs from release notes 2022-01-28 23:55:27 +01:00
Simon Weis 5121660e7f Add OpenALpp as an open source library that uses Catch2 2022-01-22 21:33:19 +01:00
Martin Hořeňovský 39d3de17f3
Fix mentions of CATCH_INSTALL_HELPERS
Fixes #2347
2022-01-06 23:37:44 +01:00
Martin Hořeňovský 244680d512
Update release-process.md for v3 2022-01-03 23:30:39 +01:00
Martin Hořeňovský 57c9c935ee
Update release notes 2022-01-03 23:11:55 +01:00
Martin Hořeňovský d3199c42c2
Redo reporter CLI and reporter-specific docs
Closes #2259
2022-01-03 20:38:13 +01:00
Martin Hořeňovský eeee4a49af
Remove short flags from --list-tests and --list-tags 2022-01-02 21:23:29 +01:00
Martin Hořeňovský 0d1bdea69f
Remove all mentions of the removed --list-test-names-only flag 2022-01-02 21:23:26 +01:00
Martin Hořeňovský 3ab981fa21
Add documentation for the --verbosity option 2022-01-02 21:02:43 +01:00
Martin Hořeňovský 54e89e8364
Update release notes to account for recent changes 2022-01-01 23:50:12 +01:00
Martin Hořeňovský 93882f7fab Support '-' as output path for stdout 2022-01-01 14:16:12 +01:00
Martin Hořeňovský 4752545a69 Add version placeholders to the reporter docs 2022-01-01 14:16:12 +01:00
Martin Jeřábek ccd67b293d Add support for multiple parallel reporters
This requires a bunch of different changes across the reporter
subsystem.

* We need to handle multiple reporters and their differing
  preferences in `ListeningReporter`, e.g. what to do when
  we mix reporters that capture and don't capture stdout.
* We need to change how the reporter is given output and
  how we parse reporter's output destination from CLI.
* Approval tests need to handle multireporter option
2022-01-01 14:02:23 +01:00
Martin Hořeňovský f00b6e2019
Add more tests for various less common tag-related cases 2021-12-28 00:22:53 +01:00
Alan Jowett cde26de803
Add buildAndTest.cmd for Windows users (#2338)
* Add buildAndTest.cmd for Windows users

Signed-off-by: Alan Jowett <alanjo@microsoft.com>
Co-authored-by: Martin Hořeňovský <martin.horenovsky@gmail.com>
2021-12-18 23:52:35 +01:00
Martin Hořeňovský 3cc0c033e4
Allow enabling multiple warnings in one invocation 2021-12-18 20:50:05 +01:00
Martin Hořeňovský 840acedf62
Implement warning for unmatched test specs 2021-12-18 20:50:03 +01:00
Martin Hořeňovský 9f2dca5384
Exit with non-0 return code if no tests were run
A new flag, `--allow-running-no-tests` was added to override this
behaviour if exit code of 0 was desired.

This change also made `-w NoTests` obsolete, and so it has been
removed.
2021-12-18 20:50:00 +01:00
Martin Hořeňovský 602e484f02
Rename reportInvalidArguments -> reportInvalidTestSpec
This is has been what it actually does for a long time, but it
has not been renamed earlier due to API compatibility.
2021-12-18 20:49:50 +01:00
Martin Hořeňovský 08939cc8bb
Error out early if invalid test specs are provided 2021-12-18 20:49:47 +01:00
Tristan Stenner 9952f29f01 Fix link in event-listeners.md 2021-11-22 11:44:36 +01:00
Martin Hořeňovský fabe614ba8
Rewrite own-main.md for v3 2021-11-19 15:52:32 +01:00
Martin Hořeňovský acdb85c398
Add FAQ page to the documentation 2021-11-19 15:23:50 +01:00
Martin Hořeňovský 726fdd7f8e
Update known-limitations.md
Removed 3rd party bugs for no-longer supported compiler versions,
reworded section on parallel test execution to take into account
sharding.
2021-11-19 00:32:59 +01:00
Martin Hořeňovský 0ccb1c30c6
Rewrite event listener docs and add event documentation 2021-11-18 23:05:45 +01:00
Martin Hořeňovský dd12ce8141
Rewrite tutorial to shorten BDD section and mention generators 2021-11-16 23:46:23 +01:00
Martin Hořeňovský 61489e863e
Fixup ToC link to 3.0.1 release notes 2021-11-16 23:46:19 +01:00
Martin Hořeňovský 2287d225e5
Mention that RangeGenerator works on half open ranges
Closes #2145
2021-11-15 23:52:26 +01:00
Martin Hořeňovský 4eb00afe69
Add allowing tests with same name to release notes 2021-11-15 23:18:55 +01:00
Martin Hořeňovský e86f84b8ef
Mention that run == iteration in benchmarking docs 2021-11-15 23:09:18 +01:00
Martin Hořeňovský 67caef6f45
Mention STATIC_CHECK in release notes 2021-11-15 13:04:08 +01:00
Morwenn f41d761674
Add STATIC_CHECK and STATIC_CHECK_FALSE (#2318) 2021-11-15 00:28:27 +01:00
Martin Hořeňovský 62d8913d67
Cumulative reporter base records benchmark results 2021-11-09 11:52:50 +01:00
Martin Hořeňovský 8780425385
Make reporter lookup case insensitive, registration case preserving
Previously registration was case preserving, but lookup used
lowercased reporter name, so a reporter whose name contained
upper case character could not be requested by the user.
2021-11-09 11:50:03 +01:00
Martin Hořeňovský 514206df36
Add accept-many Clara lambdas to release notes 2021-10-27 20:54:49 +02:00
Martin Hořeňovský becab0cf74
Add test sharding to the release notes 2021-10-27 20:49:29 +02:00
Ben Dunkin 3087e19cc7 Allow test sharding for e.g. Bazel test sharding feature
This greatly simplifies running Catch2 tests in single binary
in parallel from external test runners. Instead of having to
shard the tests by tags/test names, an external test runner
can now just ask for test shard 2 (out of X), and execute that
in single process, without having to know what tests are actually
in the shard.

Note that sharding also applies to test listing, and happens after
tests were ordered according to the `--order` feature.
2021-10-27 17:24:30 +02:00
Martin Hořeňovský bf5c58adf6
The limit on TEMPLATE* test cases is actually reachable 2021-10-21 15:52:07 +02:00
Martin Hořeňovský 36b4a71ff0
Pick release notes for 2.13.7 2021-10-10 22:23:14 +02:00
Martin Hořeňovský ed1f343a41
Provide random-device option for --rng-seed and make it default 2021-10-08 21:35:45 +02:00
Martin Hořeňovský 426954032f
Rename Contains string matcher builder to ContainsSubstring
The problem with the old name was that it collided with the
range matcher `Contains`, and it was not really possible to
disambiguate them just with argument types.

Closes #2131
2021-09-27 21:28:33 +02:00
Martin Hořeňovský e8e28ba401
Remove obsolete documentation page 2021-09-23 23:42:16 +02:00
Bernhard Manfred Gruber ee1435793e add alpaka and LLAMA to Catch2 users 2021-09-23 12:39:56 +02:00
Martin Hořeňovský e4719fb51c
Update release notes with new fixes, improvements and breaking changes 2021-09-07 22:00:57 +02:00
Martin Hořeňovský ca8546efc6
Mention C++14 baseline in contributing documentation 2021-08-19 19:16:12 +02:00
Martin Hořeňovský 4113a12c69
Fix Wreserved-identifier for UDLs in Catch2
See #578
2021-08-19 19:15:46 +02:00
Martin Hořeňovský 88c27ffaf2
Mention CATCH_MOVE and CATCH_FORWARD in contributing docs 2021-08-16 16:22:21 +02:00
Geoffrey M Gunter 7040f03b54 Fix typo in docs/matchers.md
There were a few instances in matchers.md where header files erroneously
had a .h file extension instead of .hpp
2021-08-16 15:19:49 +02:00
Martin Hořeňovský 1554251f97
Fix typo in docs/cmake-integration.md 2021-08-11 22:57:36 +02:00
Kin Numaru 74db06199b
Rename contrib/ to extras/ in the docs
The directory has been renamed in 918aa32 but the doc was not updated
yet.
2021-08-10 10:41:16 +02:00
Martin Hořeňovský 52a3144145
Update users docs 2021-08-08 23:42:24 +02:00
Martin Hořeňovský a62974eb6a
Update why-catch.md 2021-08-08 23:42:17 +02:00
Martin Hořeňovský 79c2daa4a0
Update tutorial docs 2021-08-03 13:53:44 +02:00
Martin Hořeňovský 1e0dc61d16
Update CMake integration documentation 2021-07-31 21:46:11 +02:00
Martin Hořeňovský 02e5951f11
Add major changes and their motivation to v2 -> v3 migration docs
Closes #2135
2021-07-29 23:19:48 +02:00
Martin Hořeňovský 1ecc79bb56
Fix superfluous uppercase C in matcher docs 2021-07-28 23:38:27 +02:00