<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/tests/SelfTest/IntrospectiveTests/Xml.tests.cpp, branch v3.16.0</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>Improve performance of writing XML</title>
<updated>2025-08-22T15:03:35+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2025-08-22T15:03:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f4e05a67bb5a57ee6e051fc8c391b32cbf927f7d'/>
<id>f4e05a67bb5a57ee6e051fc8c391b32cbf927f7d</id>
<content type='text'>
As with the JSON writer, the old code was made to be simple and
for each char just decided whether it needs escaping, or should be
written as-is. The new code instead looks for characters that need
escaping and batches writes of characters that do not.

This provides 4-8x speedup (length dependent) for writing strings
that do not need escaping, and keeps roughly the same performance
for those that do need escaping.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As with the JSON writer, the old code was made to be simple and
for each char just decided whether it needs escaping, or should be
written as-is. The new code instead looks for characters that need
escaping and batches writes of characters that do not.

This provides 4-8x speedup (length dependent) for writing strings
that do not need escaping, and keeps roughly the same performance
for those that do need escaping.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix references to license file</title>
<updated>2022-10-28T09:30:15+00:00</updated>
<author>
<name>Lars Toenning</name>
</author>
<published>2022-10-28T09:22:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f1084fb30990fe40c8f5b70034970c7eb4e1da72'/>
<id>f1084fb30990fe40c8f5b70034970c7eb4e1da72</id>
<content type='text'>
The license file was renamed with 6a502cc2f5fedd59b3495b58708f0d6d987ed9e1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The license file was renamed with 6a502cc2f5fedd59b3495b58708f0d6d987ed9e1
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix use of u8-literal that would break in C++20</title>
<updated>2022-05-03T11:54:07+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2022-05-03T08:49:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=91ea25e51ac122b2ab2363f89f5a6ee0b91c858c'/>
<id>91ea25e51ac122b2ab2363f89f5a6ee0b91c858c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename catch_stream -&gt; catch_reusable_string_stream</title>
<updated>2022-04-16T14:34:08+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2022-04-16T13:00:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=7b93a2014cb417d277339e3d679cac64bfac237b'/>
<id>7b93a2014cb417d277339e3d679cac64bfac237b</id>
<content type='text'>
After everything else was split out, this name much reflects the
actual contents of the file(s).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
After everything else was split out, this name much reflects the
actual contents of the file(s).
</pre>
</div>
</content>
</entry>
<entry>
<title>Use the new licence header in SelfTest's cpp files</title>
<updated>2022-01-28T23:03:43+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2022-01-28T23:03:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f83332d89b4cad0e6e1583caf6cd3d6b34c41136'/>
<id>f83332d89b4cad0e6e1583caf6cd3d6b34c41136</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add more tests for XmlWrite::write* members</title>
<updated>2021-10-02T12:39:52+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2021-10-01T10:02:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=13670f535fad8ab5db06049366a38f7a364d37d8'/>
<id>13670f535fad8ab5db06049366a38f7a364d37d8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename Contains string matcher builder to ContainsSubstring</title>
<updated>2021-09-27T19:28:33+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2021-09-23T21:28:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=426954032f263754d2fff4cffce8552e7371965e'/>
<id>426954032f263754d2fff4cffce8552e7371965e</id>
<content type='text'>
The problem with the old name was that it collided with the
range matcher `Contains`, and it was not really possible to
disambiguate them just with argument types.

Closes #2131
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The problem with the old name was that it collided with the
range matcher `Contains`, and it was not really possible to
disambiguate them just with argument types.

Closes #2131
</pre>
</div>
</content>
</entry>
<entry>
<title>Add explicit test for serialization of boolean attributes in XML</title>
<updated>2021-05-31T06:41:28+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2021-05-30T18:02:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=5741de9ccdca3f41131c377394b4e3db0f11686c'/>
<id>5741de9ccdca3f41131c377394b4e3db0f11686c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix Wold-style-cast error (#2125)</title>
<updated>2020-12-28T13:00:19+00:00</updated>
<author>
<name>Roman Proskuryakov</name>
</author>
<published>2020-12-28T13:00:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=0acb371b9200140ed958d60b86cbb95663ee93bd'/>
<id>0acb371b9200140ed958d60b86cbb95663ee93bd</id>
<content type='text'>
* Add Wold-style-cast to cmake flags
* Fix old style cast in catch_stats.hpp
* Fix old style cast in catch_stats.cpp
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add Wold-style-cast to cmake flags
* Fix old style cast in catch_stats.hpp
* Fix old style cast in catch_stats.cpp
</pre>
</div>
</content>
</entry>
<entry>
<title>Make XmlEncoding tests slightly more efficient</title>
<updated>2020-08-18T19:02:31+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2020-08-18T11:47:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f16be402f77eaea8996b60299f670bfa557cee52'/>
<id>f16be402f77eaea8996b60299f670bfa557cee52</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
