<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/include/internal/catch_test_case_info.cpp, 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>Make hidden tags behave identically (#1847)</title>
<updated>2020-01-31T20:44:06+00:00</updated>
<author>
<name>dmsteck</name>
</author>
<published>2020-01-31T20:44:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=481f54b357f033df0edc8bd457c175a2f2236d08'/>
<id>481f54b357f033df0edc8bd457c175a2f2236d08</id>
<content type='text'>
Add both `[.]` and `[!hide]` tags when registering a hidden test case, as per documentation.

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>
Add both `[.]` and `[!hide]` tags when registering a hidden test case, as per documentation.

Co-authored-by: Martin Hořeňovský &lt;martin.horenovsky@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Some refactorings:</title>
<updated>2020-01-25T08:01:04+00:00</updated>
<author>
<name>offa</name>
</author>
<published>2020-01-21T20:04:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=2d172dc688ffab0867a94928159e93384475a870'/>
<id>2d172dc688ffab0867a94928159e93384475a870</id>
<content type='text'>
 - Overrides added
 - usages of push_back() replaced with emplace_back()
 - Loop variable made const-refernce
 - NULL replaced with nullptr
 - Names used in the declaration and definition unified
 - size() replaced with empty
 - Identical cases merged
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 - Overrides added
 - usages of push_back() replaced with emplace_back()
 - Loop variable made const-refernce
 - NULL replaced with nullptr
 - Names used in the declaration and definition unified
 - size() replaced with empty
 - Identical cases merged
</pre>
</div>
</content>
</entry>
<entry>
<title>Make StringRef's operator std::string explicit</title>
<updated>2019-09-08T13:58:10+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-09-08T12:49:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=7b865daccc7bba2dcc25a4f0b9ea7348b1b4d61f'/>
<id>7b865daccc7bba2dcc25a4f0b9ea7348b1b4d61f</id>
<content type='text'>
This way it is explicit when there is a `StringRef` -&gt; `std::string`
conversion and makes it easier to look for allocations that could
be avoided.

Doing this has already removed one allocation per registered test
case, as there was a completely pointless `StringRef` -&gt; `std::string`
conversion when parsing tags of a test case.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This way it is explicit when there is a `StringRef` -&gt; `std::string`
conversion and makes it easier to look for allocations that could
be avoided.

Doing this has already removed one allocation per registered test
case, as there was a completely pointless `StringRef` -&gt; `std::string`
conversion when parsing tags of a test case.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix typos identified by codespell.</title>
<updated>2019-04-10T07:42:11+00:00</updated>
<author>
<name>Ryan Pavlik</name>
</author>
<published>2019-04-08T21:30:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=edde6f473604c6364476d2963939272ac7c795d4'/>
<id>edde6f473604c6364476d2963939272ac7c795d4</id>
<content type='text'>
Self test baselines also modified accordingly, due to
one typo found in a string in test code.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Self test baselines also modified accordingly, due to
one typo found in a string in test code.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix test tag parsing to split  [.foo] into [.][foo]</title>
<updated>2019-03-29T09:48:56+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2019-03-29T09:48:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=b77cec05c0b3a089e69a709e07c964ff842e5611'/>
<id>b77cec05c0b3a089e69a709e07c964ff842e5611</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Moved inline functions in cpp files into anon namespaces</title>
<updated>2018-06-12T13:09:30+00:00</updated>
<author>
<name>Phil Nash</name>
</author>
<published>2018-06-12T13:09:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=b8553d62a3a98ac9d358d20b48cf99f775291557'/>
<id>b8553d62a3a98ac9d358d20b48cf99f775291557</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed errors and warnings on OC project</title>
<updated>2018-06-12T12:42:33+00:00</updated>
<author>
<name>Phil Nash</name>
</author>
<published>2018-06-12T12:42:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=788f81230f80cec0551e345cbe42e7d9288fe1f7'/>
<id>788f81230f80cec0551e345cbe42e7d9288fe1f7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Cast to unsigned char when using std::isalnum</title>
<updated>2018-04-29T18:28:35+00:00</updated>
<author>
<name>Ian Hattendorf</name>
</author>
<published>2018-04-29T06:23:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=88a6ff0b65b375fcf1c502b2de3f8f360ecff649'/>
<id>88a6ff0b65b375fcf1c502b2de3f8f360ecff649</id>
<content type='text'>
std::isalnum expects an int in the range of unsigned char or -1 (EOF),
otherwise it exhibits undefined behavior. Casting from char to unsigned
char avoids this.

MSVC warns about this when compiling with /analyze.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
std::isalnum expects an int in the range of unsigned char or -1 (EOF),
otherwise it exhibits undefined behavior. Casting from char to unsigned
char avoids this.

MSVC warns about this when compiling with /analyze.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup for performance reasons</title>
<updated>2018-03-02T15:24:35+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2018-03-02T15:22:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=d2ddb997a74f698e10ac3debbfc48b3722caf3eb'/>
<id>d2ddb997a74f698e10ac3debbfc48b3722caf3eb</id>
<content type='text'>
* Eliminated some copies
* Made makeTestCase fit into 4 arguments -- avoids spills on Win64
* Made string literals into StringRef literals
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Eliminated some copies
* Made makeTestCase fit into 4 arguments -- avoids spills on Win64
* Made string literals into StringRef literals
</pre>
</div>
</content>
</entry>
<entry>
<title>Introduced ReusableStringStream and removed all uses of std::ostringstream from the main path</title>
<updated>2017-11-07T18:01:10+00:00</updated>
<author>
<name>Phil Nash</name>
</author>
<published>2017-11-07T18:01:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=56e107561362147dc13f63294a9a5b90b855697b'/>
<id>56e107561362147dc13f63294a9a5b90b855697b</id>
<content type='text'>
ReusableStringStream holds a std::ostringstream internally, but only exposes the ostream interface.
It caches a pool of ostringstreams in a vector which is currently global, but will be made thread-local.

Altogether this should enable both runtime and compile-time benefits. although more work is needed to realise the compile time opportunities.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ReusableStringStream holds a std::ostringstream internally, but only exposes the ostream interface.
It caches a pool of ostringstreams in a vector which is currently global, but will be made thread-local.

Altogether this should enable both runtime and compile-time benefits. although more work is needed to realise the compile time opportunities.
</pre>
</div>
</content>
</entry>
</feed>
