mirror of
https://github.com/catchorg/Catch2.git
synced 2024-12-23 11:43:29 +01:00
e5280b2c57
Adding a --force-colour option to force colour output on POSIX systems, provided a debugger is not attached. This allows for Catch to output colours even if STDOUT is not a tty, which can be the case when the test executable is being spawned by a parent process (e.g. CMake's ctest).
64 lines
1.7 KiB
C++
64 lines
1.7 KiB
C++
/*
|
|
* Created by Phil on 05/06/2012.
|
|
* Copyright 2012 Two Blue Cubes Ltd. All rights reserved.
|
|
*
|
|
* Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
* file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
*/
|
|
#ifndef TWOBLUECUBES_CATCH_INTERFACES_CONFIG_H_INCLUDED
|
|
#define TWOBLUECUBES_CATCH_INTERFACES_CONFIG_H_INCLUDED
|
|
|
|
#include <iostream>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
#include "catch_ptr.hpp"
|
|
|
|
namespace Catch {
|
|
|
|
struct Verbosity { enum Level {
|
|
NoOutput = 0,
|
|
Quiet,
|
|
Normal
|
|
}; };
|
|
|
|
struct WarnAbout { enum What {
|
|
Nothing = 0x00,
|
|
NoAssertions = 0x01
|
|
}; };
|
|
|
|
struct ShowDurations { enum OrNot {
|
|
DefaultForReporter,
|
|
Always,
|
|
Never
|
|
}; };
|
|
struct RunTests { enum InWhatOrder {
|
|
InDeclarationOrder,
|
|
InLexicographicalOrder,
|
|
InRandomOrder
|
|
}; };
|
|
|
|
class TestSpec;
|
|
|
|
struct IConfig : IShared {
|
|
|
|
virtual ~IConfig();
|
|
|
|
virtual bool allowThrows() const = 0;
|
|
virtual std::ostream& stream() const = 0;
|
|
virtual std::string name() const = 0;
|
|
virtual bool includeSuccessfulResults() const = 0;
|
|
virtual bool shouldDebugBreak() const = 0;
|
|
virtual bool warnAboutMissingAssertions() const = 0;
|
|
virtual int abortAfter() const = 0;
|
|
virtual bool showInvisibles() const = 0;
|
|
virtual ShowDurations::OrNot showDurations() const = 0;
|
|
virtual TestSpec const& testSpec() const = 0;
|
|
virtual RunTests::InWhatOrder runOrder() const = 0;
|
|
virtual unsigned int rngSeed() const = 0;
|
|
virtual bool forceColour() const = 0;
|
|
};
|
|
}
|
|
|
|
#endif // TWOBLUECUBES_CATCH_INTERFACES_CONFIG_H_INCLUDED
|