Store IStream instance owning ptrs in reporter instances

This ended up being a surprisingly large refactoring, motivated
by removing a `const_cast` from `Config`'s handling of reporter
streams, forced by previous commit.
This commit is contained in:
Martin Hořeňovský
2022-04-12 21:22:43 +02:00
parent 4f09f1120b
commit 79d1e82381
38 changed files with 124 additions and 109 deletions

View File

@@ -13,6 +13,7 @@
#include <catch2/internal/catch_string_manip.hpp>
#include <catch2/internal/catch_list.hpp>
#include <catch2/catch_test_case_info.hpp>
#include <catch2/internal/catch_move_and_forward.hpp>
#if defined(_MSC_VER)
#pragma warning(push)
@@ -22,8 +23,8 @@
#endif
namespace Catch {
XmlReporter::XmlReporter( ReporterConfig const& _config )
: StreamingReporterBase( _config ),
XmlReporter::XmlReporter( ReporterConfig&& _config )
: StreamingReporterBase( CATCH_MOVE(_config) ),
m_xml(m_stream)
{
m_preferences.shouldRedirectStdOut = true;