Jon Test
C++ Unit Test Tool. Not for production -- sample code only
Loading...
Searching...
No Matches
include
JonTest
Assert.h
Go to the documentation of this file.
1
#ifndef JON_TEST_ASSERT_H
2
#define JON_TEST_ASSERT_H
3
4
#include "
JonTest/TestFailure.h
"
5
16
#define jontest__assert2arg(first, second, message, binaryOperator) \
17
{ \
18
const auto firstEval = (first); \
19
const auto secondEval = (second); \
20
if(!(firstEval binaryOperator secondEval)) \
21
{ \
22
throw JonTest::TestFailure(__FILE__, __LINE__, (message), #first, firstEval, #second, secondEval, #binaryOperator); \
23
} \
24
}
25
27
#define assertFail(message) throw JonTest::TestFailure(__FILE__, __LINE__, (message))
28
30
#define assert(first, message) jontest__assert2arg(first, true, message, ==)
31
33
#define assertTrue(first, message) jontest__assert2arg(first, true, message, ==)
34
36
#define assertFalse(first, message) jontest__assert2arg(first, false, message, ==)
37
39
#define assertNullPtr(first, message) jontest__assert2arg(first, nullptr, message, ==)
40
42
#define assertValidPtr(first, message) jontest__assert2arg(first, nullptr, message, !=)
43
45
#define assertEqual(first, second, message) jontest__assert2arg(first, second, message, ==)
46
48
#define assertNotEqual(first, second, message) jontest__assert2arg(first, second, message, !=)
49
51
#define assertLess(first, second, message) jontest__assert2arg(first, second, message, <)
52
54
#define assertLessEqual(first, second, message) jontest__assert2arg(first, second, message, <=)
55
57
#define assertGreater(first, second, message) jontest__assert2arg(first, second, message, >)
58
60
#define assertGreaterEqual(first, second, message) jontest__assert2arg(first, second, message, >=)
61
69
#define assertException(expression, expected, message) { \
70
bool passed = false;\
71
try { (expression); passed = true; } \
72
catch (expected& object) { } \
73
if(passed) \
74
{ \
75
throw JonTest::TestFailure(__FILE__, __LINE__, (message)); \
76
} \
77
}
78
83
#define EXPECTED_FAILURE(expression, message) assertException(expression, JonTest::TestFailure, message)
84
85
#endif
TestFailure.h
Generated by
1.9.8