<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/projects/SelfTest, branch v2.11.0</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>Split [.foo] into [.][foo] when parsing test specs</title>
<updated>2019-11-05T22:28:47+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-11-05T22:28:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=930f49a641aa6a495d264d7b5e7c007734da0b0c'/>
<id>930f49a641aa6a495d264d7b5e7c007734da0b0c</id>
<content type='text'>
b77cec05c0 fixed this problem for tagging tests, so that a test
case tagged with `[.foo]` would be parsed as tagged with `[.][foo]`.
This does the same for the test spec parsing.

Fixes #1798
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
b77cec05c0 fixed this problem for tagging tests, so that a test
case tagged with `[.foo]` would be parsed as tagged with `[.][foo]`.
This does the same for the test spec parsing.

Fixes #1798
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup tests for C++20</title>
<updated>2019-11-04T09:42:34+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-11-04T09:42:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=c409dccee50fb64723b98fb9c61f00a65393ade4'/>
<id>c409dccee50fb64723b98fb9c61f00a65393ade4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Warning fixes in examples and tests</title>
<updated>2019-10-31T13:29:59+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-10-31T13:29:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=776a4686c7fa783fe3c57b7dbcefba57fe142c55'/>
<id>776a4686c7fa783fe3c57b7dbcefba57fe142c55</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove useless test</title>
<updated>2019-10-29T10:44:24+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-06-22T13:31:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=74e0e737a60d684d660cd2d8c9c0e9bee5e8f56b'/>
<id>74e0e737a60d684d660cd2d8c9c0e9bee5e8f56b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Rework how warning suppression in macros is done</title>
<updated>2019-10-27T20:07:21+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-10-27T20:07:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=849f2848bdf625a7b6248e4e62ba0e39ee609634'/>
<id>849f2848bdf625a7b6248e4e62ba0e39ee609634</id>
<content type='text'>
Previously, each warning suppression was self-contained, with its
own pair of `SUPPRESS_X_WARNING` and `UNSUPPRESS_X_WARNING` macros.
This had the obvious advantage of being self-containing, but it
also meant that if we needed to suppress more than one warning
in a single place, then we would manipulate the compiler's warning
state multiple times, even though logically we would only need one
layer.

The new way of suppressing warnings in macros is to push compiler's
warning state with `CATCH_INTERNAL_START_WARNINGS_SUPPRESSION` macro,
then disable whatever macros we need with the
`CATCH_INTERNAL_SUPPRESS_X_WARNINGS` macro, and then return to the
previous state using `CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, each warning suppression was self-contained, with its
own pair of `SUPPRESS_X_WARNING` and `UNSUPPRESS_X_WARNING` macros.
This had the obvious advantage of being self-containing, but it
also meant that if we needed to suppress more than one warning
in a single place, then we would manipulate the compiler's warning
state multiple times, even though logically we would only need one
layer.

The new way of suppressing warnings in macros is to push compiler's
warning state with `CATCH_INTERNAL_START_WARNINGS_SUPPRESSION` macro,
then disable whatever macros we need with the
`CATCH_INTERNAL_SUPPRESS_X_WARNINGS` macro, and then return to the
previous state using `CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION`.
</pre>
</div>
</content>
</entry>
<entry>
<title>Improve JUnit failure report</title>
<updated>2019-10-27T17:02:14+00:00</updated>
<author>
<name>Alexander Stein</name>
</author>
<published>2019-08-07T20:39:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=2fbd66c51cbf3a406dc6bb8ddc6b9a0b96077a72'/>
<id>2fbd66c51cbf3a406dc6bb8ddc6b9a0b96077a72</id>
<content type='text'>
The JUnit report is improved in that:
* The message shows the testing condition, not the result
* The actual message has similar output than the console one
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The JUnit report is improved in that:
* The message shows the testing condition, not the result
* The actual message has similar output than the console one
</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>Enable `range` generator for floating point types</title>
<updated>2019-10-26T18:52:09+00:00</updated>
<author>
<name>Manuel Drews</name>
</author>
<published>2019-10-16T14:03:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4327baba400f6f8158c4d686135ba7fb6ba10d54'/>
<id>4327baba400f6f8158c4d686135ba7fb6ba10d54</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Rework StringRef interface and internals</title>
<updated>2019-10-25T11:57:52+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-10-21T15:44:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=50cc14c94c972fc743afca92b22ad7bdc63c429a'/>
<id>50cc14c94c972fc743afca92b22ad7bdc63c429a</id>
<content type='text'>
Now it no longer tries to be this weird hybrid between an owning
and non-owning reference, and is only ever non-owning. This is also
reflected in its interface, for example `StringRef::isNullTerminated`
is now public, and `StringRef::c_str()` has the precondition that it
is true.

Overview of the changes:
* The `StringRef::m_data` member has been completely removed, as it
had no more uses.
* `StringRef::isSubstring()` has been made public and renamed to
`StringRef::isNullTerminated()`, so that the name reflects what the
method actually does.
* `StringRef::currentData()` has been renamed to `StringRef::data()`,
to be in line with common C++ containers and container-alikes.
* `StringRef::c_str()` will no longer silently make copies. It instead
has a precondition that `isNullTerminated()` is true.
* If the user needs a null-terminated string, they should use the
`std::string` conversion operator and call `c_str()` on the resulting
`std::string`.
* Some small optimizations in various places.
* Basic functionality is now `constexpr`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now it no longer tries to be this weird hybrid between an owning
and non-owning reference, and is only ever non-owning. This is also
reflected in its interface, for example `StringRef::isNullTerminated`
is now public, and `StringRef::c_str()` has the precondition that it
is true.

Overview of the changes:
* The `StringRef::m_data` member has been completely removed, as it
had no more uses.
* `StringRef::isSubstring()` has been made public and renamed to
`StringRef::isNullTerminated()`, so that the name reflects what the
method actually does.
* `StringRef::currentData()` has been renamed to `StringRef::data()`,
to be in line with common C++ containers and container-alikes.
* `StringRef::c_str()` will no longer silently make copies. It instead
has a precondition that `isNullTerminated()` is true.
* If the user needs a null-terminated string, they should use the
`std::string` conversion operator and call `c_str()` on the resulting
`std::string`.
* Some small optimizations in various places.
* Basic functionality is now `constexpr`.
</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>
</feed>
