mirror of
https://github.com/cesanta/mongoose.git
synced 2025-06-07 17:42:30 +08:00
Count both tests and individual checks
CL: none PUBLISHED_FROM=ab7f50e1c68154832e862ebfb4a02d385ef7c6be
This commit is contained in:
parent
2a3cfc9858
commit
84a11fe3b1
@ -28,6 +28,7 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
extern int g_num_tests;
|
||||
extern int g_num_checks;
|
||||
|
||||
#ifdef MG_TEST_ABORT_ON_FAIL
|
||||
#define MG_TEST_ABORT abort()
|
||||
@ -48,7 +49,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
|
||||
#define ASSERT(expr) \
|
||||
do { \
|
||||
g_num_tests++; \
|
||||
g_num_checks++; \
|
||||
if (!(expr)) FAIL(#expr, __LINE__); \
|
||||
} while (0)
|
||||
#define ASSERT_TRUE(expr) ASSERT(expr)
|
||||
@ -71,6 +72,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
elapsed = cs_time() - elapsed; \
|
||||
printf(" [%.3f] %s\n", elapsed, test_name); \
|
||||
fflush(stdout); \
|
||||
g_num_tests++; \
|
||||
} \
|
||||
if (msg) return msg; \
|
||||
} while (0)
|
||||
@ -88,7 +90,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
*/
|
||||
#define ASSERT_EQ(actual, expected) \
|
||||
do { \
|
||||
g_num_tests++; \
|
||||
g_num_checks++; \
|
||||
if (!((actual) == (expected))) { \
|
||||
printf("%f != %f\n", AS_DOUBLE(actual), AS_DOUBLE(expected)); \
|
||||
FAIL(#actual " == " #expected, __LINE__); \
|
||||
@ -98,7 +100,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
/* "Less than" assertion. */
|
||||
#define ASSERT_LT(a, b) \
|
||||
do { \
|
||||
g_num_tests++; \
|
||||
g_num_checks++; \
|
||||
if (!((a) < (b))) { \
|
||||
printf("%f >= %f\n", AS_DOUBLE(a), AS_DOUBLE(b)); \
|
||||
FAIL(#a " < " #b, __LINE__); \
|
||||
@ -108,7 +110,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
/* "Greater than" assertion. */
|
||||
#define ASSERT_GT(a, b) \
|
||||
do { \
|
||||
g_num_tests++; \
|
||||
g_num_checks++; \
|
||||
if (!((a) > (b))) { \
|
||||
printf("%f <= %f\n", AS_DOUBLE(a), AS_DOUBLE(b)); \
|
||||
FAIL(#a " > " #b, __LINE__); \
|
||||
@ -118,7 +120,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
/* Assert that actual == expected, where both are NUL-terminated. */
|
||||
#define ASSERT_STREQ(actual, expected) \
|
||||
do { \
|
||||
g_num_tests++; \
|
||||
g_num_checks++; \
|
||||
if (!_assert_streq(actual, expected)) { \
|
||||
FAIL("ASSERT_STREQ(" #actual ", " #expected ")", __LINE__); \
|
||||
} \
|
||||
@ -127,7 +129,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
/* Assert that actual == expected, where both are pointers */
|
||||
#define ASSERT_PTREQ(actual, expected) \
|
||||
do { \
|
||||
g_num_tests++; \
|
||||
g_num_checks++; \
|
||||
if (actual != expected) { \
|
||||
printf("%p != %p\n", actual, expected); \
|
||||
FAIL("ASSERT_PTREQ(" #actual ", " #expected ")", __LINE__); \
|
||||
@ -137,7 +139,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
/* Assert that actual != expected, where both are pointers */
|
||||
#define ASSERT_PTRNEQ(actual, expected) \
|
||||
do { \
|
||||
g_num_tests++; \
|
||||
g_num_checks++; \
|
||||
if (actual == expected) { \
|
||||
printf("%p == %p\n", actual, expected); \
|
||||
FAIL("ASSERT_PTRNEQ(" #actual ", " #expected ")", __LINE__); \
|
||||
@ -147,7 +149,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
/* Same as STREQ, but only expected is NUL-terminated. */
|
||||
#define ASSERT_STREQ_NZ(actual, expected) \
|
||||
do { \
|
||||
g_num_tests++; \
|
||||
g_num_checks++; \
|
||||
if (!_assert_streq_nz(actual, expected)) { \
|
||||
FAIL("ASSERT_STREQ_NZ(" #actual ", " #expected ")", __LINE__); \
|
||||
} \
|
||||
@ -155,7 +157,7 @@ void _strfail(const char *a, const char *e, int len);
|
||||
|
||||
#define ASSERT_MG_STREQ(actual, expected) \
|
||||
do { \
|
||||
g_num_tests++; \
|
||||
g_num_checks++; \
|
||||
if ((actual).len != strlen(expected) || \
|
||||
memcmp((actual).p, expected, (actual).len) != 0) { \
|
||||
printf("'%.*s' (%d) != '%s'\n", (int)(actual).len, (actual).p, \
|
||||
|
Loading…
Reference in New Issue
Block a user