<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/examples, branch v3.7.1</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>TEST_CASE_PERSISTENT_FIXTURE: A new fixture macro for allowing persistent fixtures throughout a TEST_CASE (#2885)</title>
<updated>2024-08-05T15:01:41+00:00</updated>
<author>
<name>Keith Stockdale</name>
</author>
<published>2024-08-05T15:01:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f7cd0ba0511b61592e70f07533d7ea30a8a5395d'/>
<id>f7cd0ba0511b61592e70f07533d7ea30a8a5395d</id>
<content type='text'>
This PR introduces a new `TEST_CASE` macro called `TEST_CASE_PERSISTENT_FIXTURE`. `TEST_CASE_PERSISTENT_FIXTURE` offers the same functionality as `TEST_CASE_METHOD` except for one difference. The object on which the test method is invoked is only created once for all invocations of the test case. The object is created just after the `testCaseStarting` event is broadcast and the object is destroyed just before the `testCaseEnding` event is broadcast.

The main motivation for this new functionality is to allow `TEST_CASE`s to do expensive setup and teardown once per `TEST_CASE`, without having to resort to abusing event listeners or static function variables with manual initialization.


Implements #1602

---------

Co-authored-by: Martin Hořeňovský &lt;martin.horenovsky@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR introduces a new `TEST_CASE` macro called `TEST_CASE_PERSISTENT_FIXTURE`. `TEST_CASE_PERSISTENT_FIXTURE` offers the same functionality as `TEST_CASE_METHOD` except for one difference. The object on which the test method is invoked is only created once for all invocations of the test case. The object is created just after the `testCaseStarting` event is broadcast and the object is destroyed just before the `testCaseEnding` event is broadcast.

The main motivation for this new functionality is to allow `TEST_CASE`s to do expensive setup and teardown once per `TEST_CASE`, without having to resort to abusing event listeners or static function variables with manual initialization.


Implements #1602

---------

Co-authored-by: Martin Hořeňovský &lt;martin.horenovsky@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Remove unnecessary CMake variables (#2853)</title>
<updated>2024-04-11T13:39:08+00:00</updated>
<author>
<name>Chris Thrasher</name>
</author>
<published>2024-04-11T13:39:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=838f8d71cbcab1007158fc70cd7c50a4acbd26e2'/>
<id>838f8d71cbcab1007158fc70cd7c50a4acbd26e2</id>
<content type='text'>
* Remove unnecessary variable

* Remove unused variable</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Remove unnecessary variable

* Remove unused variable</pre>
</div>
</content>
</entry>
<entry>
<title>Fix various useful clang-tidy warnings</title>
<updated>2024-03-01T20:24:45+00:00</updated>
<author>
<name>Martin Jeřábek</name>
</author>
<published>2024-03-01T10:15:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=cde35096641d55b4aa0f743bb03e04703fbb5e9c'/>
<id>cde35096641d55b4aa0f743bb03e04703fbb5e9c</id>
<content type='text'>
* bugprone-branch-clone
* bugprone-copy-constructor-init
* bugprone-empty-catch
* bugprone-sizeof-expression
* bugprone-switch-missing-default-case
* bugprone-unused-local-non-trivial-variable
* clang-analyzer-core.uninitialized.Assign
* clang-analyzer-cplusplus.Move
* clang-analyzer-optin.cplusplus.VirtualCall
* modernize-loop-convert
* modernize-raw-string-literal
* modernize-use-equals-default
* modernize-use-override
* modernize-use-using
* performance-avoid-endl
* performance-inefficient-string-concatenation
* performance-inefficient-vector-operation
* performance-noexcept-move-constructor
* performance-unnecessary-value-param (and improve generator example)
* readability-duplicate-include
* readability-inconsistent-declaration-parameter-name
* readability-non-const-parameter
* readability-redundant-casting
* readability-redundant-member-init
* readability-redundant-smartptr-get
* readability-static-accessed-through-instance
* unused variable in amalgamted tests
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* bugprone-branch-clone
* bugprone-copy-constructor-init
* bugprone-empty-catch
* bugprone-sizeof-expression
* bugprone-switch-missing-default-case
* bugprone-unused-local-non-trivial-variable
* clang-analyzer-core.uninitialized.Assign
* clang-analyzer-cplusplus.Move
* clang-analyzer-optin.cplusplus.VirtualCall
* modernize-loop-convert
* modernize-raw-string-literal
* modernize-use-equals-default
* modernize-use-override
* modernize-use-using
* performance-avoid-endl
* performance-inefficient-string-concatenation
* performance-inefficient-vector-operation
* performance-noexcept-move-constructor
* performance-unnecessary-value-param (and improve generator example)
* readability-duplicate-include
* readability-inconsistent-declaration-parameter-name
* readability-non-const-parameter
* readability-redundant-casting
* readability-redundant-member-init
* readability-redundant-smartptr-get
* readability-static-accessed-through-instance
* unused variable in amalgamted tests
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix adding Opts with | to lvalue Parser</title>
<updated>2024-01-02T22:27:13+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-01-02T22:27:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=863c662c0eff026300f4d729a7054e90d6d12cdd'/>
<id>863c662c0eff026300f4d729a7054e90d6d12cdd</id>
<content type='text'>
This is the recommended way of adding new Opts in our documentation
for using custom main, but we did not compile the code to see if it
works. We now compile the example as part of the BUILD_EXAMPLES
option.

Fixes #2787
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is the recommended way of adding new Opts in our documentation
for using custom main, but we did not compile the code to see if it
works. We now compile the example as part of the BUILD_EXAMPLES
option.

Fixes #2787
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix clang warning about redundant link libraries</title>
<updated>2023-12-28T22:54:30+00:00</updated>
<author>
<name>Chris Thrasher</name>
</author>
<published>2023-12-28T22:27:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=048d7f779657ad1879e9962a6a55537eb86e3e13'/>
<id>048d7f779657ad1879e9962a6a55537eb86e3e13</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add nice license headers to files in examples/ and fuzzing/</title>
<updated>2023-08-24T14:34:31+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-08-24T14:33:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=85eb4652b46cc69c4ad7915c9fd3b009d99e9fb7'/>
<id>85eb4652b46cc69c4ad7915c9fd3b009d99e9fb7</id>
<content type='text'>
Related to #2730
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Related to #2730
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix spelling</title>
<updated>2023-04-29T10:55:51+00:00</updated>
<author>
<name>Vertexwahn</name>
</author>
<published>2023-04-25T18:14:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=46539b6d9b1d429fcc2261d3e687482c878a9ddb'/>
<id>46539b6d9b1d429fcc2261d3e687482c878a9ddb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't set C++ standard in CMakeLists for tests</title>
<updated>2022-10-29T19:04:58+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2022-10-28T14:01:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=82cec69e93a90293afae10d826b42aa7e716e934'/>
<id>82cec69e93a90293afae10d826b42aa7e716e934</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Raise the minimum CMake version to 3.10 (#2523)</title>
<updated>2022-09-16T15:56:00+00:00</updated>
<author>
<name>Dimitrij Mijoski</name>
</author>
<published>2022-09-16T15:56:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=98d37da03ee21e8a87cd3e0e6542c794c667e78b'/>
<id>98d37da03ee21e8a87cd3e0e6542c794c667e78b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update documentation - add pkg-config examples.</title>
<updated>2022-06-05T13:58:41+00:00</updated>
<author>
<name>Petr Kubánek</name>
</author>
<published>2022-05-24T08:07:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=0c13d021da4ff937a33279207fb57e000781d86c'/>
<id>0c13d021da4ff937a33279207fb57e000781d86c</id>
<content type='text'>
Use -std=c++14 (instead of c++11). Pointers how to integrate with
pkg-config for non-CMake projects.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use -std=c++14 (instead of c++11). Pointers how to integrate with
pkg-config for non-CMake projects.
</pre>
</div>
</content>
</entry>
</feed>
