1 #ifndef _APITEST_H
2 #define _APITEST_H
3 
4 // #define __ROS_LONG64__
5 
6 /* The user must #define STANDALONE if it uses this header in testlist.c */
7 #define WIN32_NO_STATUS
8 #include <wine/test.h>
9 #undef WIN32_NO_STATUS
10 
11 /* See kmtests/include/kmt_test.h */
12 #define InvalidPointer ((PVOID)0x5555555555555555ULL)
13 // #define InvalidPointer ((PVOID)0x0123456789ABCDEFULL)
14 
15 #ifdef __USE_PSEH2__
16 #include <pseh/pseh2.h>
17 
18 #define StartSeh()                                  \
19 {                                                   \
20     NTSTATUS ExceptionStatus = STATUS_SUCCESS;      \
21     _SEH2_TRY                                       \
22     {
23 
24 #define EndSeh(ExpectedStatus)                      \
25     }                                               \
26     _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)         \
27     {                                               \
28         ExceptionStatus = _SEH2_GetExceptionCode(); \
29     }                                               \
30     _SEH2_END;                                      \
31     ok(ExceptionStatus == (ExpectedStatus),         \
32        "Exception 0x%08lx, expected 0x%08lx\n",     \
33        ExceptionStatus, (ExpectedStatus));          \
34 }
35 #else
36 #define StartSeh()                                  \
37 {                                                   \
38     NTSTATUS ExceptionStatus = STATUS_SUCCESS;      \
39     __try                                           \
40     {
41 
42 #define EndSeh(ExpectedStatus)                      \
43     }                                               \
44     __except(EXCEPTION_EXECUTE_HANDLER)             \
45     {                                               \
46         ExceptionStatus = GetExceptionCode();       \
47     }                                               \
48     ok(ExceptionStatus == (ExpectedStatus),         \
49        "Exception 0x%08lx, expected 0x%08lx\n",     \
50        ExceptionStatus, (ExpectedStatus));          \
51 }
52 #endif
53 
54 #define ok_hr(status, expected)                 ok_hex(status, expected)
55 #define ok_hr_(file, line, status, expected)    ok_hex_(file, line, status, expected)
56 
57 #endif /* _APITEST_H */
58