<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/projects/CMakeLists.txt, branch v2.13.3</title>
<subtitle>Progmasoft Catch3: an independently maintained C++17 test framework with a parallel runner, property checks, snapshots and structured results.</subtitle>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/'/>
<entry>
<title>Fix potential infinite loops in generators combined with section filter</title>
<updated>2020-10-31T17:04:15+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-10-22T12:20:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=765ac08f0811f3a9d2cd6d3bdaa6cbe457457adc'/>
<id>765ac08f0811f3a9d2cd6d3bdaa6cbe457457adc</id>
<content type='text'>
The problem was that under specific circumstances, namely that none
of their children progressed, `GeneratorTracker` will not progress.
This was changed recently, to allow for code like this, where a
`SECTION` follows a `GENERATE` at the same level:

```cpp
SECTION("A") {}
auto a = GENERATE(1, 2);
SECTION("B") {}
```

However, this interacted badly with `SECTION` filters (`-c foo`),
as they could deactivate all `SECTION`s below a generator, and thus
stop it from progressing forever. This commit makes GeneratorTracker
check whether there are any filters active, and if they are, it checks
whether its section-children can ever run.

Fixes #2025
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The problem was that under specific circumstances, namely that none
of their children progressed, `GeneratorTracker` will not progress.
This was changed recently, to allow for code like this, where a
`SECTION` follows a `GENERATE` at the same level:

```cpp
SECTION("A") {}
auto a = GENERATE(1, 2);
SECTION("B") {}
```

However, this interacted badly with `SECTION` filters (`-c foo`),
as they could deactivate all `SECTION`s below a generator, and thus
stop it from progressing forever. This commit makes GeneratorTracker
check whether there are any filters active, and if they are, it checks
whether its section-children can ever run.

Fixes #2025
</pre>
</div>
</content>
</entry>
<entry>
<title>Improve detection of std::uncaught_exceptions support</title>
<updated>2020-10-06T09:07:53+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-10-06T09:07:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=e6f5e05ebcc46355fe737d8d747f8ed95edc99d1'/>
<id>e6f5e05ebcc46355fe737d8d747f8ed95edc99d1</id>
<content type='text'>
The problem was that Catch2 did not reliably include `&lt;exception&gt;`
before it checked for the feature test macro for
`std::uncaught_exceptions`. To avoid overhead of including
`&lt;exception&gt;` everywhere, the configuration check was split out
into a separate header.

Closes #2021
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The problem was that Catch2 did not reliably include `&lt;exception&gt;`
before it checked for the feature test macro for
`std::uncaught_exceptions`. To avoid overhead of including
`&lt;exception&gt;` everywhere, the configuration check was split out
into a separate header.

Closes #2021
</pre>
</div>
</content>
</entry>
<entry>
<title>Refactor tests for duration reporting threshold</title>
<updated>2020-07-06T18:02:20+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-07-06T18:02:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4eb9d37e05df8044b8aa7b7b55a06ff9848ee087'/>
<id>4eb9d37e05df8044b8aa7b7b55a06ff9848ee087</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Test for --min-duration</title>
<updated>2020-07-06T09:35:02+00:00</updated>
<author>
<name>John Bytheway</name>
</author>
<published>2020-04-13T12:37:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=53d8af8e96b65c283e88f7efbab69fc2ad96eb71'/>
<id>53d8af8e96b65c283e88f7efbab69fc2ad96eb71</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add --min-duration option</title>
<updated>2020-07-06T09:35:02+00:00</updated>
<author>
<name>John Bytheway</name>
</author>
<published>2020-04-13T12:34:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=46fde0c5978d0c138f9309a4cebfc8ff9c44e286'/>
<id>46fde0c5978d0c138f9309a4cebfc8ff9c44e286</id>
<content type='text'>
A test runner already has a --durations option to print durations.
However, this isn't entirely satisfactory.

When there are many tests, this produces output spam which makes it hard
to find the test failure output.  Nevertheless, it is helpful to be
informed of tests which are unusually slow.

Therefore, introduce a new option --min-duration that causes all
durations above a certain threshold to be printed.  This allows slow
tests to be visible without mentioning every test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A test runner already has a --durations option to print durations.
However, this isn't entirely satisfactory.

When there are many tests, this produces output spam which makes it hard
to find the test failure output.  Nevertheless, it is helpful to be
informed of tests which are unusually slow.

