xref: /llvm-project/clang-tools-extra/test/clang-tidy/checkers/objc/Inputs/assert/XCTestAssertions.h (revision 89a1d03e2b379e325daa5249411e414bbd995b5e)
1 #ifndef THIRD_PARTY_LLVM_LLVM_PROJECT_CLANG_TOOLS_EXTRA_TEST_CLANG_TIDY_CHECKERS_INPUTS_OBJC_ASSERT_XCTESTASSERTIONS_H_
2 #define THIRD_PARTY_LLVM_LLVM_PROJECT_CLANG_TOOLS_EXTRA_TEST_CLANG_TIDY_CHECKERS_INPUTS_OBJC_ASSERT_XCTESTASSERTIONS_H_
3 
4 #define _XCTPrimitiveAssertEqual(test, expression1, expressionStr1, \
5                                  expression2, expressionStr2, ...)  \
6   ({                                                                \
7     __typeof__(expression1) expressionValue1 = (expression1);       \
8     __typeof__(expression2) expressionValue2 = (expression2);       \
9     if (expressionValue1 != expressionValue2) {                     \
10     }                                                               \
11   })
12 
13 #define _XCTPrimitiveAssertEqualObjects(test, expression1, expressionStr1, \
14                                         expression2, expressionStr2, ...)  \
15   ({                                                                       \
16     __typeof__(expression1) expressionValue1 = (expression1);              \
17     __typeof__(expression2) expressionValue2 = (expression2);              \
18     if (expressionValue1 != expressionValue2) {                            \
19     }                                                                      \
20   })
21 
22 #define XCTAssertEqual(expression1, expression2, ...)                     \
23   _XCTPrimitiveAssertEqual(nil, expression1, @ #expression1, expression2, \
24                            @ #expression2, __VA_ARGS__)
25 
26 #define XCTAssertEqualObjects(expression1, expression2, ...)        \
27   _XCTPrimitiveAssertEqualObjects(nil, expression1, @ #expression1, \
28                                   expression2, @ #expression2, __VA_ARGS__)
29 
30 #endif // THIRD_PARTY_LLVM_LLVM_PROJECT_CLANG_TOOLS_EXTRA_TEST_CLANG_TIDY_CHECKERS_INPUTS_OBJC_ASSERT_XCTESTASSERTIONS_H_
31