Sequoia
Loading...
Searching...
No Matches
Classes | Concepts | Typedefs | Variables
FreeTestCore.hpp File Reference

Core functionality for the testing framework. More...

#include "sequoia/TestFramework/ConcreteTypeCheckers.hpp"
#include "sequoia/TestFramework/IndividualTestPaths.hpp"
#include "sequoia/Core/Meta/Concepts.hpp"
#include "sequoia/FileSystem/FileSystem.hpp"
#include "sequoia/TextProcessing/Substitutions.hpp"
#include <memory>
#include <chrono>

Go to the source code of this file.

Classes

class  sequoia::testing::timer
 
class  sequoia::testing::test_base
 class from which all tests ultimately derive More...
 
class  sequoia::testing::basic_test< Mode, Extender >
 class template from which all concrete tests should derive. More...
 
class  sequoia::testing::trivial_extender
 Temporary workaround while waiting for variadic friends. More...
 
struct  sequoia::testing::is_parallelizable< T >
 

Concepts

concept  sequoia::testing::concrete_test
 

Typedefs

template<test_mode Mode>
using sequoia::testing::basic_free_test = basic_test< Mode, trivial_extender >
 
using sequoia::testing::free_test = basic_free_test< test_mode::standard >
 
using sequoia::testing::free_false_positive_test = basic_free_test< test_mode::false_positive >
 
using sequoia::testing::free_false_negative_test = basic_free_test< test_mode::false_negative >
 
template<class T >
using sequoia::testing::is_parallelizable_t = typename is_parallelizable< T >::type
 

Variables

template<concrete_test T>
constexpr bool sequoia::testing::has_discriminated_output_v
 
template<concrete_test T>
constexpr bool sequoia::testing::has_discriminated_summary_v
 
template<class T >
constexpr bool sequoia::testing::has_parallelizable_type
 
template<class T >
constexpr bool sequoia::testing::is_parallelizable_v {is_parallelizable<T>::value}
 

Detailed Description

Core functionality for the testing framework.

This header defines the basic_test class template, from which all concrete tests derive.

An alias template, basic_free_test, is provided from which all tests of free functions should derive.

Typedef Documentation

◆ free_test

using sequoia::testing::free_test = typedef basic_free_test<test_mode::standard>

Variable Documentation

◆ has_discriminated_output_v

template<concrete_test T>
constexpr bool sequoia::testing::has_discriminated_output_v
inlineconstexpr
Initial value:
{
requires(const T& t){
{ t.output_discriminator() } -> std::convertible_to<std::string>;
}
}

◆ has_discriminated_summary_v

template<concrete_test T>
constexpr bool sequoia::testing::has_discriminated_summary_v
inlineconstexpr
Initial value:
{
requires(const T & t){
{ t.summary_discriminator() } -> std::convertible_to<std::string>;
}
}

◆ has_parallelizable_type

template<class T >
constexpr bool sequoia::testing::has_parallelizable_type
inlineconstexpr
Initial value:
{
requires {
typename T::parallelizable_type;
requires std::is_convertible_v<typename T::parallelizable_type, std::true_type> || std::is_convertible_v<typename T::parallelizable_type, std::false_type>;
}
}