From b2dea0178c2fff06584a435e9b5310115899b2f1 Mon Sep 17 00:00:00 2001 From: Alexander Kojevnikov Date: Thu, 21 Feb 2013 18:28:25 -0800 Subject: [PATCH] Better test error reporting --- tests/test.cc | 16 ++-------------- tests/test.h | 14 ++++++++++++-- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/tests/test.cc b/tests/test.cc index 2b4d67b..fdf4ec6 100644 --- a/tests/test.cc +++ b/tests/test.cc @@ -16,12 +16,10 @@ * along with Spek. If not, see . */ -#include - #include "test.h" -static int g_passes = 0; -static int g_total = 0; +int g_passes = 0; +int g_total = 0; int main() { @@ -42,13 +40,3 @@ void run(std::function func, const std::string& message) std::cerr << message << std::endl; func(); } - -void test(const std::string& message, bool condition) -{ - g_total++; - if (condition) { - g_passes++; - } else { - std::cerr << "FAIL: " << message << std::endl; - } -} diff --git a/tests/test.h b/tests/test.h index d168b12..707c526 100644 --- a/tests/test.h +++ b/tests/test.h @@ -20,14 +20,24 @@ #define TEST_H_ #include +#include #include void run(std::function func, const std::string& message); -void test(const std::string& message, bool condition); + +extern int g_total; +extern int g_passes; template void test(const std::string& message, const T& expected, const T& actual) { - test(message, expected == actual); + g_total++; + if (expected == actual) { + g_passes++; + } else { + std::cerr << "FAIL: " << message; + std::cerr << ", expected: " << expected; + std::cerr << ", actual: " << actual << std::endl; + } } void test_utils();