<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/tests/SelfTest, branch v3.0.0-preview3</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>Support sentinel-based ranges in default stringify (#2004)</title>
<updated>2020-09-07T12:23:47+00:00</updated>
<author>
<name>Sean Middleditch</name>
</author>
<published>2020-08-18T08:34:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=31d483124532184aefc9595903af7493c206b874'/>
<id>31d483124532184aefc9595903af7493c206b874</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Sweep out Wshadow</title>
<updated>2020-09-06T11:11:42+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-09-06T11:10:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=cc18bd719da38e5415909f5b10199395f00076e6'/>
<id>cc18bd719da38e5415909f5b10199395f00076e6</id>
<content type='text'>
Most of the changes are completely pointless renaming of constructor
arguments so that they do not use the same name as the type members,
but :shrug:

Closes #2015
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most of the changes are completely pointless renaming of constructor
arguments so that they do not use the same name as the type members,
but :shrug:

Closes #2015
</pre>
</div>
</content>
</entry>
<entry>
<title>Split EventListener base from streaming_base.hpp</title>
<updated>2020-08-29T17:09:54+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-08-24T20:52:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=33ad1ee2ac7beaae8d6bfa661213d13cecbce196'/>
<id>33ad1ee2ac7beaae8d6bfa661213d13cecbce196</id>
<content type='text'>
The base was also renamed from `TestEventListenerBase` to
`EventListenerBase`, and modified to derive directly from the
reporter interface, rather than deriving from `StreamingReporterBase`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The base was also renamed from `TestEventListenerBase` to
`EventListenerBase`, and modified to derive directly from the
reporter interface, rather than deriving from `StreamingReporterBase`.
</pre>
</div>
</content>
</entry>
<entry>
<title>Split catch_reporter_bases.hpp into two separate headers</title>
<updated>2020-08-23T05:30:26+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-08-22T21:16:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=ed7eaf2df3dc4d38974234591d725c4cdba11a84'/>
<id>ed7eaf2df3dc4d38974234591d725c4cdba11a84</id>
<content type='text'>
Each of the two reporter bases now has its own header file, and
cpp file. Even though this adds another TU to the compilation,
the total CPU time taken by compilation is reduced by about 1%
for debug build and ~0.5% for optimized build of the main library.
(The improvement would be roughly doubles without splitting the TUs,
but the maintainability hit is not worth it.)

The code size of the static library build has also somewhat decreased.

Follow up: Introduce combined TU for reporters, and further split
apart the catch_reporter_streaming_base.hpp header into its
constituent parts, as it still contains a whole bunch of other stuff.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Each of the two reporter bases now has its own header file, and
cpp file. Even though this adds another TU to the compilation,
the total CPU time taken by compilation is reduced by about 1%
for debug build and ~0.5% for optimized build of the main library.
(The improvement would be roughly doubles without splitting the TUs,
but the maintainability hit is not worth it.)

The code size of the static library build has also somewhat decreased.

Follow up: Introduce combined TU for reporters, and further split
apart the catch_reporter_streaming_base.hpp header into its
constituent parts, as it still contains a whole bunch of other stuff.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup some stuff found by MSVC's /analyze</title>
<updated>2020-08-20T18:42:21+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-08-19T15:44:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=1a97af45f168b24769301906cad9dcfe235d78e5'/>
<id>1a97af45f168b24769301906cad9dcfe235d78e5</id>
<content type='text'>
* Added some missing `noexcept`s on custom destructors.
* Fixed `std::move` being called on a const-reference.
* Initialized `ScopedMessage::m_moved` in class definition, instead
of doing so in constructors explicitly.
* Turned some `enum`s into `enum class`es.
* Initialized `StreamingReporterBase::currentTestCaseInfo` in class
definition.
* Some cleanups in SelfTest code.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Added some missing `noexcept`s on custom destructors.
* Fixed `std::move` being called on a const-reference.
* Initialized `ScopedMessage::m_moved` in class definition, instead
of doing so in constructors explicitly.
* Turned some `enum`s into `enum class`es.
* Initialized `StreamingReporterBase::currentTestCaseInfo` in class
definition.
* Some cleanups in SelfTest code.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make XmlEncoding tests slightly more efficient</title>
<updated>2020-08-18T19:02:31+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-08-18T11:47:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f16be402f77eaea8996b60299f670bfa557cee52'/>
<id>f16be402f77eaea8996b60299f670bfa557cee52</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Refactor how shortcircuiting of old style matchers is tested</title>
<updated>2020-07-26T19:31:29+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-07-26T19:31:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=5ca68829e10cc28471d2340439b53a41e8ff4e63'/>
<id>5ca68829e10cc28471d2340439b53a41e8ff4e63</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add test for shortcircuiting behaviour of generic matcher combinators</title>
<updated>2020-07-26T19:24:05+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-07-26T19:22:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=ac54ba7e12b77a4d88a42ee19cb193c4bd3c33ad'/>
<id>ac54ba7e12b77a4d88a42ee19cb193c4bd3c33ad</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update catch_reporter_tap.hpp</title>
<updated>2020-07-26T12:00:10+00:00</updated>
<author>
<name>Gavin S</name>
</author>
<published>2020-07-12T08:17:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=87d0197cbdc72a53b2dbbd5fe724ebcaa6fa7500'/>
<id>87d0197cbdc72a53b2dbbd5fe724ebcaa6fa7500</id>
<content type='text'>
TAP format requires all results to be reported.
Removed extraneous preferences function (handled by parent)
Incorporated fix from 3d9e7db2e0fff8fc2edcf59d24351f3937e3ac62
Simplified total printing
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
TAP format requires all results to be reported.
Removed extraneous preferences function (handled by parent)
Incorporated fix from 3d9e7db2e0fff8fc2edcf59d24351f3937e3ac62
Simplified total printing
</pre>
</div>
</content>
</entry>
<entry>
<title>Modify generator tracking to allow GENERATEs between SECTIONs</title>
<updated>2020-07-26T09:35:06+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-07-04T15:45:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4565b826cff3f8c11325c23d1536ded6acd8fa78'/>
<id>4565b826cff3f8c11325c23d1536ded6acd8fa78</id>
<content type='text'>
This means that code such as

```cpp
TEST_CASE() {
    SECTION("first") { SUCCEED(); }
    auto _ = GENERATE(1, 2);
    SECTION("second") { SUCCEED(); }
}
```

will run and report 3 assertions, 1 from section "first" and 2
from section "second". This also applies for greater and potentially
more confusing nesting, but fundamentally it is up to the user to
avoid overly complex and confusing nestings, just as with `SECTION`s.

The old behaviour of `GENERATE` as first thing in a `TEST_CASE`,
`GENERATE` not followed by a `SECTION`, etc etc should be unchanged.

Closes #1938
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This means that code such as

```cpp
TEST_CASE() {
    SECTION("first") { SUCCEED(); }
    auto _ = GENERATE(1, 2);
    SECTION("second") { SUCCEED(); }
}
```

will run and report 3 assertions, 1 from section "first" and 2
from section "second". This also applies for greater and potentially
more confusing nesting, but fundamentally it is up to the user to
avoid overly complex and confusing nestings, just as with `SECTION`s.

The old behaviour of `GENERATE` as first thing in a `TEST_CASE`,
`GENERATE` not followed by a `SECTION`, etc etc should be unchanged.

Closes #1938
</pre>
</div>
</content>
</entry>
</feed>
