// Copyright Catch2 Authors // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE.txt or copy at // https://www.boost.org/LICENSE_1_0.txt) // SPDX-License-Identifier: BSL-1.0 #include #include #include #include namespace Catch { ReporterBase::ReporterBase( ReporterConfig&& config ): IEventListener( config.fullConfig() ), m_wrapped_stream( CATCH_MOVE(config).takeStream() ), m_stream( m_wrapped_stream->stream() ), m_colour( makeColourImpl( config.colourMode(), m_wrapped_stream.get() ) ), m_customOptions( config.customOptions() ) {} ReporterBase::~ReporterBase() = default; void ReporterBase::listReporters( std::vector const& descriptions ) { defaultListReporters(m_stream, descriptions, m_config->verbosity()); } void ReporterBase::listListeners( std::vector const& descriptions ) { defaultListListeners( m_stream, descriptions ); } void ReporterBase::listTests(std::vector const& tests) { defaultListTests(m_stream, m_colour.get(), tests, m_config->hasTestFilters(), m_config->verbosity()); } void ReporterBase::listTags(std::vector const& tags) { defaultListTags( m_stream, tags, m_config->hasTestFilters() ); } } // namespace Catch