#include #include #include "cmDebugTools.h" #define check(expr, value) \ do { \ if (expr != value) { \ std::cerr << "Failed to return " #value " for " #expr << std::endl; \ retval = 1; \ } \ } while (false) int testDebug(int argc, char** const /*argv*/) { if (argc != 1) { std::cout << "Invalid arguments.\n"; return -1; } int retval = 0; check(CM_DBG(true), true); check(CM_DBG(4), 4); check(CM_DBG(1.), 1.); check(CM_DBG('c'), 'c'); check(CM_DBG("literal string"), std::string("literal string")); std::string str = "std string"; check(CM_DBG(str), "std string"); check(CM_DBG(str.empty()), false); return retval; }