Introduce a "apitest.h" header gathering special things for apitests (SEH macros, wine/test.h inclusion, and so on...).
svn path=/trunk/; revision=60313
+include_directories(
+ include)
add_library(apitest apitest.c)
* PROGRAMMER: Thomas Faber
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <winreg.h>
#include <winsvc.h>
#include <strsafe.h>
* PROGRAMMER: Hermès BÉLUSCA - MAÏTO
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <winsvc.h>
#include <strsafe.h>
* PROGRAMMER: Hermès BÉLUSCA - MAÏTO
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <winreg.h>
#include <winsvc.h>
#include <strsafe.h>
* PROGRAMMER: Thomas Faber <thfabba@gmx.de>
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
-#include <wine/test.h>
#include <windows.h>
#include <ndk/ntndk.h>
#include <winsafer.h>
-#define StartSeh() ExceptionStatus = STATUS_SUCCESS; _SEH2_TRY {
-#define EndSeh(ExpectedStatus) } _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { ExceptionStatus = _SEH2_GetExceptionCode(); } _SEH2_END; ok(ExceptionStatus == ExpectedStatus, "Exception %lx, expected %lx\n", ExceptionStatus, ExpectedStatus)
-
-#define InvalidPointer ((PVOID)0x5555555555555555ULL)
-
#define SaferIdentifyLevel(c, p, h, r) SaferIdentifyLevel(c, (PSAFER_CODE_PROPERTIES)(p), h, r)
START_TEST(SaferIdentifyLevel)
#define __ROS_LONG64__
#define STANDALONE
-#include <wine/test.h>
+#include <apitest.h>
extern void func_CreateService(void);
extern void func_LockDatabase(void);
* PROGRAMMER: Thomas Faber
*/
-#define UNICODE
-#include <wine/test.h>
+#include <apitest.h>
+
+//#define UNICODE
#include <strsafe.h>
#include <shlobj.h>
WCHAR OriginalCommandLine[1024];
int i;
- CommandLine = GetCommandLine();
- (VOID)StringCbCopy(OriginalCommandLine, sizeof(OriginalCommandLine), CommandLine);
+ CommandLine = GetCommandLineW();
+ StringCbCopyW(OriginalCommandLine, sizeof(OriginalCommandLine), CommandLine);
for (i = 0; i < TestCount; i++)
{
-#define WIN32_LEAN_AND_MEAN
#define __ROS_LONG64__
-#include <windows.h>
#define STANDALONE
-#include "wine/test.h"
+#include <apitest.h>
extern void func_SHExplorerParseCmdLine(void);
-#define WIN32_LEAN_AND_MEAN
#define __ROS_LONG64__
-#include <windows.h>
#define STANDALONE
-#include "wine/test.h"
+#include <apitest.h>
extern void func_browseui(void);
extern void func_ieframe(void);
* PURPOSE: Test for _vscprintf
*/
+#include <apitest.h>
+
#include <stdio.h>
-#include <wine/test.h>
#include <tchar.h>
#include <errno.h>
* PURPOSE: Test for _vscprintf
*/
+#include <apitest.h>
+
#include <stdio.h>
-#include <wine/test.h>
#include <tchar.h>
#include <errno.h>
* PURPOSE: Test for _vsnprintf
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#include <stdio.h>
-#include <wine/test.h>
#include <tchar.h>
#include <pseh/pseh2.h>
#include <ndk/mmfuncs.h>
#include <ndk/rtlfuncs.h>
-#define StartSeh() ExceptionStatus = STATUS_SUCCESS; _SEH2_TRY {
-#define EndSeh(ExpectedStatus) } _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { ExceptionStatus = _SEH2_GetExceptionCode(); } _SEH2_END; ok(ExceptionStatus == ExpectedStatus, "Exception %lx, expected %lx\n", ExceptionStatus, ExpectedStatus)
-
static void call_varargs(char* buf, size_t buf_size, int expected_ret, LPCSTR formatString, ...)
{
va_list args;
* PURPOSE: Test for _vsnprintf
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#include <stdio.h>
-#include <wine/test.h>
#include <tchar.h>
#include <pseh/pseh2.h>
#include <ndk/mmfuncs.h>
#include <ndk/rtlfuncs.h>
-#define StartSeh() ExceptionStatus = STATUS_SUCCESS; _SEH2_TRY {
-#define EndSeh(ExpectedStatus) } _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { ExceptionStatus = _SEH2_GetExceptionCode(); } _SEH2_END; ok(ExceptionStatus == ExpectedStatus, "Exception %lx, expected %lx\n", ExceptionStatus, ExpectedStatus)
-
static void call_varargs(wchar_t* buf, size_t buf_size, int expected_ret, LPCWSTR formatString, ...)
{
va_list args;
* PURPOSE: Test for mbstowcs_s
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#include <stdio.h>
#include <stdlib.h>
-#include <wine/test.h>
#include <specstrings.h>
#define ok_errno(x) ok_hex(errno, (x))
* PROGRAMMER: Thomas Faber <thfabba@gmx.de>
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#include <stdio.h>
-#include <wine/test.h>
#include <tchar.h>
#include <pseh/pseh2.h>
#include <ndk/mmfuncs.h>
#pragma GCC diagnostic ignored "-Wnonnull"
#endif
-#define StartSeh() ExceptionStatus = STATUS_SUCCESS; _SEH2_TRY {
-#define EndSeh(ExpectedStatus) } _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { ExceptionStatus = _SEH2_GetExceptionCode(); } _SEH2_END; ok(ExceptionStatus == ExpectedStatus, "Exception %lx, expected %lx\n", ExceptionStatus, ExpectedStatus)
-
static
PVOID
AllocateGuarded(
+#include <apitest.h>
+
#include <stdio.h>
-#include <wine/test.h>
START_TEST(strcpy)
{
#define __ROS_LONG64__
#define STANDALONE
-#include <wine/test.h>
+#include <apitest.h>
#if defined(TEST_MSVCRT)
extern void func_mbstowcs_s(void);
* PURPOSE: Test for wcstombs_s
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#include <stdio.h>
#include <stdlib.h>
-#include <wine/test.h>
#include <specstrings.h>
#define ok_errno(x) ok_hex(errno, (x))
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
void Test_DCICreatePrimary()
{
#define __ROS_LONG64__
#define STANDALONE
-#include <wine/test.h>
+#include <apitest.h>
extern void func_DCICreatePrimary(void);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <stdio.h>
+#include <apitest.h>
+
#include <wine/test.h>
#include <wingdi.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <libs/pseh/pseh2.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
void Test_BeginPath()
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
void Test_CombineRgn_Params()
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#define DEFAULT_BITMAP 21
* PROGRAMMERS: Magnus Olsen
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
void Test_CreateBitmapIndirect()
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
-#include <wingdi.h>
+#include <apitest.h>
+#include <wingdi.h>
#include "init.h"
-
void Test_CreateDIBPatternBrush()
{
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
#include <pseh/pseh2.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#define INVALIDFONT "ThisFontDoesNotExist"
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
-#include <wingdi.h>
+#include <apitest.h>
+#include <wingdi.h>
void
Test_CreateFontIndirectA(void)
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
#include <include/ntgdityp.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
void Test_CreateRectRgn()
{
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Magnus Olsen
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
* PROGRAMMERS: Magnus Olsen
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
* PROGRAMMERS: Magnus Olsen
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
* PROGRAMMERS: Magnus Olsen
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
#include <include/ntgdityp.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
HBITMAP WINAPI GdiConvertBitmap(HBITMAP hbm);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
HBRUSH WINAPI GdiConvertBrush(HBRUSH hbr);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
HDC WINAPI GdiConvertDC(HDC hdc);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
HFONT WINAPI GdiConvertFont(HFONT);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
HPALETTE WINAPI GdiConvertPalette(HPALETTE);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
HRGN WINAPI GdiConvertRegion(HRGN);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
BOOL WINAPI GdiDeleteLocalDC(HDC);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
void Test_GdiGetCharDimensions()
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
HBRUSH WINAPI GdiGetLocalBrush(HBRUSH hbr);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
HDC WINAPI GdiGetLocalDC(HDC);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
BOOL WINAPI GdiReleaseLocalDC(HDC);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
BOOL WINAPI GdiSetAttrs(HDC);
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
void Test_GetDIBColorTable()
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
#include <winuser.h>
* PROGRAMMERS: Jérôme Gardou
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
void Test_GetPixel_1bpp()
* PROGRAMMERS: Timo Kreuzer
*/
+#include <apitest.h>
+
#include <stdio.h>
-#include <wine/test.h>
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winddi.h>
#include <include/ntgdityp.h>
* PROGRAMMERS: Timo Kreuzer
*/
+#include <apitest.h>
+
#include <stdio.h>
-#include <wine/test.h>
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#define TEST(x) ok(x, #x"\n")
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
+#include <apitest.h>
+
#include <stdio.h>
-#include <wine/test.h>
#include <wingdi.h>
HBITMAP ghbmpTarget;
* PROGRAMMERS: Jérôme Gardou
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
void Test_Rectangle(void)
* PROGRAMMERS: Timo Kreuzer
*/
+#include <apitest.h>
+
#include <stdio.h>
-#include <wine/test.h>
#include <wingdi.h>
#include <winddi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <pseh/pseh2.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Jérôme Gardou
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
void Test_SetDIBits()
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
-#include <wingdi.h>
+#include <apitest.h>
+#include <wingdi.h>
#include "init.h"
static void
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <mmsystem.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
* PROGRAMMERS: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <wingdi.h>
#include <winuser.h>
#define __ROS_LONG64__
#define STANDALONE
-#include <wine/test.h>
+#include <apitest.h>
extern void func_AddFontResource(void);
extern void func_AddFontResourceEx(void);
--- /dev/null
+#ifndef _APITEST_H
+#define _APITEST_H
+
+// #define __ROS_LONG64__
+
+#define WIN32_NO_STATUS
+
+/* The user must #define STANDALONE if it uses this header in testlist.c */
+#include <wine/test.h>
+#include <pseh/pseh2.h>
+
+/* See kmtests/include/kmt_test.h */
+#define InvalidPointer ((PVOID)0x5555555555555555ULL)
+
+#define StartSeh() \
+ ExceptionStatus = STATUS_SUCCESS; \
+ _SEH2_TRY \
+ {
+#define EndSeh(ExpectedStatus) \
+ } \
+ _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) \
+ { \
+ ExceptionStatus = _SEH2_GetExceptionCode(); \
+ } \
+ _SEH2_END; \
+ ok(ExceptionStatus == ExpectedStatus, "Exception 0x%08lx, expected 0x%08lx\n", ExceptionStatus, ExpectedStatus)
+
+#endif /* _APITEST_H */
* PROGRAMMER: Hermès BÉLUSCA - MAÏTO
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <windows.h>
/*
* PROGRAMMER: Thomas Faber <thfabba@gmx.de>
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#include <stdio.h>
-#include <wine/test.h>
#include <ndk/rtltypes.h>
static
-#include <wine/test.h>
+#include <apitest.h>
#define IS_DRIVE_TYPE_VALID(type) ((type) != DRIVE_UNKNOWN && (type) != DRIVE_NO_ROOT_DIR)
* PROGRAMMER: Thomas Faber <thfabba@gmx.de>
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#define _INC_WINDOWS
#define COM_NO_WINDOWS_H
-#define UNICODE
#include <stdio.h>
-#include <wine/test.h>
#include <winreg.h>
#include <winnls.h>
#include <shlwapi.h>
PWSTR FileName;
PWSTR Slash;
WCHAR CommandLine[MAX_PATH];
- STARTUPINFO StartupInfo;
+ STARTUPINFOW StartupInfo;
PROCESS_INFORMATION ProcessInfo;
DWORD Ret;
int Length;
FileName++;
FileName[-1] = L'\0';
- Success = SetCurrentDirectory(Path);
+ Success = SetCurrentDirectoryW(Path);
ok(Success == TRUE, "SetCurrentDirectory failed for path '%ls'\n", Path);
trace("Starting '%ls' in path '%ls'\n", FileName, Path);
RtlZeroMemory(&StartupInfo, sizeof(StartupInfo));
StartupInfo.cb = sizeof(StartupInfo);
- Success = CreateProcess(FileName,
- CommandLine,
- NULL,
- NULL,
- FALSE,
- 0,
- NULL,
- NULL,
- &StartupInfo,
- &ProcessInfo);
+ Success = CreateProcessW(FileName,
+ CommandLine,
+ NULL,
+ NULL,
+ FALSE,
+ 0,
+ NULL,
+ NULL,
+ &StartupInfo,
+ &ProcessInfo);
if (!Success)
{
skip("CreateProcess failed with %lu\n", GetLastError());
* PROGRAMMER: Mike "tamlin" Nordell
*/
-#include <wine/test.h>
-#include <winnls.h>
+#include <apitest.h>
+#include <winnls.h>
START_TEST(MultiByteToWideChar)
{
* PROGRAMMER: Thomas Faber <thfabba@gmx.de>
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#include <stdio.h>
-#include <wine/test.h>
#include <ndk/rtltypes.h>
static
* PROGRAMMER: Mike "tamlin" Nordell
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#include <stdio.h>
-#include <wine/test.h>
#include <ndk/rtltypes.h>
#include <xmmintrin.h>
* PURPOSE: Test for lstrcpynW
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
#include <stdio.h>
-#include <wine/test.h>
START_TEST(lstrcpynW)
{
#define __ROS_LONG64__
#define STANDALONE
-#include <wine/test.h>
+#include <apitest.h>
extern void func_FindFiles(void);
extern void func_GetCurrentDirectory(void);
* PROGRAMMER: Hermès BÉLUSCA - MAÏTO <hermes.belusca@sfr.fr>
*/
+#include <apitest.h>
+
#define WIN32_NO_STATUS
-#define UNICODE
#include <stdio.h>
-#include <wine/test.h>
#include <ndk/umtypes.h>
#include "./CmdLineUtil/CmdLineUtil.h"
* REFERENCES: http://msdn.microsoft.com/en-US/library/h7zkk1bz%28v=VS.80%29.aspx
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <float.h>
#include <math.h>
* PROGRAMMER: Timo Kreuzer
*/
-#include <wine/test.h>
+#include <apitest.h>
+
#include <stdio.h>
#include <stdlib.h>
#include <strings.h>
#define __ROS_LONG64__
#define STANDALONE
-#include <wine/test.h>
+#include <apitest.h>
extern void func_CommandLine(void);
extern void func_ieee(void);