X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libtest%2Fcomparison.hpp;h=32dc22fa1ab77fa5546be224f29658fb4f68aade;hb=66dcfb211cc2ca7dc6630754a6fd68343569e29a;hp=63bd08a2118eb5c8485e3a8fef5c6ab4ec2edc09;hpb=cf55f693c7fc7693afbb4594d97d23795cf7f2a0;p=awesomized%2Flibmemcached diff --git a/libtest/comparison.hpp b/libtest/comparison.hpp index 63bd08a2..32dc22fa 100644 --- a/libtest/comparison.hpp +++ b/libtest/comparison.hpp @@ -41,6 +41,7 @@ #if defined(HAVE_LIBMEMCACHED) && HAVE_LIBMEMCACHED #include #include +#include #endif #if defined(HAVE_LIBGEARMAN) && HAVE_LIBGEARMAN @@ -58,12 +59,12 @@ bool valgrind_is_caller(void); LIBTEST_API bool _in_valgrind(const char *file, int line, const char *func); -template -bool _compare_truth_hint(const char *file, int line, const char *func, T_comparable __expected, const char *assertation_label, T_hint __hint) +template +bool _compare_truth(const char *file, int line, const char *func, T_comparable __expected, const char *assertation_label) { if (__expected == false) { - libtest::stream::make_cerr(file, line, func) << "Assertation \"" << assertation_label << "\" failed, hint: " << __hint; + libtest::stream::make_cerr(file, line, func) << "Assertation \"" << assertation_label << "\""; return false; } @@ -121,26 +122,14 @@ bool _compare_zero(const char *file, int line, const char *func, T_comparable __ return true; } -template -bool _truth(const char *file, int line, const char *func, T_comparable __truth) -{ - if (bool(__truth)) - { - libtest::stream::make_cerr(file, line, func) << "Assertion failed for " << func << "() with \"" << __truth << "\""; - return false; - } - - return true; -} - -template -bool _compare_hint(const char *file, int line, const char *func, T1_comparable __expected, T2_comparable __actual, T_hint __hint, bool io_error= true) +template +bool _ne_compare(const char *file, int line, const char *func, T1_comparable __expected, T2_comparable __actual, bool io_error= true) { - if (__expected != __actual) + if (__expected == __actual) { if (io_error) { - libtest::stream::make_cerr(file, line, func) << "Expected \"" << __expected << "\" got \"" << __actual << "\"" << " Additionally: \"" << __hint << "\""; + libtest::stream::make_cerr(file, line, func) << "Expected \"" << __expected << "\" got \"" << __actual << "\""; } return false; @@ -149,20 +138,20 @@ bool _compare_hint(const char *file, int line, const char *func, T1_comparable _ return true; } -template -bool _ne_compare_hint(const char *file, int line, const char *func, T1_comparable __expected, T2_comparable __actual, T_hint __hint, bool io_error= true) +template +bool _assert_truth(const char *file, int line, const char *func, T_comparable __truth, T_expression_string __expression, const char* __explain= NULL) { - if (__expected == __actual) + if (__truth) { - if (io_error) - { - libtest::stream::make_cerr(file, line, func) << "Expected \"" << __expected << "\" got \"" << __actual << "\"" << " Additionally: \"" << __hint << "\""; - } + return true; + } - return false; + if (__explain) + { + libtest::stream::make_cerr(file, line, func) << "Assertion \"" << __expression << "\" warning:" << __explain; } - return true; + return false; } } // namespace libtest