iutest  1.17.99.14
名前空間 | 関数 | 変数
iutest_matcher.hpp ファイル

iris unit test matcher 定義 ファイル [詳解]

#include "iutest_config.hpp"
iutest_matcher.hpp の依存先関係図:
被依存関係図:

[ソースコード]

名前空間

 iutest
 iutest root namespace
 
 iutest::matchers
 iutest matchers namespace
 

マクロ定義

#define IUTEST_TEST_THAT(actual, matcher, on_failure)
 

関数

template<typename T >
detail::EqMatcher< T > iutest::matchers::Equals (const T &expected)
 Make Equals matcher [詳解]
 
template<typename T >
detail::EqMatcher< T > iutest::matchers::Eq (const T &expected)
 Make Eq matcher [詳解]
 
template<typename T >
detail::NeMatcher< T > iutest::matchers::Ne (const T &expected)
 Make Ne matcher [詳解]
 
template<typename T >
detail::LeMatcher< T > iutest::matchers::Le (const T &expected)
 Make Le matcher [詳解]
 
template<typename T >
detail::LtMatcher< T > iutest::matchers::Lt (const T &expected)
 Make Lt matcher [詳解]
 
template<typename T >
detail::GeMatcher< T > iutest::matchers::Ge (const T &expected)
 Make Ge matcher [詳解]
 
template<typename T >
detail::GtMatcher< T > iutest::matchers::Gt (const T &expected)
 Make Gt matcher [詳解]
 
detail::TwofoldEqMatcher iutest::matchers::Eq ()
 Make Twofold Eq matcher [詳解]
 
detail::TwofoldNeMatcher iutest::matchers::Ne ()
 Make Twofold Ne matcher [詳解]
 
detail::TwofoldLeMatcher iutest::matchers::Le ()
 Make Twofold Le matcher [詳解]
 
detail::TwofoldLtMatcher iutest::matchers::Lt ()
 Make Twofold Lt matcher [詳解]
 
detail::TwofoldGeMatcher iutest::matchers::Ge ()
 Make Twofold Ge matcher [詳解]
 
detail::TwofoldGtMatcher iutest::matchers::Gt ()
 Make Twofold Gt matcher [詳解]
 
detail::IsNullMatcher iutest::matchers::IsNull ()
 Make IsNull matcher [詳解]
 
detail::NotNullMatcher iutest::matchers::NotNull ()
 Make NotNull matcher [詳解]
 
template<typename T , typename U >
detail::TypedEqMatcher< T > iutest::matchers::TypedEq (const U &expected)
 Make TypedEq matcher [詳解]
 
template<typename T >
detail::FloatingPointEqMatcher< T > iutest::matchers::FloatingPointEq (T expected)
 Make FloatingPoint Eq matcher [詳解]
 
detail::FloatingPointEqMatcher< float > iutest::matchers::FloatEq (float expected)
 Make Float Eq matcher [詳解]
 
detail::FloatingPointEqMatcher< double > iutest::matchers::DoubleEq (double expected)
 Make Double Eq matcher [詳解]
 
template<typename T >
detail::NanSensitiveFloatingPointEqMatcher< T > iutest::matchers::NanSensitiveFloatingPointEq (T expected)
 Make FloatingPoint Eq matcher [詳解]
 
detail::NanSensitiveFloatingPointEqMatcher< float > iutest::matchers::NanSensitiveFloatEq (float expected)
 Make NanSensitive Float Eq matcher [詳解]
 
detail::NanSensitiveFloatingPointEqMatcher< double > iutest::matchers::NanSensitiveDoubleEq (double expected)
 Make NanSensitive Double Eq matcher [詳解]
 
template<typename T >
detail::FloatingPointNearMatcher< T > iutest::matchers::FloatingPointNear (T expected, T max_abs_error)
 Make FloatingPoint Near matcher [詳解]
 
detail::FloatingPointNearMatcher< float > iutest::matchers::FloatNear (float expected, float max_abs_error)
 Make Float Near matcher [詳解]
 
detail::FloatingPointNearMatcher< double > iutest::matchers::DoubleNear (double expected, double max_abs_error)
 Make Double Near matcher [詳解]
 
template<typename T >
detail::NanSensitiveFloatingPointNearMatcher< T > iutest::matchers::NanSensitiveFloatingPointNear (T expected, T max_abs_error)
 Make FloatingPoint Near matcher [詳解]
 
detail::NanSensitiveFloatingPointNearMatcher< float > iutest::matchers::NanSensitiveFloatNear (float expected, float max_abs_error)
 Make NanSensitive Float Near matcher [詳解]
 
detail::NanSensitiveFloatingPointNearMatcher< double > iutest::matchers::NanSensitiveDoubleNear (double expected, double max_abs_error)
 Make NanSensitive Double Near matcher [詳解]
 
template<typename T >
detail::StrEqMatcher< T > iutest::matchers::StrEq (const T &expected)
 Make StrEq matcher [詳解]
 
template<typename T >
detail::StrNeMatcher< T > iutest::matchers::StrNe (const T &expected)
 Make StrNe matcher [詳解]
 
template<typename T >
detail::StrCaseEqMatcher< T > iutest::matchers::StrCaseEq (const T &expected)
 Make StrCaseEq matcher [詳解]
 
template<typename T >
detail::StrCaseNeMatcher< T > iutest::matchers::StrCaseNe (const T &expected)
 Make StrCaseNe matcher [詳解]
 
template<typename T >
detail::StartsWithMatcher< const T & > iutest::matchers::StartsWith (const T &str)
 Make StartsWith matcher [詳解]
 
template<typename T >
detail::HasSubstrMatcher< const T & > iutest::matchers::HasSubstr (const T &str)
 Make HasSubstr matcher [詳解]
 
