<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/tests/SelfTest/UsageTests, 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>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>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>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>Add explicit test for shortcircuiting behaviour of combined matchers</title>
<updated>2020-07-22T19:36:14+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-06-14T19:48:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=0e77adee059f2d43ef6278f872f4c5a6198fc957'/>
<id>0e77adee059f2d43ef6278f872f4c5a6198fc957</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix copy paste error in 7-arg TEMPLATE_TEST_CASE_SIG implementation</title>
<updated>2020-07-22T19:18:52+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-06-13T13:41:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=de53773e468d401426c8f6413a72d2279a81c09c'/>
<id>de53773e468d401426c8f6413a72d2279a81c09c</id>
<content type='text'>
Closes #1954
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Closes #1954
</pre>
</div>
</content>
</entry>
<entry>
<title>Improved generator tracking</title>
<updated>2020-07-22T18:44:22+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-06-01T17:04:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=480f3f418b07cba56421041564211f24d8376e37'/>
<id>480f3f418b07cba56421041564211f24d8376e37</id>
<content type='text'>
* Successive executions of the same `GENERATE` macro (e.g. because
of a for loop) no longer lead to multiple nested generators.
* The same line can now contain multiple `GENERATE` macros without
issues.

Fixes #1913
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Successive executions of the same `GENERATE` macro (e.g. because
of a for loop) no longer lead to multiple nested generators.
* The same line can now contain multiple `GENERATE` macros without
issues.

Fixes #1913
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace all uses of std::unique_ptr with Catch::Detail::unique_ptr</title>
<updated>2020-05-31T13:20:24+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-05-25T07:45:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=1d1ccf8f3c0c9e121b16afd4fafb850d14ef9fb0'/>
<id>1d1ccf8f3c0c9e121b16afd4fafb850d14ef9fb0</id>
<content type='text'>
Doing some benchmarking with ClangBuildAnalyzer suggests that
compiling Catch2's `SelfTest` spends 10% of the time instantiating
`std::unique_ptr` for some interface types required for registering
and running tests.

The lesser compilation overhead of `Catch::Detail::unique_ptr` should
significantly reduce that time.

The compiled implementation was also changed to use the custom impl,
to avoid having to convert between using `std::unique_ptr` and
`Catch::Detail::unique_ptr`. This will likely also improve the compile
times of the implementation, but that is less important than improving
compilation times of the user's TUs with tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Doing some benchmarking with ClangBuildAnalyzer suggests that
compiling Catch2's `SelfTest` spends 10% of the time instantiating
`std::unique_ptr` for some interface types required for registering
and running tests.

The lesser compilation overhead of `Catch::Detail::unique_ptr` should
significantly reduce that time.

The compiled implementation was also changed to use the custom impl,
to avoid having to convert between using `std::unique_ptr` and
`Catch::Detail::unique_ptr`. This will likely also improve the compile
times of the implementation, but that is less important than improving
compilation times of the user's TUs with tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>Translate exceptions by const reference instead of plain ref</title>
<updated>2020-05-20T06:15:27+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-05-19T19:23:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4394d3ae65e076c749dc95a27f3178b94ba09e94'/>
<id>4394d3ae65e076c749dc95a27f3178b94ba09e94</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Split CATCH_TRANSLATE_EXCEPTION into its own header</title>
<updated>2020-05-20T06:15:11+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-05-19T19:16:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4b2f1da02a37d111b572551f4bd8ed765b06ca28'/>
<id>4b2f1da02a37d111b572551f4bd8ed765b06ca28</id>
<content type='text'>
As far as I know, only a few users actually use it, but these changes
allow us to avoid including a surprising amount of code in the main
compilation path.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As far as I know, only a few users actually use it, but these changes
allow us to avoid including a surprising amount of code in the main
compilation path.
</pre>
</div>
</content>
</entry>
</feed>
