<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/tests/SelfTest/IntrospectiveTests, branch v3.5.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>less copies and allocations in replaceInPlace</title>
<updated>2024-03-01T20:24:45+00:00</updated>
<author>
<name>Martin Jeřábek</name>
</author>
<published>2024-02-25T17:01:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4d8affc989cc13f60796f66781b8729d175c18e9'/>
<id>4d8affc989cc13f60796f66781b8729d175c18e9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</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>Disable tests for reproducible FP on non-SSE2 x86 targets</title>
<updated>2024-02-10T23:25:24+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-02-10T21:02:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=d937427f1f8ae5c61f4c4849a6f860764f2f82b7'/>
<id>d937427f1f8ae5c61f4c4849a6f860764f2f82b7</id>
<content type='text'>
Without SSE2 enabled, x86 targets will use x87 FPU, which breaks
the tests checking for reproducible results from our random
floating point number generators. The output is still reproducible,
at least between binaries targetting x87, but the tests hardcode
results for the whole pipeline being done in 32/64bit precision.

Closes #2796
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Without SSE2 enabled, x86 targets will use x87 FPU, which breaks
the tests checking for reproducible results from our random
floating point number generators. The output is still reproducible,
at least between binaries targetting x87, but the tests hardcode
results for the whole pipeline being done in 32/64bit precision.

Closes #2796
</pre>
</div>
</content>
</entry>
<entry>
<title>Add tests for scaled ULP distance between +/- FLT/DBL_MAX</title>
<updated>2024-01-14T20:15:02+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-01-14T20:07:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=7f931d6df49bc8810707084480b03259f96d6f72'/>
<id>7f931d6df49bc8810707084480b03259f96d6f72</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix uniform_floating_point_distribution for unit ranges</title>
<updated>2023-12-10T18:53:46+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-12-10T15:26:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=cb07ff9a7eaf586bfcd74337373192733090675d'/>
<id>cb07ff9a7eaf586bfcd74337373192733090675d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Make uniform_floating_point_distribution reproducible</title>
<updated>2023-12-10T18:53:41+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-12-10T11:10:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=28c66fdc5a7329aaad33db611944b832564af4d3'/>
<id>28c66fdc5a7329aaad33db611944b832564af4d3</id>
<content type='text'>
By moving to use our `uniform_integer_distribution`, which is
reproducible across different platforms, instead of the stdlib
one which is not, we can provide reproducible results for `float`s
and `double`s. Still no reproducibility for `long double`s, because
those are too different across different platforms.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
By moving to use our `uniform_integer_distribution`, which is
reproducible across different platforms, instead of the stdlib
one which is not, we can provide reproducible results for `float`s
and `double`s. Still no reproducibility for `long double`s, because
those are too different across different platforms.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add uniform_integer_distribution</title>
<updated>2023-12-10T18:53:39+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-12-08T21:01:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=ed9d672b5ced5647d8420f3b4d040199a3281a2b'/>
<id>ed9d672b5ced5647d8420f3b4d040199a3281a2b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add helpers for implementing uniform integer distribution</title>
<updated>2023-12-10T18:53:36+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-11-28T22:26:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=04a829b0e13401049707c7c70e95c3cc0c73ba22'/>
<id>04a829b0e13401049707c7c70e95c3cc0c73ba22</id>
<content type='text'>
* Utility for extended mult n x n bits -&gt; 2n bits
* Utility to adapt output from URBG to target (unsigned) integral
  type
* Utility to reorder signed values into unsigned type while keeping
  the order.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Utility for extended mult n x n bits -&gt; 2n bits
* Utility to adapt output from URBG to target (unsigned) integral
  type
* Utility to reorder signed values into unsigned type while keeping
  the order.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add uniform_floating_point_distribution</title>
<updated>2023-12-10T17:44:12+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-11-20T14:16:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=ab1b079e4deb159a6f56c9168031876a697a7d2c'/>
<id>ab1b079e4deb159a6f56c9168031876a697a7d2c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add implementation of helpers for uniform float distribution</title>
<updated>2023-12-10T17:44:10+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-11-19T20:00:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=d139b4ff7cd8823923e8616e8fef954e09e46322'/>
<id>d139b4ff7cd8823923e8616e8fef954e09e46322</id>
<content type='text'>
Specifically we add
 * `gamma(a, b)`, which returns the magnitude of largest 1-ULP
   step in range [a, b].
 * `count_equidistant_float(a, b, distance)`, which returns the
   number of equi-distant floats in range [a, b].
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Specifically we add
 * `gamma(a, b)`, which returns the magnitude of largest 1-ULP
   step in range [a, b].
 * `count_equidistant_float(a, b, distance)`, which returns the
   number of equi-distant floats in range [a, b].
</pre>
</div>
</content>
</entry>
</feed>