template<typename T >
detail::EndsWithMatcher< const T & > iutest::matchers::EndsWith (const T &str)
 Make EndsWith matcher [詳解]
 
template<typename T >
detail::ContainsMatcher< T > iutest::matchers::Contains (const T &expected)
 Make Contains matcher [詳解]
 
template<typename T >
detail::EachMatcher< T > iutest::matchers::Each (const T &expected)
 Make Each matcher [詳解]
 
template<typename T >
detail::ContainerEqMatcher< T > iutest::matchers::ContainerEq (const T &expected)
 Make ContainerEq matcher [詳解]
 
template<typename M , typename T >
detail::PointwiseMatcher< M, T > iutest::matchers::Pointwise (const M &matcher, const T &expected)
 Make Pointwise matcher [詳解]
 
template<typename T >
detail::OptionalMatcher< T > iutest::matchers::Optional (const T &expected)
 Make Optional matcher [詳解]
 
detail::IsEmptyMatcher iutest::matchers::IsEmpty ()
 Make IsEmpty matcher [詳解]
 
template<typename T >
detail::SizeIsMatcher< T > iutest::matchers::SizeIs (const T &expected)
 Make SizeIs matcher [詳解]
 
template<typename T >
detail::AtMatcher< T > iutest::matchers::At (size_t index, const T &expected)
 Make At matcher [詳解]
 
template<typename Container >
detail::ElementsAreArrayMatcher< typename Container::value_type > iutest::matchers::ElementsAreArray (const Container &container)
 Make ElementsAreArray matcher [詳解]
 
template<typename T , size_t SIZE>
detail::ElementsAreArrayMatcher< T > iutest::matchers::ElementsAreArray (const T(&v)[SIZE])
 
template<typename Ite >
detail::ElementsAreArrayMatcher< typename detail::IteratorTraits< Ite >::type > iutest::matchers::ElementsAreArray (Ite begin, Ite end)
 
template<typename T >
detail::ElementsAreArrayMatcher< T > iutest::matchers::ElementsAreArray (const T *a, int count)
 Make ElementsAreArray matcher [詳解]
 
template<typename Container >
detail::ElementsAreArrayMatcher< typename Container::value_type > iutest::matchers::ElementsAreArrayForward (const Container &container)
 Make ElementsAreArrayForward matcher [詳解]
 
template<typename T , size_t SIZE>
detail::ElementsAreArrayMatcher< T > iutest::matchers::ElementsAreArrayForward (const T(&v)[SIZE])
 
template<typename Ite >
detail::ElementsAreArrayMatcher< typename detail::IteratorTraits< Ite >::type > iutest::matchers::ElementsAreArrayForward (Ite begin, Ite end)
 
template<typename T >
detail::ElementsAreArrayMatcher< T > iutest::matchers::ElementsAreArrayForward (const T *a, int count)
 Make ElementsAreArrayForward matcher [詳解]
 
template<typename ... T>
detail::ElementsAreMatcher< T... > iutest::matchers::ElementsAre (const T &... m)
 Make ElementsAre matcher
 
template<typename T >
detail::KeyMatcher< T > iutest::matchers::Key (const T &expected)
 Make Key matcher [詳解]
 
template<typename T1 , typename T2 >
detail::PairMatcher< T1, T2 > iutest::matchers::Pair (const T1 &m1, const T2 &m2)
 Make Pair matcher [詳解]
 
template<typename F , typename T >
detail::FieldMatcher< F, T > iutest::matchers::Field (const F &field, const T &expected)
 Make Field matcher [詳解]
 
template<typename P , typename T >
detail::PropertyMatcher< P, T > iutest::matchers::Property (const P &prop, const T &expected)
 Make Property matcher [詳解]
 
template<typename F , typename T >
detail::ResultOfMatcher< F, T > iutest::matchers::ResultOf (const F &func, const T &expected)
 Make ResultOf matcher [詳解]
 
template<typename T >
detail::PointeeMatcher< T > iutest::matchers::Pointee (const T &expected)
 Make Pointee matcher
 
template<typename T >
detail::NotMatcher< T > iutest::matchers::Not (const T &unexpected)
 Make Not matcher
 
template<typename T >
detail::AnyMatcher< T > iutest::matchers::A ()
 Make Any matcher
 
template<typename ... T>
detail::AllOfMatcher< T... > iutest::matchers::AllOf (const T &... m)
 Make AllOf matcher [詳解]
 
template<typename ... T>
detail::AnyOfMatcher< T... > iutest::matchers::AnyOf (const T &... m)
 Make AnyOf matcher [詳解]
 
template<typename T , typename M >
bool iutest::matchers::Value (const T &value, const M &expected)
 Value predicate
 

変数

const detail::AnythingMatcher iutest::matchers::_
 Anything matcher
 

詳解

iris unit test matcher 定義 ファイル

著者
t.shirayanagi
copyright
Copyright (C) 2014-2020, Takazumi Shirayanagi
This software is released under the new BSD License, see LICENSE

マクロ定義詳解

◆ IUTEST_TEST_THAT

#define IUTEST_TEST_THAT (   actual,
  matcher,
  on_failure 
)
値:
IUTEST_AMBIGUOUS_ELSE_BLOCKER_ \
if( ::iutest::AssertionResult iutest_ar = matcher(actual) ) { \
} else \
on_failure(::iutest::detail::MatcherAssertionFailureMessage( \
::iutest::PrintToString(actual).c_str(), #matcher, iutest_ar))
Assertion Result
Definition: iutest_assertion.hpp:67
std::string PrintToString(const T &v)
文字列化
Definition: iutest_printers.hpp:767