mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-08-29 19:26:33 +00:00
[WINESYNC]
- Sync comdlg32, crypt32, gdiplus, inetcomm, jscript, msctf, mshtml, msxml3, rsaenh, schannel, shlwapi, urlmon, usp10, wininet winetests. svn path=/trunk/; revision=46982
This commit is contained in:
@@ -54,45 +54,289 @@
|
||||
* Test helper macros
|
||||
*/
|
||||
|
||||
#ifdef _WIN64
|
||||
#define TEST_TYPE_SIZE(type, size) C_ASSERT(sizeof(type) == size);
|
||||
|
||||
# define TEST_TYPE_SIZE(type, size)
|
||||
#ifdef TYPE_ALIGNMENT
|
||||
# define TEST_TYPE_ALIGN(type, align) C_ASSERT(TYPE_ALIGNMENT(type) == align);
|
||||
#else
|
||||
# define TEST_TYPE_ALIGN(type, align)
|
||||
#endif
|
||||
|
||||
#ifdef _TYPE_ALIGNMENT
|
||||
# define TEST_TARGET_ALIGN(type, align) C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
|
||||
# define TEST_FIELD_ALIGN(type, field, align) C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
|
||||
#else
|
||||
# define TEST_TARGET_ALIGN(type, align)
|
||||
# define TEST_FIELD_ALIGN(type, field, align)
|
||||
# define TEST_FIELD_OFFSET(type, field, offset)
|
||||
|
||||
#else
|
||||
|
||||
# define TEST_TYPE_SIZE(type, size) C_ASSERT(sizeof(type) == size);
|
||||
|
||||
# ifdef TYPE_ALIGNMENT
|
||||
# define TEST_TYPE_ALIGN(type, align) C_ASSERT(TYPE_ALIGNMENT(type) == align);
|
||||
# else
|
||||
# define TEST_TYPE_ALIGN(type, align)
|
||||
# endif
|
||||
|
||||
# ifdef _TYPE_ALIGNMENT
|
||||
# define TEST_TARGET_ALIGN(type, align) C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
|
||||
# define TEST_FIELD_ALIGN(type, field, align) C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
|
||||
# else
|
||||
# define TEST_TARGET_ALIGN(type, align)
|
||||
# define TEST_FIELD_ALIGN(type, field, align)
|
||||
# endif
|
||||
|
||||
# define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
|
||||
|
||||
#endif
|
||||
|
||||
#define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
|
||||
|
||||
#define TEST_TARGET_SIZE(type, size) TEST_TYPE_SIZE(*(type)0, size)
|
||||
#define TEST_FIELD_SIZE(type, field, size) TEST_TYPE_SIZE((((type*)0)->field), size)
|
||||
#define TEST_TYPE_SIGNED(type) C_ASSERT((type) -1 < 0);
|
||||
#define TEST_TYPE_UNSIGNED(type) C_ASSERT((type) -1 > 0);
|
||||
|
||||
|
||||
#ifdef _WIN64
|
||||
|
||||
static void test_pack_BINDINFO(void)
|
||||
{
|
||||
/* BINDINFO (pack 4) */
|
||||
/* BINDINFO */
|
||||
TEST_FIELD_SIZE (BINDINFO, cbSize, 4)
|
||||
TEST_FIELD_ALIGN (BINDINFO, cbSize, 4)
|
||||
TEST_FIELD_OFFSET(BINDINFO, cbSize, 0)
|
||||
TEST_FIELD_SIZE (BINDINFO, szExtraInfo, 8)
|
||||
TEST_FIELD_ALIGN (BINDINFO, szExtraInfo, 8)
|
||||
TEST_FIELD_OFFSET(BINDINFO, szExtraInfo, 8)
|
||||
}
|
||||
|
||||
static void test_pack_IBindHost(void)
|
||||
{
|
||||
/* IBindHost */
|
||||
}
|
||||
|
||||
static void test_pack_IBindHostVtbl(void)
|
||||
{
|
||||
/* IBindHostVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IBindStatusCallback(void)
|
||||
{
|
||||
/* IBindStatusCallback */
|
||||
}
|
||||
|
||||
static void test_pack_IBindStatusCallbackVtbl(void)
|
||||
{
|
||||
/* IBindStatusCallbackVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IBinding(void)
|
||||
{
|
||||
/* IBinding */
|
||||
}
|
||||
|
||||
static void test_pack_IBindingVtbl(void)
|
||||
{
|
||||
/* IBindingVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IInternetProtocolInfo(void)
|
||||
{
|
||||
/* IInternetProtocolInfo */
|
||||
}
|
||||
|
||||
static void test_pack_IInternetProtocolInfoVtbl(void)
|
||||
{
|
||||
/* IInternetProtocolInfoVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IInternetSession(void)
|
||||
{
|
||||
/* IInternetSession */
|
||||
}
|
||||
|
||||
static void test_pack_IInternetSessionVtbl(void)
|
||||
{
|
||||
/* IInternetSessionVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IPersistMoniker(void)
|
||||
{
|
||||
/* IPersistMoniker */
|
||||
}
|
||||
|
||||
static void test_pack_IPersistMonikerVtbl(void)
|
||||
{
|
||||
/* IPersistMonikerVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IWinInetHttpInfo(void)
|
||||
{
|
||||
/* IWinInetHttpInfo */
|
||||
}
|
||||
|
||||
static void test_pack_IWinInetHttpInfoVtbl(void)
|
||||
{
|
||||
/* IWinInetHttpInfoVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IWinInetInfo(void)
|
||||
{
|
||||
/* IWinInetInfo */
|
||||
}
|
||||
|
||||
static void test_pack_IWinInetInfoVtbl(void)
|
||||
{
|
||||
/* IWinInetInfoVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_LPBINDHOST(void)
|
||||
{
|
||||
/* LPBINDHOST */
|
||||
TEST_TYPE_SIZE (LPBINDHOST, 8)
|
||||
TEST_TYPE_ALIGN (LPBINDHOST, 8)
|
||||
}
|
||||
|
||||
static void test_pack_LPBINDING(void)
|
||||
{
|
||||
/* LPBINDING */
|
||||
TEST_TYPE_SIZE (LPBINDING, 8)
|
||||
TEST_TYPE_ALIGN (LPBINDING, 8)
|
||||
}
|
||||
|
||||
static void test_pack_LPBINDSTATUSCALLBACK(void)
|
||||
{
|
||||
/* LPBINDSTATUSCALLBACK */
|
||||
TEST_TYPE_SIZE (LPBINDSTATUSCALLBACK, 8)
|
||||
TEST_TYPE_ALIGN (LPBINDSTATUSCALLBACK, 8)
|
||||
}
|
||||
|
||||
static void test_pack_LPIINTERNETPROTOCOLINFO(void)
|
||||
{
|
||||
/* LPIINTERNETPROTOCOLINFO */
|
||||
TEST_TYPE_SIZE (LPIINTERNETPROTOCOLINFO, 8)
|
||||
TEST_TYPE_ALIGN (LPIINTERNETPROTOCOLINFO, 8)
|
||||
}
|
||||
|
||||
static void test_pack_LPIINTERNETSESSION(void)
|
||||
{
|
||||
/* LPIINTERNETSESSION */
|
||||
TEST_TYPE_SIZE (LPIINTERNETSESSION, 8)
|
||||
TEST_TYPE_ALIGN (LPIINTERNETSESSION, 8)
|
||||
}
|
||||
|
||||
static void test_pack_LPPERSISTMONIKER(void)
|
||||
{
|
||||
/* LPPERSISTMONIKER */
|
||||
TEST_TYPE_SIZE (LPPERSISTMONIKER, 8)
|
||||
TEST_TYPE_ALIGN (LPPERSISTMONIKER, 8)
|
||||
}
|
||||
|
||||
static void test_pack_LPREMFORMATETC(void)
|
||||
{
|
||||
/* LPREMFORMATETC */
|
||||
TEST_TYPE_SIZE (LPREMFORMATETC, 8)
|
||||
TEST_TYPE_ALIGN (LPREMFORMATETC, 8)
|
||||
}
|
||||
|
||||
static void test_pack_LPREMSECURITY_ATTRIBUTES(void)
|
||||
{
|
||||
/* LPREMSECURITY_ATTRIBUTES */
|
||||
TEST_TYPE_SIZE (LPREMSECURITY_ATTRIBUTES, 8)
|
||||
TEST_TYPE_ALIGN (LPREMSECURITY_ATTRIBUTES, 8)
|
||||
}
|
||||
|
||||
static void test_pack_LPWININETHTTPINFO(void)
|
||||
{
|
||||
/* LPWININETHTTPINFO */
|
||||
TEST_TYPE_SIZE (LPWININETHTTPINFO, 8)
|
||||
TEST_TYPE_ALIGN (LPWININETHTTPINFO, 8)
|
||||
}
|
||||
|
||||
static void test_pack_LPWININETINFO(void)
|
||||
{
|
||||
/* LPWININETINFO */
|
||||
TEST_TYPE_SIZE (LPWININETINFO, 8)
|
||||
TEST_TYPE_ALIGN (LPWININETINFO, 8)
|
||||
}
|
||||
|
||||
static void test_pack_PREMSECURITY_ATTRIBUTES(void)
|
||||
{
|
||||
/* PREMSECURITY_ATTRIBUTES */
|
||||
TEST_TYPE_SIZE (PREMSECURITY_ATTRIBUTES, 8)
|
||||
TEST_TYPE_ALIGN (PREMSECURITY_ATTRIBUTES, 8)
|
||||
}
|
||||
|
||||
static void test_pack_REMSECURITY_ATTRIBUTES(void)
|
||||
{
|
||||
/* REMSECURITY_ATTRIBUTES */
|
||||
TEST_TYPE_SIZE (REMSECURITY_ATTRIBUTES, 12)
|
||||
TEST_TYPE_ALIGN (REMSECURITY_ATTRIBUTES, 4)
|
||||
TEST_FIELD_SIZE (REMSECURITY_ATTRIBUTES, nLength, 4)
|
||||
TEST_FIELD_ALIGN (REMSECURITY_ATTRIBUTES, nLength, 4)
|
||||
TEST_FIELD_OFFSET(REMSECURITY_ATTRIBUTES, nLength, 0)
|
||||
TEST_FIELD_SIZE (REMSECURITY_ATTRIBUTES, lpSecurityDescriptor, 4)
|
||||
TEST_FIELD_ALIGN (REMSECURITY_ATTRIBUTES, lpSecurityDescriptor, 4)
|
||||
TEST_FIELD_OFFSET(REMSECURITY_ATTRIBUTES, lpSecurityDescriptor, 4)
|
||||
TEST_FIELD_SIZE (REMSECURITY_ATTRIBUTES, bInheritHandle, 4)
|
||||
TEST_FIELD_ALIGN (REMSECURITY_ATTRIBUTES, bInheritHandle, 4)
|
||||
TEST_FIELD_OFFSET(REMSECURITY_ATTRIBUTES, bInheritHandle, 8)
|
||||
}
|
||||
|
||||
static void test_pack_RemBINDINFO(void)
|
||||
{
|
||||
/* RemBINDINFO */
|
||||
TEST_TYPE_SIZE (RemBINDINFO, 96)
|
||||
TEST_TYPE_ALIGN (RemBINDINFO, 8)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, cbSize, 4)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, cbSize, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, cbSize, 0)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, szExtraInfo, 8)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, szExtraInfo, 8)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, szExtraInfo, 8)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, grfBindInfoF, 4)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, grfBindInfoF, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, grfBindInfoF, 16)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, dwBindVerb, 4)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, dwBindVerb, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, dwBindVerb, 20)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, szCustomVerb, 8)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, szCustomVerb, 8)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, szCustomVerb, 24)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, cbstgmedData, 4)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, cbstgmedData, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, cbstgmedData, 32)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, dwOptions, 4)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, dwOptions, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, dwOptions, 36)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, dwOptionsFlags, 4)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, dwOptionsFlags, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, dwOptionsFlags, 40)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, dwCodePage, 4)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, dwCodePage, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, dwCodePage, 44)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, securityAttributes, 12)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, securityAttributes, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, securityAttributes, 48)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, iid, 16)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, iid, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, iid, 60)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, pUnk, 8)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, pUnk, 8)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, pUnk, 80)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, dwReserved, 4)
|
||||
TEST_FIELD_ALIGN (RemBINDINFO, dwReserved, 4)
|
||||
TEST_FIELD_OFFSET(RemBINDINFO, dwReserved, 88)
|
||||
}
|
||||
|
||||
static void test_pack_RemFORMATETC(void)
|
||||
{
|
||||
/* RemFORMATETC */
|
||||
TEST_TYPE_SIZE (RemFORMATETC, 20)
|
||||
TEST_TYPE_ALIGN (RemFORMATETC, 4)
|
||||
TEST_FIELD_SIZE (RemFORMATETC, cfFormat, 4)
|
||||
TEST_FIELD_ALIGN (RemFORMATETC, cfFormat, 4)
|
||||
TEST_FIELD_OFFSET(RemFORMATETC, cfFormat, 0)
|
||||
TEST_FIELD_SIZE (RemFORMATETC, ptd, 4)
|
||||
TEST_FIELD_ALIGN (RemFORMATETC, ptd, 4)
|
||||
TEST_FIELD_OFFSET(RemFORMATETC, ptd, 4)
|
||||
TEST_FIELD_SIZE (RemFORMATETC, dwAspect, 4)
|
||||
TEST_FIELD_ALIGN (RemFORMATETC, dwAspect, 4)
|
||||
TEST_FIELD_OFFSET(RemFORMATETC, dwAspect, 8)
|
||||
TEST_FIELD_SIZE (RemFORMATETC, lindex, 4)
|
||||
TEST_FIELD_ALIGN (RemFORMATETC, lindex, 4)
|
||||
TEST_FIELD_OFFSET(RemFORMATETC, lindex, 12)
|
||||
TEST_FIELD_SIZE (RemFORMATETC, tymed, 4)
|
||||
TEST_FIELD_ALIGN (RemFORMATETC, tymed, 4)
|
||||
TEST_FIELD_OFFSET(RemFORMATETC, tymed, 16)
|
||||
}
|
||||
|
||||
#else /* _WIN64 */
|
||||
|
||||
static void test_pack_BINDINFO(void)
|
||||
{
|
||||
/* BINDINFO */
|
||||
TEST_FIELD_SIZE (BINDINFO, cbSize, 4)
|
||||
TEST_FIELD_ALIGN (BINDINFO, cbSize, 4)
|
||||
TEST_FIELD_OFFSET(BINDINFO, cbSize, 0)
|
||||
@@ -108,7 +352,7 @@ static void test_pack_IBindHost(void)
|
||||
|
||||
static void test_pack_IBindHostVtbl(void)
|
||||
{
|
||||
/* IBindHostVtbl (pack 4) */
|
||||
/* IBindHostVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IBindStatusCallback(void)
|
||||
@@ -118,7 +362,7 @@ static void test_pack_IBindStatusCallback(void)
|
||||
|
||||
static void test_pack_IBindStatusCallbackVtbl(void)
|
||||
{
|
||||
/* IBindStatusCallbackVtbl (pack 4) */
|
||||
/* IBindStatusCallbackVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IBinding(void)
|
||||
@@ -128,7 +372,7 @@ static void test_pack_IBinding(void)
|
||||
|
||||
static void test_pack_IBindingVtbl(void)
|
||||
{
|
||||
/* IBindingVtbl (pack 4) */
|
||||
/* IBindingVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IInternetProtocolInfo(void)
|
||||
@@ -138,7 +382,7 @@ static void test_pack_IInternetProtocolInfo(void)
|
||||
|
||||
static void test_pack_IInternetProtocolInfoVtbl(void)
|
||||
{
|
||||
/* IInternetProtocolInfoVtbl (pack 4) */
|
||||
/* IInternetProtocolInfoVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IInternetSession(void)
|
||||
@@ -148,7 +392,7 @@ static void test_pack_IInternetSession(void)
|
||||
|
||||
static void test_pack_IInternetSessionVtbl(void)
|
||||
{
|
||||
/* IInternetSessionVtbl (pack 4) */
|
||||
/* IInternetSessionVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IPersistMoniker(void)
|
||||
@@ -158,7 +402,7 @@ static void test_pack_IPersistMoniker(void)
|
||||
|
||||
static void test_pack_IPersistMonikerVtbl(void)
|
||||
{
|
||||
/* IPersistMonikerVtbl (pack 4) */
|
||||
/* IPersistMonikerVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IWinInetHttpInfo(void)
|
||||
@@ -168,7 +412,7 @@ static void test_pack_IWinInetHttpInfo(void)
|
||||
|
||||
static void test_pack_IWinInetHttpInfoVtbl(void)
|
||||
{
|
||||
/* IWinInetHttpInfoVtbl (pack 4) */
|
||||
/* IWinInetHttpInfoVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_IWinInetInfo(void)
|
||||
@@ -178,7 +422,7 @@ static void test_pack_IWinInetInfo(void)
|
||||
|
||||
static void test_pack_IWinInetInfoVtbl(void)
|
||||
{
|
||||
/* IWinInetInfoVtbl (pack 4) */
|
||||
/* IWinInetInfoVtbl */
|
||||
}
|
||||
|
||||
static void test_pack_LPBINDHOST(void)
|
||||
@@ -260,7 +504,7 @@ static void test_pack_PREMSECURITY_ATTRIBUTES(void)
|
||||
|
||||
static void test_pack_REMSECURITY_ATTRIBUTES(void)
|
||||
{
|
||||
/* REMSECURITY_ATTRIBUTES (pack 4) */
|
||||
/* REMSECURITY_ATTRIBUTES */
|
||||
TEST_TYPE_SIZE (REMSECURITY_ATTRIBUTES, 12)
|
||||
TEST_TYPE_ALIGN (REMSECURITY_ATTRIBUTES, 4)
|
||||
TEST_FIELD_SIZE (REMSECURITY_ATTRIBUTES, nLength, 4)
|
||||
@@ -276,7 +520,7 @@ static void test_pack_REMSECURITY_ATTRIBUTES(void)
|
||||
|
||||
static void test_pack_RemBINDINFO(void)
|
||||
{
|
||||
/* RemBINDINFO (pack 4) */
|
||||
/* RemBINDINFO */
|
||||
TEST_TYPE_SIZE (RemBINDINFO, 72)
|
||||
TEST_TYPE_ALIGN (RemBINDINFO, 4)
|
||||
TEST_FIELD_SIZE (RemBINDINFO, cbSize, 4)
|
||||
@@ -322,7 +566,7 @@ static void test_pack_RemBINDINFO(void)
|
||||
|
||||
static void test_pack_RemFORMATETC(void)
|
||||
{
|
||||
/* RemFORMATETC (pack 4) */
|
||||
/* RemFORMATETC */
|
||||
TEST_TYPE_SIZE (RemFORMATETC, 20)
|
||||
TEST_TYPE_ALIGN (RemFORMATETC, 4)
|
||||
TEST_FIELD_SIZE (RemFORMATETC, cfFormat, 4)
|
||||
@@ -342,6 +586,8 @@ static void test_pack_RemFORMATETC(void)
|
||||
TEST_FIELD_OFFSET(RemFORMATETC, tymed, 16)
|
||||
}
|
||||
|
||||
#endif /* _WIN64 */
|
||||
|
||||
static void test_pack(void)
|
||||
{
|
||||
test_pack_BINDINFO();
|
||||
@@ -379,9 +625,5 @@ static void test_pack(void)
|
||||
|
||||
START_TEST(generated)
|
||||
{
|
||||
#ifdef _WIN64
|
||||
ok(0, "The type size / alignment tests don't support Win64 yet\n");
|
||||
#else
|
||||
test_pack();
|
||||
#endif
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user