Therefore, introduce a new option --min-duration that causes all
durations above a certain threshold to be printed.  This allows slow
tests to be visible without mentioning every test.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add test for consistent random ordering</title>
<updated>2020-04-14T10:47:36+00:00</updated>
<author>
<name>John Bytheway</name>
</author>
<published>2020-04-10T21:25:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=da9e3eec651797301a41f7a7ab5f47241b69dece'/>
<id>da9e3eec651797301a41f7a7ab5f47241b69dece</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add SonarQube Generic Test Data reporter</title>
<updated>2019-10-27T09:02:41+00:00</updated>
<author>
<name>sp-dani-garcia</name>
</author>
<published>2019-08-29T15:47:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=51b29ced1ac2bde83d977283f6e0b4f871898b8a'/>
<id>51b29ced1ac2bde83d977283f6e0b4f871898b8a</id>
<content type='text'>
It outputs reports in the `Generic Execution Test Data` format, see
https://docs.sonarqube.org/latest/analysis/generic-test/, specifically
https://docs.sonarqube.org/latest/analysis/generic-test/#header-2

Close #1738 (this is a cherry-pick and fixup of that PR)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It outputs reports in the `Generic Execution Test Data` format, see
https://docs.sonarqube.org/latest/analysis/generic-test/, specifically
https://docs.sonarqube.org/latest/analysis/generic-test/#header-2

Close #1738 (this is a cherry-pick and fixup of that PR)
</pre>
</div>
</content>
</entry>
<entry>
<title>Add more tests for reading test specs from file</title>
<updated>2019-10-20T13:14:50+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-10-20T13:14:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=90825a4f7aa4f537a168ce95e901933fda375f88'/>
<id>90825a4f7aa4f537a168ce95e901933fda375f88</id>
<content type='text'>
Related to #1770
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Related to #1770
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a matcher that checks exception's message</title>
<updated>2019-10-13T18:37:07+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-10-13T18:37:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=2cc0c718562d41a9900daca3ba53b6753515ee49'/>
<id>2cc0c718562d41a9900daca3ba53b6753515ee49</id>
<content type='text'>
Only works for exceptions that publicly derive from `std::exception`
and the matching is done exactly, including case and whitespace.

Closes #1649
Closes #1728

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Your branch is up-to-date with 'origin/master'.
#
# Changes to be committed:
#	modified:   ../docs/matchers.md
#	modified:   ../include/internal/catch_capture_matchers.h
#	modified:   ../projects/CMakeLists.txt
#	modified:   ../projects/SelfTest/Baselines/compact.sw.approved.txt
#	modified:   ../projects/SelfTest/Baselines/console.std.approved.txt
#	modified:   ../projects/SelfTest/Baselines/console.sw.approved.txt
#	modified:   ../projects/SelfTest/Baselines/junit.sw.approved.txt
#	modified:   ../projects/SelfTest/Baselines/xml.sw.approved.txt
#	modified:   ../projects/SelfTest/UsageTests/Matchers.tests.cpp
#
# Untracked files:
#	./
#	../clang-full/
#	../clang-test/
#	../clang10-build/
#	../coverage-build/
#	../gcc-build/
#	../gcc-full/
#	../include/internal/catch_matchers_exception.cpp
#	../include/internal/catch_matchers_exception.hpp
#	../misc-build/
#	../msvc-sln/
#	../notes.txt
#	../test-install/
#
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Only works for exceptions that publicly derive from `std::exception`
and the matching is done exactly, including case and whitespace.

Closes #1649
Closes #1728

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Your branch is up-to-date with 'origin/master'.
#
# Changes to be committed:
#	modified:   ../docs/matchers.md
#	modified:   ../include/internal/catch_capture_matchers.h
#	modified:   ../projects/CMakeLists.txt
#	modified:   ../projects/SelfTest/Baselines/compact.sw.approved.txt
#	modified:   ../projects/SelfTest/Baselines/console.std.approved.txt
#	modified:   ../projects/SelfTest/Baselines/console.sw.approved.txt
#	modified:   ../projects/SelfTest/Baselines/junit.sw.approved.txt
#	modified:   ../projects/SelfTest/Baselines/xml.sw.approved.txt
#	modified:   ../projects/SelfTest/UsageTests/Matchers.tests.cpp
#
# Untracked files:
#	./
#	../clang-full/
#	../clang-test/
#	../clang10-build/
#	../coverage-build/
#	../gcc-build/
#	../gcc-full/
#	../include/internal/catch_matchers_exception.cpp
#	../include/internal/catch_matchers_exception.hpp
#	../misc-build/
#	../msvc-sln/
#	../notes.txt
#	../test-install/
#
</pre>
</div>
</content>
</entry>
<entry>
<title>Add tests for the -f/--input-file command line argument</title>
<updated>2019-10-09T10:54:13+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-10-09T10:48:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=3109add95ccbc0b388e874253a7894027726cb0c'/>
<id>3109add95ccbc0b388e874253a7894027726cb0c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
