#define END_TEST exit((fail_count__ == 0) ? 0 : 1);
+#define LOG(result, text) \
+ printf("%s %i - %s\n", result ? "ok" : "not ok", ++check_count__, text)
+
#define OK1(cond, text) \
do { \
_Bool result = (cond); \
- printf("%s %i - %s\n", result ? "ok" : "not ok", ++check_count__, text); \
+ LOG(result, text); \
if (!result) { \
return -1; \
} \
do { \
double want__ = (double)expect; \
double got__ = (double)actual; \
- if (isnan(want__) && !isnan(got__)) { \
+ if ((isnan(want__) && !isnan(got__)) || \
+ (!isnan(want__) && isnan(got__))) { \
printf("not ok %i - %s = %.15g, want %.15g\n", ++check_count__, #actual, \
got__, want__); \
return (-1); \