Commit Graph
3868 Commits
Author SHA1 Message Date
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ý 6b55f5d780 Don't send full stdout so far to testCasePartialEnded event 2022-01-01 12:21:41 +01:00
Martin Hořeňovský c9c3b74805 Remove some obsolete tests 2021-12-31 15:12:53 +01:00
Martin Jeřábek 8711b63a0a Add tests for StringRef's copy operations being shallow 2021-12-29 20:20:29 +01:00
Martin Hořeňovský 72a09de236 Add tests for Optional's op== and != 2021-12-29 16:58:22 +01:00
Martin Jeřábek f0a89b7345 Add ops == and != for Optional 2021-12-29 16:58:16 +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
Martin Hořeňovský 45577a1f4c Refactor implementation of case-insensitivity in tags
By not materializing the lower cased tags ahead of time, we
save allocations at the cost of worsened performance when comparing
two tags.

Since there are rarely many tags, and commonly they are not
compared even if present, this is almost always a win. The new
implementation also improves the robustness of the code
responsible for handling tags in a case-insensitive manner.
2021-12-28 00:20:55 +01:00
Martin Hořeňovský cbb6764fb1 Add CaseInsensitiveEqualTo comparison type 2021-12-26 18:54:47 +01:00
Martin Hořeňovský 156e6fdfa9 CaseInsensitiveLess takes args as StringRefs 2021-12-26 00:52:52 +01:00
Martin Hořeňovský 187bf6db2b Split out CaseInsensitiveCmp into its own file 2021-12-26 00:35:46 +01:00
Alan JowettandMartin Hořeňovský 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
Martin Hořeňovský 3bfe900bbc Move shard logic check after help flag check 2021-12-18 20:49:44 +01:00
Alan Jowett d30d0c01a7 Disable JIT debug for ctest.ext
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
2021-12-16 12:17:52 +01:00
Martin Hořeňovský dcf9479c85 Counts internally use uint64_t instead of size_t
This ensures that even for 32 bit platforms, the assertion count
should not plausibly overflow.
2021-12-06 20:42:51 +01:00
Martin Hořeňovský c49faa62dd Let users of amalgamated distribution override the default main
Closes #2324
2021-12-02 13:49:16 +01:00
Martin Hořeňovský c097609115 Cleanup release scripts a bit 2021-12-02 11:48:50 +01:00
Martin Hořeňovský 9d6fffb922 Remove no longer used Python scripts 2021-12-02 11:48:28 +01:00
Martin Hořeňovský 153965a655 Delete useless MatcherMethod base class
All of its functionality can be moved into the `MatcherBase` class,
simplifying the code a bit and removing a warning about class with
virtual member functions but no virtual destructor.

Closes #2182 as it is no longer relevant.
2021-11-26 00:38:13 +01:00
Martin Hořeňovský 0ac9f44985 Add SECURITY.md 2021-11-26 00:10:01 +01:00
Martin Hořeňovský b9baae6d93 Cleanup StringRef impl a bit 2021-11-23 23:16:46 +01:00
Martin Hořeňovský c95072408f Add catch_sharding.hpp to CML 2021-11-23 23:16:17 +01:00
Martin Hořeňovský 8cb8f0b08b Sweep out some Wsign-conversion warnings 2021-11-23 23:16:08 +01:00
Tristan Stenner 9952f29f01 Fix link in event-listeners.md 2021-11-22 11:44:36 +01:00
SketchyLizard 2db1cf3404 Fix template args to avoid conversion warnings
Fix avoids a warning about sign conversion when included from a file compiled with -Werror=sign-conversion.
2021-11-20 21:38:01 +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ý d32e89eb84 Reorganize the main readme 2021-11-16 23:46:22 +01:00
Martin Hořeňovský ce6aca81ad Remove Google Groups link from README.md 2021-11-16 23:46:21 +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ý d012735c6e Add test for runtime behaviour of STATIC_CHECK 2021-11-15 20:06:29 +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ý edc2f6e8a3 Further refactoring of StreamingReporterBase 2021-11-14 11:41:29 +01:00
Martin Hořeňovský b2ac27423a Cleanup visibility in StreamingReporterBase 2021-11-14 11:41:27 +01:00
Martin Hořeňovský a754cb9062 Make TestRunInfo constexpr 2021-11-14 11:41:26 +01:00
Martin Hořeňovský 5f38cc39fa JUnit/SonarQube reporters use base's stream member 2021-11-14 11:41:25 +01:00
Martin Hořeňovský b892ab133c Cleanup visibility in CumulativeReporterBase 2021-11-14 11:41:24 +01:00
Martin Hořeňovský 0c9fe16537 Opt out JUnit/SonarQube reporter from expanding passing assertions
Closes #1966
2021-11-14 11:27:45 +01:00