diff options
author | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2010-02-25 19:39:43 -0500 |
---|---|---|
committer | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2010-02-25 19:39:43 -0500 |
commit | 374341e3169b1741ce8c9404d096c620c4c15c92 (patch) | |
tree | a17d340f1fd3cd0e7c9b9048f9ec0fde8d7d4109 | |
parent | 276be0c88b3ada0a04634704c454404b858bfbfd (diff) |
Provide additional information on test failures.
-rw-r--r-- | include/tests.h | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/include/tests.h b/include/tests.h index 3adba18..79e1575 100644 --- a/include/tests.h +++ b/include/tests.h | |||
@@ -19,16 +19,19 @@ | |||
19 | fail("%s", #predicate); \ | 19 | fail("%s", #predicate); \ |
20 | } while (0) | 20 | } while (0) |
21 | 21 | ||
22 | #define SYSCALL(call) \ | 22 | #define SYSCALL(call) \ |
23 | do { \ | 23 | do { \ |
24 | if ((call) < 0) \ | 24 | int __test_ret = (call); \ |
25 | fail("%s, %m", #call); \ | 25 | if (__test_ret < 0) \ |
26 | fail("%s -> %d, %m", #call, __test_ret); \ | ||
26 | } while (0) | 27 | } while (0) |
27 | 28 | ||
28 | #define SYSCALL_FAILS(expected, call) \ | 29 | #define SYSCALL_FAILS(expected, call) \ |
29 | do { \ | 30 | do { \ |
30 | if ((call) == 0 || errno != (expected)) \ | 31 | int __test_ret = (call); \ |
31 | fail("%s, %m (expected: %s)", #call, #expected); \ | 32 | if (__test_ret == 0 || errno != (expected)) \ |
33 | fail("%s -> %d, %m (expected: %s)", \ | ||
34 | #call, __test_ret, #expected); \ | ||
32 | } while (0) | 35 | } while (0) |
33 | 36 | ||
34 | 37 | ||