Sequoia
Loading...
Searching...
No Matches
FailureInfoTestingUtilities.hpp
Go to the documentation of this file.
1
2// Copyright Oliver J. Rosten 2021. //
3// Distributed under the GNU GENERAL PUBLIC LICENSE, Version 3.0. //
4// (See accompanying file LICENSE.md or copy at //
5// https://www.gnu.org/licenses/gpl-3.0.en.html) //
7
8#pragma once
9
13
14namespace sequoia::testing
15{
16 template<> struct value_tester<sequoia::testing::failure_info>
17 {
19 using equivalent_type = std::pair<std::size_t, std::string>;
20
21 template<test_mode Mode>
22 static void test(equality_check_t, test_logger<Mode>& logger, const type& actual, const type& prediction)
23 {
24 check(equality, "Check index", logger, actual.check_index, prediction.check_index);
25 check(equality, "Message", logger, actual.message, prediction.message);
26 }
27
28 template<test_mode Mode>
29 static void test(equivalence_check_t, test_logger<Mode>& logger, const type& actual, const equivalent_type prediction)
30 {
31 check(equality, "Check index", logger, actual.check_index, prediction.first);
32 check(equality, "Message", logger, actual.message, prediction.second);
33 }
34 };
35}
bool check(CheckType flavour, std::string description, test_logger< Mode > &logger, Iter first, Sentinel last, PredictionIter predictionFirst, PredictionSentinel predictionLast, tutor< Advisor > advisor={})
The workhorse for comparing the contents of ranges.
Definition: FreeCheckers.hpp:377
Utilities for checking regular semantics.
Definition: TestLogger.hpp:183
Definition: FreeCheckers.hpp:82
Definition: FailureInfo.hpp:21
Definition: FreeCheckers.hpp:87
class template, specializations of which implement various comparisons for the specified type.
Definition: FreeCheckers.hpp:78