diff options
author | Daniel Franke <franke@edf-online.de> | 2018-05-18 19:59:46 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2018-07-03 13:55:58 (GMT) |
commit | 5dbee9d2d0f68e1fc343d04ac00a4a35d43df6fa (patch) | |
tree | 85375da2fabdfbc7982fe4ba58a76acc3167c71e /Tests/MathTest/MathTestExec.cxx | |
parent | 8661e7052c4f711f13e7168231276e23c4c0defd (diff) | |
download | CMake-5dbee9d2d0f68e1fc343d04ac00a4a35d43df6fa.zip CMake-5dbee9d2d0f68e1fc343d04ac00a4a35d43df6fa.tar.gz CMake-5dbee9d2d0f68e1fc343d04ac00a4a35d43df6fa.tar.bz2 |
math: Add options to calculate and format output as hexadecimal
Diffstat (limited to 'Tests/MathTest/MathTestExec.cxx')
-rw-r--r-- | Tests/MathTest/MathTestExec.cxx | 40 |
1 files changed, 31 insertions, 9 deletions
diff --git a/Tests/MathTest/MathTestExec.cxx b/Tests/MathTest/MathTestExec.cxx index 124eba4..fbcddc4 100644 --- a/Tests/MathTest/MathTestExec.cxx +++ b/Tests/MathTest/MathTestExec.cxx @@ -1,21 +1,43 @@ #include <stdio.h> +#include <stdlib.h> +#include <string.h> -#define TEST_EXPRESSION(x, y) \ - if ((x) != (y)) { \ - printf("Problem with EXPR: Expression: \"%s\" in C returns %d while in " \ - "CMake returns: %d\n", \ - #x, (x), (y)); \ - res++; \ +int res = 0; +bool print = false; + +void test_expression(int x, int y, const char* text) +{ + bool fail = (x) != (y); + if (fail) { + res++; + printf("Problem with EXPR:"); + } + if (fail || print) { + printf("Expression: \"%s\" in CMake returns %d", text, (y)); + if (fail) { + printf(" while in C returns: %d", (x)); + } + printf("\n"); } +} int main(int argc, char* argv[]) { - if (argc > 1) { - printf("Usage: %s\n", argv[0]); + if (argc > 2) { + printf("Usage: %s [print]\n", argv[0]); return 1; } - int res = 0; + + if (argc > 1) { + if (strcmp(argv[1], "print") != 0) { + printf("Usage: %s [print]\n", argv[0]); + return 1; + } + print = true; + } + #include "MathTestTests.h" + if (res != 0) { printf("%s: %d math tests failed\n", argv[0], res); return 1; |