<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/projects/SelfTest/UsageTests, branch v2.13.2</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>Modify generator tracking to allow GENERATEs between SECTIONs</title>
<updated>2020-07-11T21:16:07+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=b79a83e4aa6641a00c32b760456507b1745fc06e'/>
<id>b79a83e4aa6641a00c32b760456507b1745fc06e</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>
<entry>
<title>Add explicit test for shortcircuiting behaviour of combined matchers</title>
<updated>2020-06-14T19:48:08+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=1806b215457ff90cfdc7d0eaaacbdf21f7a02d3c'/>
<id>1806b215457ff90cfdc7d0eaaacbdf21f7a02d3c</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-06-13T13:46:59+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=cbbebb65b60eaef6dc7d5a51a2d6eaf9a6f1c1a8'/>
<id>cbbebb65b60eaef6dc7d5a51a2d6eaf9a6f1c1a8</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-06-01T17:06:51+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=9500ded83b66ea02472833684135ab8573da5e2d'/>
<id>9500ded83b66ea02472833684135ab8573da5e2d</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>Add support for bitwise xor to the decomposer</title>
<updated>2020-04-21T17:27:12+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-04-21T17:27:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=5c9f09e94a32ab47f16bf8353a708e226fccf645'/>
<id>5c9f09e94a32ab47f16bf8353a708e226fccf645</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixup template type argument inference for vector matchers</title>
<updated>2020-04-21T17:09:45+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-04-21T17:09:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f4fc2dab2c5bb8cab11b0a0dde8a8421076c30f9'/>
<id>f4fc2dab2c5bb8cab11b0a0dde8a8421076c30f9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Support bitand and bitor in REQUIRE/CHECK</title>
<updated>2020-04-21T09:00:08+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-04-21T09:00:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4e4171420d8c3ada47d8782f419908e47e2564ad'/>
<id>4e4171420d8c3ada47d8782f419908e47e2564ad</id>
<content type='text'>
This means that bit-flag-like types with conversion to bool can be
asserted on, like so `REQUIRE(var &amp; Flags::AddNewline)`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This means that bit-flag-like types with conversion to bool can be
asserted on, like so `REQUIRE(var &amp; Flags::AddNewline)`.
</pre>
</div>
</content>
</entry>
<entry>
<title>Support custom allocators in vector Matchers (#1909)</title>
<updated>2020-04-16T13:36:54+00:00</updated>
<author>
<name>schallerr</name>
</author>
<published>2020-04-16T13:36:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=38f897c88772d6640196d1bd617ebbcaf44bc05a'/>
<id>38f897c88772d6640196d1bd617ebbcaf44bc05a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix compilation error when lambdas are used in assertions</title>
<updated>2020-03-19T12:32:45+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-03-19T12:32:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=3a33315ff8e047b1ff46b1ee2a5be3fdd7fbac08'/>
<id>3a33315ff8e047b1ff46b1ee2a5be3fdd7fbac08</id>
<content type='text'>
This is a partial revert of b7b346c3e5603.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a partial revert of b7b346c3e5603.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make warnings in assertions fire for GCC/Clang again</title>
<updated>2020-03-19T08:45:41+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-03-18T19:59:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=b7b346c3e56030d19ac58d33326b69bbaf226552'/>
<id>b7b346c3e56030d19ac58d33326b69bbaf226552</id>
<content type='text'>
The old code caused warnings to fire under MSVC, and Clang &lt;3.8.
I could not find a GCC version where it worked, but I assume that it
did at some point.

This new code causes all of MSVC, GCC, Clang, in current versions,
to emit signed/unsigned comparison warning in test like this:

```cpp
TEST_CASE() {
    int32_t i = -1;
    uint32_t j = 1;
    REQUIRE(i != j);
}
```

Where previously only MSVC would emit the warning.

Fixes #1880
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The old code caused warnings to fire under MSVC, and Clang &lt;3.8.
I could not find a GCC version where it worked, but I assume that it
did at some point.

This new code causes all of MSVC, GCC, Clang, in current versions,
to emit signed/unsigned comparison warning in test like this:

```cpp
TEST_CASE() {
    int32_t i = -1;
    uint32_t j = 1;
    REQUIRE(i != j);
}
```

Where previously only MSVC would emit the warning.

Fixes #1880
</pre>
</div>
</content>
</entry>
</feed>
