2009-04-29 15:11:22 +00:00
|
|
|
/* File generated automatically from tools/winapi/tests.dat; do not edit! */
|
2007-03-06 11:59:18 +00:00
|
|
|
/* This file can be copied, modified and distributed without restriction. */
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Unit tests for data structure packing
|
|
|
|
*/
|
|
|
|
|
|
|
|
#define WINVER 0x0501
|
|
|
|
#define _WIN32_IE 0x0501
|
|
|
|
#define _WIN32_WINNT 0x0501
|
|
|
|
|
|
|
|
#define WINE_NOWINSOCK
|
|
|
|
|
|
|
|
#include <stdarg.h>
|
|
|
|
#include "windef.h"
|
|
|
|
#include "winbase.h"
|
|
|
|
#include "wtypes.h"
|
|
|
|
#include "shellapi.h"
|
|
|
|
#include "winuser.h"
|
|
|
|
#include "wingdi.h"
|
|
|
|
#include "shlobj.h"
|
|
|
|
|
|
|
|
#include "wine/test.h"
|
|
|
|
|
|
|
|
/***********************************************************************
|
2008-05-09 17:35:45 +00:00
|
|
|
* Compatibility macros
|
2007-03-06 11:59:18 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#define DWORD_PTR UINT_PTR
|
|
|
|
#define LONG_PTR INT_PTR
|
|
|
|
#define ULONG_PTR UINT_PTR
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* Windows API extension
|
|
|
|
*/
|
|
|
|
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
|
|
|
|
# define _TYPE_ALIGNMENT(type) __alignof(type)
|
|
|
|
#elif defined(__GNUC__)
|
|
|
|
# define _TYPE_ALIGNMENT(type) __alignof__(type)
|
|
|
|
#else
|
|
|
|
/*
|
2009-04-29 15:11:22 +00:00
|
|
|
* FIXME: May not be possible without a compiler extension
|
|
|
|
* (if type is not just a name that is, otherwise the normal
|
2007-03-06 11:59:18 +00:00
|
|
|
* TYPE_ALIGNMENT can be used)
|
|
|
|
*/
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
|
|
|
|
#pragma warning(disable:4116)
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
|
|
|
|
# define TYPE_ALIGNMENT _TYPE_ALIGNMENT
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/***********************************************************************
|
|
|
|
* Test helper macros
|
|
|
|
*/
|
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
#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);
|
|
|
|
|
|
|
|
#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);
|
|
|
|
|
|
|
|
|
2009-04-29 15:11:22 +00:00
|
|
|
#ifdef _WIN64
|
2007-03-06 11:59:18 +00:00
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_BLOB(void)
|
|
|
|
{
|
|
|
|
/* BLOB */
|
|
|
|
TEST_TYPE_SIZE (BLOB, 16)
|
|
|
|
TEST_TYPE_ALIGN (BLOB, 8)
|
|
|
|
TEST_FIELD_SIZE (BLOB, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (BLOB, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(BLOB, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (BLOB, pBlobData, 8)
|
|
|
|
TEST_FIELD_ALIGN (BLOB, pBlobData, 8)
|
|
|
|
TEST_FIELD_OFFSET(BLOB, pBlobData, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BSTR(void)
|
|
|
|
{
|
|
|
|
/* BSTR */
|
|
|
|
TEST_TYPE_SIZE (BSTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (BSTR, 8)
|
|
|
|
TEST_TARGET_SIZE (BSTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(BSTR, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BSTRBLOB(void)
|
|
|
|
{
|
|
|
|
/* BSTRBLOB */
|
|
|
|
TEST_TYPE_SIZE (BSTRBLOB, 16)
|
|
|
|
TEST_TYPE_ALIGN (BSTRBLOB, 8)
|
|
|
|
TEST_FIELD_SIZE (BSTRBLOB, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (BSTRBLOB, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(BSTRBLOB, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (BSTRBLOB, pData, 8)
|
|
|
|
TEST_FIELD_ALIGN (BSTRBLOB, pData, 8)
|
|
|
|
TEST_FIELD_OFFSET(BSTRBLOB, pData, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BYTE_BLOB(void)
|
|
|
|
{
|
|
|
|
/* BYTE_BLOB */
|
|
|
|
TEST_TYPE_SIZE (BYTE_BLOB, 8)
|
|
|
|
TEST_TYPE_ALIGN (BYTE_BLOB, 4)
|
|
|
|
TEST_FIELD_SIZE (BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(BYTE_BLOB, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (BYTE_BLOB, abData, 1)
|
|
|
|
TEST_FIELD_ALIGN (BYTE_BLOB, abData, 1)
|
|
|
|
TEST_FIELD_OFFSET(BYTE_BLOB, abData, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BYTE_SIZEDARR(void)
|
|
|
|
{
|
|
|
|
/* BYTE_SIZEDARR */
|
|
|
|
TEST_TYPE_SIZE (BYTE_SIZEDARR, 16)
|
|
|
|
TEST_TYPE_ALIGN (BYTE_SIZEDARR, 8)
|
|
|
|
TEST_FIELD_SIZE (BYTE_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (BYTE_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(BYTE_SIZEDARR, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (BYTE_SIZEDARR, pData, 8)
|
|
|
|
TEST_FIELD_ALIGN (BYTE_SIZEDARR, pData, 8)
|
|
|
|
TEST_FIELD_OFFSET(BYTE_SIZEDARR, pData, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CLIPDATA(void)
|
|
|
|
{
|
|
|
|
/* CLIPDATA */
|
|
|
|
TEST_TYPE_SIZE (CLIPDATA, 16)
|
|
|
|
TEST_TYPE_ALIGN (CLIPDATA, 8)
|
|
|
|
TEST_FIELD_SIZE (CLIPDATA, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (CLIPDATA, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(CLIPDATA, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (CLIPDATA, ulClipFmt, 4)
|
|
|
|
TEST_FIELD_ALIGN (CLIPDATA, ulClipFmt, 4)
|
|
|
|
TEST_FIELD_OFFSET(CLIPDATA, ulClipFmt, 4)
|
|
|
|
TEST_FIELD_SIZE (CLIPDATA, pClipData, 8)
|
|
|
|
TEST_FIELD_ALIGN (CLIPDATA, pClipData, 8)
|
|
|
|
TEST_FIELD_OFFSET(CLIPDATA, pClipData, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CLIPFORMAT(void)
|
|
|
|
{
|
|
|
|
/* CLIPFORMAT */
|
|
|
|
TEST_TYPE_SIZE (CLIPFORMAT, 2)
|
|
|
|
TEST_TYPE_ALIGN (CLIPFORMAT, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(CLIPFORMAT)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_COAUTHIDENTITY(void)
|
|
|
|
{
|
|
|
|
/* COAUTHIDENTITY */
|
|
|
|
TEST_TYPE_SIZE (COAUTHIDENTITY, 48)
|
|
|
|
TEST_TYPE_ALIGN (COAUTHIDENTITY, 8)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, User, 8)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, User, 8)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, User, 0)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, UserLength, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, UserLength, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, UserLength, 8)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, Domain, 8)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, Domain, 8)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, Domain, 16)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, DomainLength, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, DomainLength, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, DomainLength, 24)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, Password, 8)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, Password, 8)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, Password, 32)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, PasswordLength, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, PasswordLength, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, PasswordLength, 40)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, Flags, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, Flags, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, Flags, 44)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_COAUTHINFO(void)
|
|
|
|
{
|
|
|
|
/* COAUTHINFO */
|
|
|
|
TEST_TYPE_SIZE (COAUTHINFO, 40)
|
|
|
|
TEST_TYPE_ALIGN (COAUTHINFO, 8)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwAuthnSvc, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnSvc, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnSvc, 0)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwAuthzSvc, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwAuthzSvc, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwAuthzSvc, 4)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, pwszServerPrincName, 8)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, pwszServerPrincName, 8)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, pwszServerPrincName, 8)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwAuthnLevel, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnLevel, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnLevel, 16)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwImpersonationLevel, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwImpersonationLevel, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwImpersonationLevel, 20)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, pAuthIdentityData, 8)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, pAuthIdentityData, 8)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, pAuthIdentityData, 24)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwCapabilities, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwCapabilities, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwCapabilities, 32)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DATE(void)
|
|
|
|
{
|
|
|
|
/* DATE */
|
|
|
|
TEST_TYPE_SIZE (DATE, 8)
|
|
|
|
TEST_TYPE_ALIGN (DATE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DOUBLE(void)
|
|
|
|
{
|
|
|
|
/* DOUBLE */
|
|
|
|
TEST_TYPE_SIZE (DOUBLE, 8)
|
|
|
|
TEST_TYPE_ALIGN (DOUBLE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DWORD_SIZEDARR(void)
|
|
|
|
{
|
|
|
|
/* DWORD_SIZEDARR */
|
|
|
|
TEST_TYPE_SIZE (DWORD_SIZEDARR, 16)
|
|
|
|
TEST_TYPE_ALIGN (DWORD_SIZEDARR, 8)
|
|
|
|
TEST_FIELD_SIZE (DWORD_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (DWORD_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(DWORD_SIZEDARR, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (DWORD_SIZEDARR, pData, 8)
|
|
|
|
TEST_FIELD_ALIGN (DWORD_SIZEDARR, pData, 8)
|
|
|
|
TEST_FIELD_OFFSET(DWORD_SIZEDARR, pData, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FLAGGED_BYTE_BLOB(void)
|
|
|
|
{
|
|
|
|
/* FLAGGED_BYTE_BLOB */
|
|
|
|
TEST_TYPE_SIZE (FLAGGED_BYTE_BLOB, 12)
|
|
|
|
TEST_TYPE_ALIGN (FLAGGED_BYTE_BLOB, 4)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, fFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, fFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, fFlags, 0)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, abData, 1)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, abData, 1)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, abData, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FLAGGED_WORD_BLOB(void)
|
|
|
|
{
|
|
|
|
/* FLAGGED_WORD_BLOB */
|
|
|
|
TEST_TYPE_SIZE (FLAGGED_WORD_BLOB, 12)
|
|
|
|
TEST_TYPE_ALIGN (FLAGGED_WORD_BLOB, 4)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, fFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, fFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, fFlags, 0)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, asData, 2)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, asData, 2)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, asData, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HMETAFILEPICT(void)
|
|
|
|
{
|
|
|
|
/* HMETAFILEPICT */
|
|
|
|
TEST_TYPE_SIZE (HMETAFILEPICT, 8)
|
|
|
|
TEST_TYPE_ALIGN (HMETAFILEPICT, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HYPER_SIZEDARR(void)
|
|
|
|
{
|
|
|
|
/* HYPER_SIZEDARR */
|
|
|
|
TEST_TYPE_SIZE (HYPER_SIZEDARR, 16)
|
|
|
|
TEST_TYPE_ALIGN (HYPER_SIZEDARR, 8)
|
|
|
|
TEST_FIELD_SIZE (HYPER_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (HYPER_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(HYPER_SIZEDARR, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (HYPER_SIZEDARR, pData, 8)
|
|
|
|
TEST_FIELD_ALIGN (HYPER_SIZEDARR, pData, 8)
|
|
|
|
TEST_FIELD_OFFSET(HYPER_SIZEDARR, pData, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPBLOB(void)
|
|
|
|
{
|
|
|
|
/* LPBLOB */
|
|
|
|
TEST_TYPE_SIZE (LPBLOB, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPBLOB, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPBSTR(void)
|
|
|
|
{
|
|
|
|
/* LPBSTR */
|
|
|
|
TEST_TYPE_SIZE (LPBSTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPBSTR, 8)
|
|
|
|
TEST_TARGET_SIZE (LPBSTR, 8)
|
|
|
|
TEST_TARGET_ALIGN(LPBSTR, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPBSTRBLOB(void)
|
|
|
|
{
|
|
|
|
/* LPBSTRBLOB */
|
|
|
|
TEST_TYPE_SIZE (LPBSTRBLOB, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPBSTRBLOB, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCOLESTR(void)
|
|
|
|
{
|
|
|
|
/* LPCOLESTR */
|
|
|
|
TEST_TYPE_SIZE (LPCOLESTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPCOLESTR, 8)
|
|
|
|
TEST_TARGET_SIZE (LPCOLESTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(LPCOLESTR, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCY(void)
|
|
|
|
{
|
|
|
|
/* LPCY */
|
|
|
|
TEST_TYPE_SIZE (LPCY, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPCY, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPDECIMAL(void)
|
|
|
|
{
|
|
|
|
/* LPDECIMAL */
|
|
|
|
TEST_TYPE_SIZE (LPDECIMAL, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPDECIMAL, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPOLESTR(void)
|
|
|
|
{
|
|
|
|
/* LPOLESTR */
|
|
|
|
TEST_TYPE_SIZE (LPOLESTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPOLESTR, 8)
|
|
|
|
TEST_TARGET_SIZE (LPOLESTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(LPOLESTR, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_OLECHAR(void)
|
|
|
|
{
|
|
|
|
/* OLECHAR */
|
|
|
|
TEST_TYPE_SIZE (OLECHAR, 2)
|
|
|
|
TEST_TYPE_ALIGN (OLECHAR, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PROPID(void)
|
|
|
|
{
|
|
|
|
/* PROPID */
|
|
|
|
TEST_TYPE_SIZE (PROPID, 4)
|
|
|
|
TEST_TYPE_ALIGN (PROPID, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHBITMAP(void)
|
|
|
|
{
|
|
|
|
/* RemHBITMAP */
|
|
|
|
TEST_TYPE_SIZE (RemHBITMAP, 8)
|
|
|
|
TEST_TYPE_ALIGN (RemHBITMAP, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHBITMAP, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHBITMAP, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHBITMAP, cbData, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHBITMAP, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHBITMAP, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHBITMAP, data, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHENHMETAFILE(void)
|
|
|
|
{
|
|
|
|
/* RemHENHMETAFILE */
|
|
|
|
TEST_TYPE_SIZE (RemHENHMETAFILE, 8)
|
|
|
|
TEST_TYPE_ALIGN (RemHENHMETAFILE, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHENHMETAFILE, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHENHMETAFILE, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHENHMETAFILE, cbData, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHENHMETAFILE, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHENHMETAFILE, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHENHMETAFILE, data, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHGLOBAL(void)
|
|
|
|
{
|
|
|
|
/* RemHGLOBAL */
|
|
|
|
TEST_TYPE_SIZE (RemHGLOBAL, 12)
|
|
|
|
TEST_TYPE_ALIGN (RemHGLOBAL, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHGLOBAL, fNullHGlobal, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHGLOBAL, fNullHGlobal, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHGLOBAL, fNullHGlobal, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHGLOBAL, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHGLOBAL, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHGLOBAL, cbData, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHGLOBAL, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHGLOBAL, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHGLOBAL, data, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHMETAFILEPICT(void)
|
|
|
|
{
|
|
|
|
/* RemHMETAFILEPICT */
|
|
|
|
TEST_TYPE_SIZE (RemHMETAFILEPICT, 20)
|
|
|
|
TEST_TYPE_ALIGN (RemHMETAFILEPICT, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, mm, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, mm, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, mm, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, yExt, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, yExt, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, yExt, 8)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, cbData, 12)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, data, 16)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHPALETTE(void)
|
|
|
|
{
|
|
|
|
/* RemHPALETTE */
|
|
|
|
TEST_TYPE_SIZE (RemHPALETTE, 8)
|
|
|
|
TEST_TYPE_ALIGN (RemHPALETTE, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHPALETTE, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHPALETTE, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHPALETTE, cbData, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHPALETTE, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHPALETTE, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHPALETTE, data, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SCODE(void)
|
|
|
|
{
|
|
|
|
/* SCODE */
|
|
|
|
TEST_TYPE_SIZE (SCODE, 4)
|
|
|
|
TEST_TYPE_ALIGN (SCODE, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UP_BYTE_BLOB(void)
|
|
|
|
{
|
|
|
|
/* UP_BYTE_BLOB */
|
|
|
|
TEST_TYPE_SIZE (UP_BYTE_BLOB, 8)
|
|
|
|
TEST_TYPE_ALIGN (UP_BYTE_BLOB, 8)
|
|
|
|
TEST_TARGET_SIZE (UP_BYTE_BLOB, 8)
|
|
|
|
TEST_TARGET_ALIGN(UP_BYTE_BLOB, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UP_FLAGGED_BYTE_BLOB(void)
|
|
|
|
{
|
|
|
|
/* UP_FLAGGED_BYTE_BLOB */
|
|
|
|
TEST_TYPE_SIZE (UP_FLAGGED_BYTE_BLOB, 8)
|
|
|
|
TEST_TYPE_ALIGN (UP_FLAGGED_BYTE_BLOB, 8)
|
|
|
|
TEST_TARGET_SIZE (UP_FLAGGED_BYTE_BLOB, 12)
|
|
|
|
TEST_TARGET_ALIGN(UP_FLAGGED_BYTE_BLOB, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UP_FLAGGED_WORD_BLOB(void)
|
|
|
|
{
|
|
|
|
/* UP_FLAGGED_WORD_BLOB */
|
|
|
|
TEST_TYPE_SIZE (UP_FLAGGED_WORD_BLOB, 8)
|
|
|
|
TEST_TYPE_ALIGN (UP_FLAGGED_WORD_BLOB, 8)
|
|
|
|
TEST_TARGET_SIZE (UP_FLAGGED_WORD_BLOB, 12)
|
|
|
|
TEST_TARGET_ALIGN(UP_FLAGGED_WORD_BLOB, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_VARIANT_BOOL(void)
|
|
|
|
{
|
|
|
|
/* VARIANT_BOOL */
|
|
|
|
TEST_TYPE_SIZE (VARIANT_BOOL, 2)
|
|
|
|
TEST_TYPE_ALIGN (VARIANT_BOOL, 2)
|
|
|
|
TEST_TYPE_SIGNED(VARIANT_BOOL)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_VARTYPE(void)
|
|
|
|
{
|
|
|
|
/* VARTYPE */
|
|
|
|
TEST_TYPE_SIZE (VARTYPE, 2)
|
|
|
|
TEST_TYPE_ALIGN (VARTYPE, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(VARTYPE)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_WORD_SIZEDARR(void)
|
|
|
|
{
|
|
|
|
/* WORD_SIZEDARR */
|
|
|
|
TEST_TYPE_SIZE (WORD_SIZEDARR, 16)
|
|
|
|
TEST_TYPE_ALIGN (WORD_SIZEDARR, 8)
|
|
|
|
TEST_FIELD_SIZE (WORD_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (WORD_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(WORD_SIZEDARR, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (WORD_SIZEDARR, pData, 8)
|
|
|
|
TEST_FIELD_ALIGN (WORD_SIZEDARR, pData, 8)
|
|
|
|
TEST_FIELD_OFFSET(WORD_SIZEDARR, pData, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_remoteMETAFILEPICT(void)
|
|
|
|
{
|
|
|
|
/* remoteMETAFILEPICT */
|
|
|
|
TEST_TYPE_SIZE (remoteMETAFILEPICT, 24)
|
|
|
|
TEST_TYPE_ALIGN (remoteMETAFILEPICT, 8)
|
|
|
|
TEST_FIELD_SIZE (remoteMETAFILEPICT, mm, 4)
|
|
|
|
TEST_FIELD_ALIGN (remoteMETAFILEPICT, mm, 4)
|
|
|
|
TEST_FIELD_OFFSET(remoteMETAFILEPICT, mm, 0)
|
|
|
|
TEST_FIELD_SIZE (remoteMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_ALIGN (remoteMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_OFFSET(remoteMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_SIZE (remoteMETAFILEPICT, yExt, 4)
|
|
|
|
TEST_FIELD_ALIGN (remoteMETAFILEPICT, yExt, 4)
|
|
|
|
TEST_FIELD_OFFSET(remoteMETAFILEPICT, yExt, 8)
|
|
|
|
TEST_FIELD_SIZE (remoteMETAFILEPICT, hMF, 8)
|
|
|
|
TEST_FIELD_ALIGN (remoteMETAFILEPICT, hMF, 8)
|
|
|
|
TEST_FIELD_OFFSET(remoteMETAFILEPICT, hMF, 16)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userBITMAP(void)
|
|
|
|
{
|
|
|
|
/* userBITMAP */
|
|
|
|
TEST_TYPE_SIZE (userBITMAP, 28)
|
|
|
|
TEST_TYPE_ALIGN (userBITMAP, 4)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmType, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmType, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmType, 0)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmWidth, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmWidth, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmWidth, 4)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmHeight, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmHeight, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmHeight, 8)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmWidthBytes, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmWidthBytes, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmWidthBytes, 12)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmPlanes, 2)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmPlanes, 2)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmPlanes, 16)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmBitsPixel, 2)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmBitsPixel, 2)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmBitsPixel, 18)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, cbSize, 20)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, pBuffer, 1)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, pBuffer, 1)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, pBuffer, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userCLIPFORMAT(void)
|
|
|
|
{
|
|
|
|
/* userCLIPFORMAT */
|
|
|
|
TEST_FIELD_SIZE (userCLIPFORMAT, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userCLIPFORMAT, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userCLIPFORMAT, fContext, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHBITMAP(void)
|
|
|
|
{
|
|
|
|
/* userHBITMAP */
|
|
|
|
TEST_FIELD_SIZE (userHBITMAP, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHBITMAP, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHBITMAP, fContext, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHENHMETAFILE(void)
|
|
|
|
{
|
|
|
|
/* userHENHMETAFILE */
|
|
|
|
TEST_FIELD_SIZE (userHENHMETAFILE, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHENHMETAFILE, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHENHMETAFILE, fContext, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHGLOBAL(void)
|
|
|
|
{
|
|
|
|
/* userHGLOBAL */
|
|
|
|
TEST_FIELD_SIZE (userHGLOBAL, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHGLOBAL, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHGLOBAL, fContext, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHMETAFILE(void)
|
|
|
|
{
|
|
|
|
/* userHMETAFILE */
|
|
|
|
TEST_FIELD_SIZE (userHMETAFILE, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHMETAFILE, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHMETAFILE, fContext, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHMETAFILEPICT(void)
|
|
|
|
{
|
|
|
|
/* userHMETAFILEPICT */
|
|
|
|
TEST_FIELD_SIZE (userHMETAFILEPICT, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHMETAFILEPICT, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHMETAFILEPICT, fContext, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHPALETTE(void)
|
|
|
|
{
|
|
|
|
/* userHPALETTE */
|
|
|
|
TEST_FIELD_SIZE (userHPALETTE, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHPALETTE, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHPALETTE, fContext, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireBSTR(void)
|
|
|
|
{
|
|
|
|
/* wireBSTR */
|
|
|
|
TEST_TYPE_SIZE (wireBSTR, 8)
|
|
|
|
TEST_TYPE_ALIGN (wireBSTR, 8)
|
|
|
|
TEST_TARGET_SIZE (wireBSTR, 12)
|
|
|
|
TEST_TARGET_ALIGN(wireBSTR, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireCLIPFORMAT(void)
|
|
|
|
{
|
|
|
|
/* wireCLIPFORMAT */
|
|
|
|
TEST_TYPE_SIZE (wireCLIPFORMAT, 8)
|
|
|
|
TEST_TYPE_ALIGN (wireCLIPFORMAT, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHBITMAP(void)
|
|
|
|
{
|
|
|
|
/* wireHBITMAP */
|
|
|
|
TEST_TYPE_SIZE (wireHBITMAP, 8)
|
|
|
|
TEST_TYPE_ALIGN (wireHBITMAP, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHENHMETAFILE(void)
|
|
|
|
{
|
|
|
|
/* wireHENHMETAFILE */
|
|
|
|
TEST_TYPE_SIZE (wireHENHMETAFILE, 8)
|
|
|
|
TEST_TYPE_ALIGN (wireHENHMETAFILE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHGLOBAL(void)
|
|
|
|
{
|
|
|
|
/* wireHGLOBAL */
|
|
|
|
TEST_TYPE_SIZE (wireHGLOBAL, 8)
|
|
|
|
TEST_TYPE_ALIGN (wireHGLOBAL, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHMETAFILE(void)
|
|
|
|
{
|
|
|
|
/* wireHMETAFILE */
|
|
|
|
TEST_TYPE_SIZE (wireHMETAFILE, 8)
|
|
|
|
TEST_TYPE_ALIGN (wireHMETAFILE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHMETAFILEPICT(void)
|
|
|
|
{
|
|
|
|
/* wireHMETAFILEPICT */
|
|
|
|
TEST_TYPE_SIZE (wireHMETAFILEPICT, 8)
|
|
|
|
TEST_TYPE_ALIGN (wireHMETAFILEPICT, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHPALETTE(void)
|
|
|
|
{
|
|
|
|
/* wireHPALETTE */
|
|
|
|
TEST_TYPE_SIZE (wireHPALETTE, 8)
|
|
|
|
TEST_TYPE_ALIGN (wireHPALETTE, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CLSID(void)
|
|
|
|
{
|
|
|
|
/* CLSID */
|
|
|
|
TEST_TYPE_SIZE (CLSID, 16)
|
|
|
|
TEST_TYPE_ALIGN (CLSID, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FMTID(void)
|
|
|
|
{
|
|
|
|
/* FMTID */
|
|
|
|
TEST_TYPE_SIZE (FMTID, 16)
|
|
|
|
TEST_TYPE_ALIGN (FMTID, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IID(void)
|
|
|
|
{
|
|
|
|
/* IID */
|
|
|
|
TEST_TYPE_SIZE (IID, 16)
|
|
|
|
TEST_TYPE_ALIGN (IID, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_APPBARDATA(void)
|
|
|
|
{
|
|
|
|
/* APPBARDATA */
|
|
|
|
TEST_TYPE_SIZE (APPBARDATA, 48)
|
|
|
|
TEST_TYPE_ALIGN (APPBARDATA, 8)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, hWnd, 8)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, hWnd, 8)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, hWnd, 8)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, uCallbackMessage, 4)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, uCallbackMessage, 4)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, uCallbackMessage, 16)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, uEdge, 4)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, uEdge, 4)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, uEdge, 20)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, rc, 16)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, rc, 4)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, rc, 24)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, lParam, 8)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, lParam, 8)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, lParam, 40)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DRAGINFOA(void)
|
|
|
|
{
|
|
|
|
/* DRAGINFOA */
|
|
|
|
TEST_TYPE_SIZE (DRAGINFOA, 32)
|
|
|
|
TEST_TYPE_ALIGN (DRAGINFOA, 8)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, uSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, uSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, uSize, 0)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, pt, 8)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, pt, 4)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, pt, 4)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, fNC, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, fNC, 4)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, fNC, 12)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, lpFileList, 8)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, lpFileList, 8)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, lpFileList, 16)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, grfKeyState, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, grfKeyState, 4)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, grfKeyState, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DRAGINFOW(void)
|
|
|
|
{
|
|
|
|
/* DRAGINFOW */
|
|
|
|
TEST_TYPE_SIZE (DRAGINFOW, 32)
|
|
|
|
TEST_TYPE_ALIGN (DRAGINFOW, 8)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, uSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, uSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, uSize, 0)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, pt, 8)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, pt, 4)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, pt, 4)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, fNC, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, fNC, 4)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, fNC, 12)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, lpFileList, 8)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, lpFileList, 8)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, lpFileList, 16)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, grfKeyState, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, grfKeyState, 4)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, grfKeyState, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEOP_FLAGS(void)
|
|
|
|
{
|
|
|
|
/* FILEOP_FLAGS */
|
|
|
|
TEST_TYPE_SIZE (FILEOP_FLAGS, 2)
|
|
|
|
TEST_TYPE_ALIGN (FILEOP_FLAGS, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(FILEOP_FLAGS)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPDRAGINFOA(void)
|
|
|
|
{
|
|
|
|
/* LPDRAGINFOA */
|
|
|
|
TEST_TYPE_SIZE (LPDRAGINFOA, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPDRAGINFOA, 8)
|
|
|
|
TEST_TARGET_SIZE (LPDRAGINFOA, 32)
|
|
|
|
TEST_TARGET_ALIGN(LPDRAGINFOA, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPDRAGINFOW(void)
|
|
|
|
{
|
|
|
|
/* LPDRAGINFOW */
|
|
|
|
TEST_TYPE_SIZE (LPDRAGINFOW, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPDRAGINFOW, 8)
|
|
|
|
TEST_TARGET_SIZE (LPDRAGINFOW, 32)
|
|
|
|
TEST_TARGET_ALIGN(LPDRAGINFOW, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLEXECUTEINFOA(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLEXECUTEINFOA */
|
|
|
|
TEST_TYPE_SIZE (LPSHELLEXECUTEINFOA, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLEXECUTEINFOA, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLEXECUTEINFOW(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLEXECUTEINFOW */
|
|
|
|
TEST_TYPE_SIZE (LPSHELLEXECUTEINFOW, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLEXECUTEINFOW, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHFILEOPSTRUCTA(void)
|
|
|
|
{
|
|
|
|
/* LPSHFILEOPSTRUCTA */
|
|
|
|
TEST_TYPE_SIZE (LPSHFILEOPSTRUCTA, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHFILEOPSTRUCTA, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSHFILEOPSTRUCTA, 56)
|
|
|
|
TEST_TARGET_ALIGN(LPSHFILEOPSTRUCTA, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHFILEOPSTRUCTW(void)
|
|
|
|
{
|
|
|
|
/* LPSHFILEOPSTRUCTW */
|
|
|
|
TEST_TYPE_SIZE (LPSHFILEOPSTRUCTW, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHFILEOPSTRUCTW, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSHFILEOPSTRUCTW, 56)
|
|
|
|
TEST_TARGET_ALIGN(LPSHFILEOPSTRUCTW, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHNAMEMAPPINGA(void)
|
|
|
|
{
|
|
|
|
/* LPSHNAMEMAPPINGA */
|
|
|
|
TEST_TYPE_SIZE (LPSHNAMEMAPPINGA, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHNAMEMAPPINGA, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSHNAMEMAPPINGA, 24)
|
|
|
|
TEST_TARGET_ALIGN(LPSHNAMEMAPPINGA, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHNAMEMAPPINGW(void)
|
|
|
|
{
|
|
|
|
/* LPSHNAMEMAPPINGW */
|
|
|
|
TEST_TYPE_SIZE (LPSHNAMEMAPPINGW, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHNAMEMAPPINGW, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSHNAMEMAPPINGW, 24)
|
|
|
|
TEST_TARGET_ALIGN(LPSHNAMEMAPPINGW, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_NOTIFYICONDATAA(void)
|
|
|
|
{
|
|
|
|
/* NOTIFYICONDATAA */
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, hWnd, 8)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, hWnd, 8)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, hWnd, 8)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, uID, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, uID, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, uID, 16)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, uFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, uFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, uFlags, 20)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, uCallbackMessage, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, uCallbackMessage, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, uCallbackMessage, 24)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, hIcon, 8)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, hIcon, 8)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, hIcon, 32)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, szTip, 128)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, szTip, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, szTip, 40)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, dwState, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwState, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwState, 168)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, dwStateMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwStateMask, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwStateMask, 172)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, szInfo, 256)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, szInfo, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, szInfo, 176)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_NOTIFYICONDATAW(void)
|
|
|
|
{
|
|
|
|
/* NOTIFYICONDATAW */
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, hWnd, 8)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, hWnd, 8)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, hWnd, 8)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, uID, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, uID, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, uID, 16)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, uFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, uFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, uFlags, 20)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, uCallbackMessage, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, uCallbackMessage, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, uCallbackMessage, 24)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, hIcon, 8)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, hIcon, 8)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, hIcon, 32)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, szTip, 256)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, szTip, 2)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, szTip, 40)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, dwState, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwState, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwState, 296)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, dwStateMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwStateMask, 4)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwStateMask, 300)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, szInfo, 512)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, szInfo, 2)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, szInfo, 304)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PAPPBARDATA(void)
|
|
|
|
{
|
|
|
|
/* PAPPBARDATA */
|
|
|
|
TEST_TYPE_SIZE (PAPPBARDATA, 8)
|
|
|
|
TEST_TYPE_ALIGN (PAPPBARDATA, 8)
|
|
|
|
TEST_TARGET_SIZE (PAPPBARDATA, 48)
|
|
|
|
TEST_TARGET_ALIGN(PAPPBARDATA, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PNOTIFYICONDATAA(void)
|
|
|
|
{
|
|
|
|
/* PNOTIFYICONDATAA */
|
|
|
|
TEST_TYPE_SIZE (PNOTIFYICONDATAA, 8)
|
|
|
|
TEST_TYPE_ALIGN (PNOTIFYICONDATAA, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PNOTIFYICONDATAW(void)
|
|
|
|
{
|
|
|
|
/* PNOTIFYICONDATAW */
|
|
|
|
TEST_TYPE_SIZE (PNOTIFYICONDATAW, 8)
|
|
|
|
TEST_TYPE_ALIGN (PNOTIFYICONDATAW, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRINTEROP_FLAGS(void)
|
|
|
|
{
|
|
|
|
/* PRINTEROP_FLAGS */
|
|
|
|
TEST_TYPE_SIZE (PRINTEROP_FLAGS, 2)
|
|
|
|
TEST_TYPE_ALIGN (PRINTEROP_FLAGS, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(PRINTEROP_FLAGS)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLEXECUTEINFOA(void)
|
|
|
|
{
|
|
|
|
/* SHELLEXECUTEINFOA */
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, fMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, fMask, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, fMask, 4)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hwnd, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hwnd, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hwnd, 8)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpVerb, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpVerb, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpVerb, 16)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpFile, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpFile, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpFile, 24)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpParameters, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpParameters, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpParameters, 32)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpDirectory, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpDirectory, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpDirectory, 40)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, nShow, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, nShow, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, nShow, 48)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hInstApp, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hInstApp, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hInstApp, 56)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpIDList, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpIDList, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpIDList, 64)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpClass, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpClass, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpClass, 72)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hkeyClass, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hkeyClass, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hkeyClass, 80)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, dwHotKey, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, dwHotKey, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, dwHotKey, 88)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLEXECUTEINFOW(void)
|
|
|
|
{
|
|
|
|
/* SHELLEXECUTEINFOW */
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, fMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, fMask, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, fMask, 4)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hwnd, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hwnd, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hwnd, 8)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpVerb, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpVerb, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpVerb, 16)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpFile, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpFile, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpFile, 24)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpParameters, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpParameters, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpParameters, 32)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpDirectory, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpDirectory, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpDirectory, 40)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, nShow, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, nShow, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, nShow, 48)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hInstApp, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hInstApp, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hInstApp, 56)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpIDList, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpIDList, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpIDList, 64)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpClass, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpClass, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpClass, 72)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hkeyClass, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hkeyClass, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hkeyClass, 80)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, dwHotKey, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, dwHotKey, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, dwHotKey, 88)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHFILEINFOA(void)
|
|
|
|
{
|
|
|
|
/* SHFILEINFOA */
|
|
|
|
TEST_TYPE_SIZE (SHFILEINFOA, 360)
|
|
|
|
TEST_TYPE_ALIGN (SHFILEINFOA, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, hIcon, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, hIcon, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, hIcon, 0)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, iIcon, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, iIcon, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, iIcon, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, dwAttributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, dwAttributes, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, dwAttributes, 12)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, szDisplayName, 260)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, szDisplayName, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, szDisplayName, 16)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, szTypeName, 80)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, szTypeName, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, szTypeName, 276)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHFILEINFOW(void)
|
|
|
|
{
|
|
|
|
/* SHFILEINFOW */
|
|
|
|
TEST_TYPE_SIZE (SHFILEINFOW, 696)
|
|
|
|
TEST_TYPE_ALIGN (SHFILEINFOW, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, hIcon, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, hIcon, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, hIcon, 0)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, iIcon, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, iIcon, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, iIcon, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, dwAttributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, dwAttributes, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, dwAttributes, 12)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, szDisplayName, 520)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, szDisplayName, 2)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, szDisplayName, 16)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, szTypeName, 160)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, szTypeName, 2)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, szTypeName, 536)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHFILEOPSTRUCTA(void)
|
|
|
|
{
|
|
|
|
/* SHFILEOPSTRUCTA */
|
|
|
|
TEST_TYPE_SIZE (SHFILEOPSTRUCTA, 56)
|
|
|
|
TEST_TYPE_ALIGN (SHFILEOPSTRUCTA, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, hwnd, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hwnd, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hwnd, 0)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, wFunc, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, wFunc, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, wFunc, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, pFrom, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, pFrom, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, pFrom, 16)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, pTo, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, pTo, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, pTo, 24)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fFlags, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fFlags, 2)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fFlags, 32)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fAnyOperationsAborted, 36)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, hNameMappings, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hNameMappings, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hNameMappings, 40)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, lpszProgressTitle, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, lpszProgressTitle, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, lpszProgressTitle, 48)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHFILEOPSTRUCTW(void)
|
|
|
|
{
|
|
|
|
/* SHFILEOPSTRUCTW */
|
|
|
|
TEST_TYPE_SIZE (SHFILEOPSTRUCTW, 56)
|
|
|
|
TEST_TYPE_ALIGN (SHFILEOPSTRUCTW, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, hwnd, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hwnd, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hwnd, 0)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, wFunc, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, wFunc, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, wFunc, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, pFrom, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, pFrom, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, pFrom, 16)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, pTo, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, pTo, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, pTo, 24)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fFlags, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fFlags, 2)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fFlags, 32)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fAnyOperationsAborted, 36)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, hNameMappings, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hNameMappings, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hNameMappings, 40)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, lpszProgressTitle, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, lpszProgressTitle, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, lpszProgressTitle, 48)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHNAMEMAPPINGA(void)
|
|
|
|
{
|
|
|
|
/* SHNAMEMAPPINGA */
|
|
|
|
TEST_TYPE_SIZE (SHNAMEMAPPINGA, 24)
|
|
|
|
TEST_TYPE_ALIGN (SHNAMEMAPPINGA, 8)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszOldPath, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszOldPath, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszOldPath, 0)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszNewPath, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszNewPath, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszNewPath, 8)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchOldPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchOldPath, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchOldPath, 16)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchNewPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchNewPath, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchNewPath, 20)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHNAMEMAPPINGW(void)
|
|
|
|
{
|
|
|
|
/* SHNAMEMAPPINGW */
|
|
|
|
TEST_TYPE_SIZE (SHNAMEMAPPINGW, 24)
|
|
|
|
TEST_TYPE_ALIGN (SHNAMEMAPPINGW, 8)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszOldPath, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszOldPath, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszOldPath, 0)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszNewPath, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszNewPath, 8)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszNewPath, 8)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchOldPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchOldPath, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchOldPath, 16)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchNewPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchNewPath, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchNewPath, 20)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ITEMIDLIST(void)
|
|
|
|
{
|
|
|
|
/* ITEMIDLIST (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (ITEMIDLIST, 3)
|
|
|
|
TEST_TYPE_ALIGN (ITEMIDLIST, 1)
|
|
|
|
TEST_FIELD_SIZE (ITEMIDLIST, mkid, 3)
|
|
|
|
TEST_FIELD_ALIGN (ITEMIDLIST, mkid, 1)
|
|
|
|
TEST_FIELD_OFFSET(ITEMIDLIST, mkid, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCITEMIDLIST(void)
|
|
|
|
{
|
|
|
|
/* LPCITEMIDLIST */
|
|
|
|
TEST_TYPE_SIZE (LPCITEMIDLIST, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPCITEMIDLIST, 8)
|
|
|
|
TEST_TARGET_SIZE (LPCITEMIDLIST, 3)
|
|
|
|
TEST_TARGET_ALIGN(LPCITEMIDLIST, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCSHITEMID(void)
|
|
|
|
{
|
|
|
|
/* LPCSHITEMID */
|
|
|
|
TEST_TYPE_SIZE (LPCSHITEMID, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPCSHITEMID, 8)
|
|
|
|
TEST_TARGET_SIZE (LPCSHITEMID, 3)
|
|
|
|
TEST_TARGET_ALIGN(LPCSHITEMID, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPITEMIDLIST(void)
|
|
|
|
{
|
|
|
|
/* LPITEMIDLIST */
|
|
|
|
TEST_TYPE_SIZE (LPITEMIDLIST, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPITEMIDLIST, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLDETAILS(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLDETAILS */
|
|
|
|
TEST_TYPE_SIZE (LPSHELLDETAILS, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLDETAILS, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHITEMID(void)
|
|
|
|
{
|
|
|
|
/* LPSHITEMID */
|
|
|
|
TEST_TYPE_SIZE (LPSHITEMID, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHITEMID, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSTRRET(void)
|
|
|
|
{
|
|
|
|
/* LPSTRRET */
|
|
|
|
TEST_TYPE_SIZE (LPSTRRET, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSTRRET, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLDETAILS(void)
|
|
|
|
{
|
|
|
|
/* SHELLDETAILS (pack 1) */
|
|
|
|
TEST_FIELD_SIZE (SHELLDETAILS, fmt, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLDETAILS, fmt, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLDETAILS, fmt, 0)
|
|
|
|
TEST_FIELD_SIZE (SHELLDETAILS, cxChar, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLDETAILS, cxChar, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLDETAILS, cxChar, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHITEMID(void)
|
|
|
|
{
|
|
|
|
/* SHITEMID (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (SHITEMID, 3)
|
|
|
|
TEST_TYPE_ALIGN (SHITEMID, 1)
|
|
|
|
TEST_FIELD_SIZE (SHITEMID, cb, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHITEMID, cb, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHITEMID, cb, 0)
|
|
|
|
TEST_FIELD_SIZE (SHITEMID, abID, 1)
|
|
|
|
TEST_FIELD_ALIGN (SHITEMID, abID, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHITEMID, abID, 2)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_STRRET(void)
|
|
|
|
{
|
|
|
|
/* STRRET (pack 8) */
|
|
|
|
TEST_FIELD_SIZE (STRRET, uType, 4)
|
|
|
|
TEST_FIELD_ALIGN (STRRET, uType, 4)
|
|
|
|
TEST_FIELD_OFFSET(STRRET, uType, 0)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_AUTO_SCROLL_DATA(void)
|
|
|
|
{
|
|
|
|
/* AUTO_SCROLL_DATA (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (AUTO_SCROLL_DATA, 48)
|
|
|
|
TEST_TYPE_ALIGN (AUTO_SCROLL_DATA, 1)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, iNextSample, 4)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, iNextSample, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, iNextSample, 0)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwLastScroll, 4)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwLastScroll, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwLastScroll, 4)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, bFull, 4)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, bFull, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, bFull, 8)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, pts, 24)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, pts, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, pts, 12)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwTimes, 12)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwTimes, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwTimes, 36)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BFFCALLBACK(void)
|
|
|
|
{
|
|
|
|
/* BFFCALLBACK */
|
|
|
|
TEST_TYPE_SIZE (BFFCALLBACK, 8)
|
|
|
|
TEST_TYPE_ALIGN (BFFCALLBACK, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BROWSEINFOA(void)
|
|
|
|
{
|
|
|
|
/* BROWSEINFOA (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (BROWSEINFOA, 64)
|
|
|
|
TEST_TYPE_ALIGN (BROWSEINFOA, 8)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, hwndOwner, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, hwndOwner, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, hwndOwner, 0)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, pidlRoot, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, pidlRoot, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, pidlRoot, 8)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, pszDisplayName, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, pszDisplayName, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, pszDisplayName, 16)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, lpszTitle, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, lpszTitle, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, lpszTitle, 24)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, ulFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, ulFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, ulFlags, 32)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, lpfn, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, lpfn, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, lpfn, 40)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, lParam, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, lParam, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, lParam, 48)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, iImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, iImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, iImage, 56)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BROWSEINFOW(void)
|
|
|
|
{
|
|
|
|
/* BROWSEINFOW (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (BROWSEINFOW, 64)
|
|
|
|
TEST_TYPE_ALIGN (BROWSEINFOW, 8)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, hwndOwner, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, hwndOwner, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, hwndOwner, 0)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, pidlRoot, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, pidlRoot, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, pidlRoot, 8)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, pszDisplayName, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, pszDisplayName, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, pszDisplayName, 16)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, lpszTitle, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, lpszTitle, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, lpszTitle, 24)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, ulFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, ulFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, ulFlags, 32)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, lpfn, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, lpfn, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, lpfn, 40)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, lParam, 8)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, lParam, 8)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, lParam, 48)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, iImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, iImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, iImage, 56)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CABINETSTATE(void)
|
|
|
|
{
|
|
|
|
/* CABINETSTATE (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (CABINETSTATE, 12)
|
|
|
|
TEST_TYPE_ALIGN (CABINETSTATE, 1)
|
|
|
|
TEST_FIELD_SIZE (CABINETSTATE, cLength, 2)
|
|
|
|
TEST_FIELD_ALIGN (CABINETSTATE, cLength, 1)
|
|
|
|
TEST_FIELD_OFFSET(CABINETSTATE, cLength, 0)
|
|
|
|
TEST_FIELD_SIZE (CABINETSTATE, nVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (CABINETSTATE, nVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(CABINETSTATE, nVersion, 2)
|
|
|
|
TEST_FIELD_SIZE (CABINETSTATE, fMenuEnumFilter, 4)
|
|
|
|
TEST_FIELD_ALIGN (CABINETSTATE, fMenuEnumFilter, 1)
|
|
|
|
TEST_FIELD_OFFSET(CABINETSTATE, fMenuEnumFilter, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CIDA(void)
|
|
|
|
{
|
|
|
|
/* CIDA (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (CIDA, 8)
|
|
|
|
TEST_TYPE_ALIGN (CIDA, 1)
|
|
|
|
TEST_FIELD_SIZE (CIDA, cidl, 4)
|
|
|
|
TEST_FIELD_ALIGN (CIDA, cidl, 1)
|
|
|
|
TEST_FIELD_OFFSET(CIDA, cidl, 0)
|
|
|
|
TEST_FIELD_SIZE (CIDA, aoffset, 4)
|
|
|
|
TEST_FIELD_ALIGN (CIDA, aoffset, 1)
|
|
|
|
TEST_FIELD_OFFSET(CIDA, aoffset, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CSFV(void)
|
|
|
|
{
|
|
|
|
/* CSFV (pack 8) */
|
|
|
|
TEST_FIELD_SIZE (CSFV, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (CSFV, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(CSFV, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (CSFV, pshf, 8)
|
|
|
|
TEST_FIELD_ALIGN (CSFV, pshf, 8)
|
|
|
|
TEST_FIELD_OFFSET(CSFV, pshf, 8)
|
|
|
|
TEST_FIELD_SIZE (CSFV, psvOuter, 8)
|
|
|
|
TEST_FIELD_ALIGN (CSFV, psvOuter, 8)
|
|
|
|
TEST_FIELD_OFFSET(CSFV, psvOuter, 16)
|
|
|
|
TEST_FIELD_SIZE (CSFV, pidl, 8)
|
|
|
|
TEST_FIELD_ALIGN (CSFV, pidl, 8)
|
|
|
|
TEST_FIELD_OFFSET(CSFV, pidl, 24)
|
|
|
|
TEST_FIELD_SIZE (CSFV, lEvents, 4)
|
|
|
|
TEST_FIELD_ALIGN (CSFV, lEvents, 4)
|
|
|
|
TEST_FIELD_OFFSET(CSFV, lEvents, 32)
|
|
|
|
TEST_FIELD_SIZE (CSFV, pfnCallback, 8)
|
|
|
|
TEST_FIELD_ALIGN (CSFV, pfnCallback, 8)
|
|
|
|
TEST_FIELD_OFFSET(CSFV, pfnCallback, 40)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DROPFILES(void)
|
|
|
|
{
|
|
|
|
/* DROPFILES (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (DROPFILES, 20)
|
|
|
|
TEST_TYPE_ALIGN (DROPFILES, 1)
|
|
|
|
TEST_FIELD_SIZE (DROPFILES, pFiles, 4)
|
|
|
|
TEST_FIELD_ALIGN (DROPFILES, pFiles, 1)
|
|
|
|
TEST_FIELD_OFFSET(DROPFILES, pFiles, 0)
|
|
|
|
TEST_FIELD_SIZE (DROPFILES, pt, 8)
|
|
|
|
TEST_FIELD_ALIGN (DROPFILES, pt, 1)
|
|
|
|
TEST_FIELD_OFFSET(DROPFILES, pt, 4)
|
|
|
|
TEST_FIELD_SIZE (DROPFILES, fNC, 4)
|
|
|
|
TEST_FIELD_ALIGN (DROPFILES, fNC, 1)
|
|
|
|
TEST_FIELD_OFFSET(DROPFILES, fNC, 12)
|
|
|
|
TEST_FIELD_SIZE (DROPFILES, fWide, 4)
|
|
|
|
TEST_FIELD_ALIGN (DROPFILES, fWide, 1)
|
|
|
|
TEST_FIELD_OFFSET(DROPFILES, fWide, 16)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEDESCRIPTORA(void)
|
|
|
|
{
|
|
|
|
/* FILEDESCRIPTORA (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (FILEDESCRIPTORA, 332)
|
|
|
|
TEST_TYPE_ALIGN (FILEDESCRIPTORA, 1)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, dwFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, dwFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, dwFlags, 0)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, clsid, 16)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, clsid, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, clsid, 4)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, sizel, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, sizel, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, sizel, 20)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, pointl, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, pointl, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, pointl, 28)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, dwFileAttributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, dwFileAttributes, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, dwFileAttributes, 36)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, ftCreationTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftCreationTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftCreationTime, 40)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastAccessTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastAccessTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastAccessTime, 48)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastWriteTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastWriteTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastWriteTime, 56)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeHigh, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeHigh, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeHigh, 64)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeLow, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeLow, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeLow, 68)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, cFileName, 260)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, cFileName, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, cFileName, 72)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEDESCRIPTORW(void)
|
|
|
|
{
|
|
|
|
/* FILEDESCRIPTORW (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (FILEDESCRIPTORW, 592)
|
|
|
|
TEST_TYPE_ALIGN (FILEDESCRIPTORW, 1)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, dwFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, dwFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, dwFlags, 0)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, clsid, 16)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, clsid, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, clsid, 4)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, sizel, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, sizel, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, sizel, 20)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, pointl, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, pointl, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, pointl, 28)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, dwFileAttributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, dwFileAttributes, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, dwFileAttributes, 36)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, ftCreationTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftCreationTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftCreationTime, 40)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastAccessTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastAccessTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastAccessTime, 48)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastWriteTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastWriteTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastWriteTime, 56)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeHigh, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeHigh, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeHigh, 64)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeLow, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeLow, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeLow, 68)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, cFileName, 520)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, cFileName, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, cFileName, 72)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEGROUPDESCRIPTORA(void)
|
|
|
|
{
|
|
|
|
/* FILEGROUPDESCRIPTORA (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (FILEGROUPDESCRIPTORA, 336)
|
|
|
|
TEST_TYPE_ALIGN (FILEGROUPDESCRIPTORA, 1)
|
|
|
|
TEST_FIELD_SIZE (FILEGROUPDESCRIPTORA, cItems, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORA, cItems, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORA, cItems, 0)
|
|
|
|
TEST_FIELD_SIZE (FILEGROUPDESCRIPTORA, fgd, 332)
|
|
|
|
TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORA, fgd, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORA, fgd, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEGROUPDESCRIPTORW(void)
|
|
|
|
{
|
|
|
|
/* FILEGROUPDESCRIPTORW (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (FILEGROUPDESCRIPTORW, 596)
|
|
|
|
TEST_TYPE_ALIGN (FILEGROUPDESCRIPTORW, 1)
|
|
|
|
TEST_FIELD_SIZE (FILEGROUPDESCRIPTORW, cItems, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORW, cItems, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORW, cItems, 0)
|
|
|
|
TEST_FIELD_SIZE (FILEGROUPDESCRIPTORW, fgd, 592)
|
|
|
|
TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORW, fgd, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORW, fgd, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ITEMSPACING(void)
|
|
|
|
{
|
|
|
|
/* ITEMSPACING (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (ITEMSPACING, 16)
|
|
|
|
TEST_TYPE_ALIGN (ITEMSPACING, 4)
|
|
|
|
TEST_FIELD_SIZE (ITEMSPACING, cxSmall, 4)
|
|
|
|
TEST_FIELD_ALIGN (ITEMSPACING, cxSmall, 4)
|
|
|
|
TEST_FIELD_OFFSET(ITEMSPACING, cxSmall, 0)
|
|
|
|
TEST_FIELD_SIZE (ITEMSPACING, cySmall, 4)
|
|
|
|
TEST_FIELD_ALIGN (ITEMSPACING, cySmall, 4)
|
|
|
|
TEST_FIELD_OFFSET(ITEMSPACING, cySmall, 4)
|
|
|
|
TEST_FIELD_SIZE (ITEMSPACING, cxLarge, 4)
|
|
|
|
TEST_FIELD_ALIGN (ITEMSPACING, cxLarge, 4)
|
|
|
|
TEST_FIELD_OFFSET(ITEMSPACING, cxLarge, 8)
|
|
|
|
TEST_FIELD_SIZE (ITEMSPACING, cyLarge, 4)
|
|
|
|
TEST_FIELD_ALIGN (ITEMSPACING, cyLarge, 4)
|
|
|
|
TEST_FIELD_OFFSET(ITEMSPACING, cyLarge, 12)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPBROWSEINFOA(void)
|
|
|
|
{
|
|
|
|
/* LPBROWSEINFOA */
|
|
|
|
TEST_TYPE_SIZE (LPBROWSEINFOA, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPBROWSEINFOA, 8)
|
|
|
|
TEST_TARGET_SIZE (LPBROWSEINFOA, 64)
|
|
|
|
TEST_TARGET_ALIGN(LPBROWSEINFOA, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPBROWSEINFOW(void)
|
|
|
|
{
|
|
|
|
/* LPBROWSEINFOW */
|
|
|
|
TEST_TYPE_SIZE (LPBROWSEINFOW, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPBROWSEINFOW, 8)
|
|
|
|
TEST_TARGET_SIZE (LPBROWSEINFOW, 64)
|
|
|
|
TEST_TARGET_ALIGN(LPBROWSEINFOW, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCABINETSTATE(void)
|
|
|
|
{
|
|
|
|
/* LPCABINETSTATE */
|
|
|
|
TEST_TYPE_SIZE (LPCABINETSTATE, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPCABINETSTATE, 8)
|
|
|
|
TEST_TARGET_SIZE (LPCABINETSTATE, 12)
|
|
|
|
TEST_TARGET_ALIGN(LPCABINETSTATE, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCSFV(void)
|
|
|
|
{
|
|
|
|
/* LPCSFV */
|
|
|
|
TEST_TYPE_SIZE (LPCSFV, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPCSFV, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPDROPFILES(void)
|
|
|
|
{
|
|
|
|
/* LPDROPFILES */
|
|
|
|
TEST_TYPE_SIZE (LPDROPFILES, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPDROPFILES, 8)
|
|
|
|
TEST_TARGET_SIZE (LPDROPFILES, 20)
|
|
|
|
TEST_TARGET_ALIGN(LPDROPFILES, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPFILEDESCRIPTORA(void)
|
|
|
|
{
|
|
|
|
/* LPFILEDESCRIPTORA */
|
|
|
|
TEST_TYPE_SIZE (LPFILEDESCRIPTORA, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPFILEDESCRIPTORA, 8)
|
|
|
|
TEST_TARGET_SIZE (LPFILEDESCRIPTORA, 332)
|
|
|
|
TEST_TARGET_ALIGN(LPFILEDESCRIPTORA, 1)
|
|
|
|
}
|
2007-03-06 11:59:18 +00:00
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_LPFILEDESCRIPTORW(void)
|
|
|
|
{
|
|
|
|
/* LPFILEDESCRIPTORW */
|
|
|
|
TEST_TYPE_SIZE (LPFILEDESCRIPTORW, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPFILEDESCRIPTORW, 8)
|
|
|
|
TEST_TARGET_SIZE (LPFILEDESCRIPTORW, 592)
|
|
|
|
TEST_TARGET_ALIGN(LPFILEDESCRIPTORW, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPFILEGROUPDESCRIPTORA(void)
|
|
|
|
{
|
|
|
|
/* LPFILEGROUPDESCRIPTORA */
|
|
|
|
TEST_TYPE_SIZE (LPFILEGROUPDESCRIPTORA, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPFILEGROUPDESCRIPTORA, 8)
|
|
|
|
TEST_TARGET_SIZE (LPFILEGROUPDESCRIPTORA, 336)
|
|
|
|
TEST_TARGET_ALIGN(LPFILEGROUPDESCRIPTORA, 1)
|
|
|
|
}
|
2007-03-06 11:59:18 +00:00
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_LPFILEGROUPDESCRIPTORW(void)
|
|
|
|
{
|
|
|
|
/* LPFILEGROUPDESCRIPTORW */
|
|
|
|
TEST_TYPE_SIZE (LPFILEGROUPDESCRIPTORW, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPFILEGROUPDESCRIPTORW, 8)
|
|
|
|
TEST_TARGET_SIZE (LPFILEGROUPDESCRIPTORW, 596)
|
|
|
|
TEST_TARGET_ALIGN(LPFILEGROUPDESCRIPTORW, 1)
|
|
|
|
}
|
2007-03-06 11:59:18 +00:00
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_LPFNVIEWCALLBACK(void)
|
|
|
|
{
|
|
|
|
/* LPFNVIEWCALLBACK */
|
|
|
|
TEST_TYPE_SIZE (LPFNVIEWCALLBACK, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPFNVIEWCALLBACK, 8)
|
|
|
|
}
|
2007-03-06 11:59:18 +00:00
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_LPIDA(void)
|
|
|
|
{
|
|
|
|
/* LPIDA */
|
|
|
|
TEST_TYPE_SIZE (LPIDA, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPIDA, 8)
|
|
|
|
TEST_TARGET_SIZE (LPIDA, 8)
|
|
|
|
TEST_TARGET_ALIGN(LPIDA, 1)
|
|
|
|
}
|
2007-03-06 11:59:18 +00:00
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_LPQCMINFO(void)
|
|
|
|
{
|
|
|
|
/* LPQCMINFO */
|
|
|
|
TEST_TYPE_SIZE (LPQCMINFO, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPQCMINFO, 8)
|
|
|
|
TEST_TARGET_SIZE (LPQCMINFO, 32)
|
|
|
|
TEST_TARGET_ALIGN(LPQCMINFO, 8)
|
|
|
|
}
|
2007-03-06 11:59:18 +00:00
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_LPSHChangeDWORDAsIDList(void)
|
|
|
|
{
|
|
|
|
/* LPSHChangeDWORDAsIDList */
|
|
|
|
TEST_TYPE_SIZE (LPSHChangeDWORDAsIDList, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHChangeDWORDAsIDList, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSHChangeDWORDAsIDList, 12)
|
|
|
|
TEST_TARGET_ALIGN(LPSHChangeDWORDAsIDList, 1)
|
|
|
|
}
|
2007-03-06 11:59:18 +00:00
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_LPSHChangeProductKeyAsIDList(void)
|
|
|
|
{
|
|
|
|
/* LPSHChangeProductKeyAsIDList */
|
|
|
|
TEST_TYPE_SIZE (LPSHChangeProductKeyAsIDList, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHChangeProductKeyAsIDList, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSHChangeProductKeyAsIDList, 82)
|
|
|
|
TEST_TARGET_ALIGN(LPSHChangeProductKeyAsIDList, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHDESCRIPTIONID(void)
|
|
|
|
{
|
|
|
|
/* LPSHDESCRIPTIONID */
|
|
|
|
TEST_TYPE_SIZE (LPSHDESCRIPTIONID, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHDESCRIPTIONID, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSHDESCRIPTIONID, 20)
|
|
|
|
TEST_TARGET_ALIGN(LPSHDESCRIPTIONID, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLFLAGSTATE(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLFLAGSTATE */
|
|
|
|
TEST_TYPE_SIZE (LPSHELLFLAGSTATE, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLFLAGSTATE, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSHELLFLAGSTATE, 4)
|
|
|
|
TEST_TARGET_ALIGN(LPSHELLFLAGSTATE, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLSTATE(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLSTATE */
|
|
|
|
TEST_TYPE_SIZE (LPSHELLSTATE, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLSTATE, 8)
|
|
|
|
TEST_TARGET_SIZE (LPSHELLSTATE, 32)
|
|
|
|
TEST_TARGET_ALIGN(LPSHELLSTATE, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPTBINFO(void)
|
|
|
|
{
|
|
|
|
/* LPTBINFO */
|
|
|
|
TEST_TYPE_SIZE (LPTBINFO, 8)
|
|
|
|
TEST_TYPE_ALIGN (LPTBINFO, 8)
|
|
|
|
TEST_TARGET_SIZE (LPTBINFO, 8)
|
|
|
|
TEST_TARGET_ALIGN(LPTBINFO, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PBROWSEINFOA(void)
|
|
|
|
{
|
|
|
|
/* PBROWSEINFOA */
|
|
|
|
TEST_TYPE_SIZE (PBROWSEINFOA, 8)
|
|
|
|
TEST_TYPE_ALIGN (PBROWSEINFOA, 8)
|
|
|
|
TEST_TARGET_SIZE (PBROWSEINFOA, 64)
|
|
|
|
TEST_TARGET_ALIGN(PBROWSEINFOA, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PBROWSEINFOW(void)
|
|
|
|
{
|
|
|
|
/* PBROWSEINFOW */
|
|
|
|
TEST_TYPE_SIZE (PBROWSEINFOW, 8)
|
|
|
|
TEST_TYPE_ALIGN (PBROWSEINFOW, 8)
|
|
|
|
TEST_TARGET_SIZE (PBROWSEINFOW, 64)
|
|
|
|
TEST_TARGET_ALIGN(PBROWSEINFOW, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_QCMINFO(void)
|
|
|
|
{
|
|
|
|
/* QCMINFO (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (QCMINFO, 32)
|
|
|
|
TEST_TYPE_ALIGN (QCMINFO, 8)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, hmenu, 8)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, hmenu, 8)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, hmenu, 0)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, indexMenu, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, indexMenu, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, indexMenu, 8)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, idCmdFirst, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, idCmdFirst, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, idCmdFirst, 12)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, idCmdLast, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, idCmdLast, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, idCmdLast, 16)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, pIdMap, 8)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, pIdMap, 8)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, pIdMap, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_QCMINFO_IDMAP(void)
|
|
|
|
{
|
|
|
|
/* QCMINFO_IDMAP (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (QCMINFO_IDMAP, 12)
|
|
|
|
TEST_TYPE_ALIGN (QCMINFO_IDMAP, 4)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO_IDMAP, nMaxIds, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO_IDMAP, nMaxIds, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO_IDMAP, nMaxIds, 0)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO_IDMAP, pIdList, 8)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO_IDMAP, pIdList, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO_IDMAP, pIdList, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_QCMINFO_IDMAP_PLACEMENT(void)
|
|
|
|
{
|
|
|
|
/* QCMINFO_IDMAP_PLACEMENT (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (QCMINFO_IDMAP_PLACEMENT, 8)
|
|
|
|
TEST_TYPE_ALIGN (QCMINFO_IDMAP_PLACEMENT, 4)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO_IDMAP_PLACEMENT, id, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO_IDMAP_PLACEMENT, id, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO_IDMAP_PLACEMENT, id, 0)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO_IDMAP_PLACEMENT, fFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO_IDMAP_PLACEMENT, fFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO_IDMAP_PLACEMENT, fFlags, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SFV_CREATE(void)
|
|
|
|
{
|
|
|
|
/* SFV_CREATE (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (SFV_CREATE, 32)
|
|
|
|
TEST_TYPE_ALIGN (SFV_CREATE, 8)
|
|
|
|
TEST_FIELD_SIZE (SFV_CREATE, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (SFV_CREATE, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(SFV_CREATE, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (SFV_CREATE, pshf, 8)
|
|
|
|
TEST_FIELD_ALIGN (SFV_CREATE, pshf, 8)
|
|
|
|
TEST_FIELD_OFFSET(SFV_CREATE, pshf, 8)
|
|
|
|
TEST_FIELD_SIZE (SFV_CREATE, psvOuter, 8)
|
|
|
|
TEST_FIELD_ALIGN (SFV_CREATE, psvOuter, 8)
|
|
|
|
TEST_FIELD_OFFSET(SFV_CREATE, psvOuter, 16)
|
|
|
|
TEST_FIELD_SIZE (SFV_CREATE, psfvcb, 8)
|
|
|
|
TEST_FIELD_ALIGN (SFV_CREATE, psfvcb, 8)
|
|
|
|
TEST_FIELD_OFFSET(SFV_CREATE, psfvcb, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHChangeDWORDAsIDList(void)
|
|
|
|
{
|
|
|
|
/* SHChangeDWORDAsIDList (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (SHChangeDWORDAsIDList, 12)
|
|
|
|
TEST_TYPE_ALIGN (SHChangeDWORDAsIDList, 1)
|
|
|
|
TEST_FIELD_SIZE (SHChangeDWORDAsIDList, cb, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, cb, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, cb, 0)
|
|
|
|
TEST_FIELD_SIZE (SHChangeDWORDAsIDList, dwItem1, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, dwItem1, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, dwItem1, 2)
|
|
|
|
TEST_FIELD_SIZE (SHChangeDWORDAsIDList, dwItem2, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, dwItem2, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, dwItem2, 6)
|
|
|
|
TEST_FIELD_SIZE (SHChangeDWORDAsIDList, cbZero, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, cbZero, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, cbZero, 10)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHChangeNotifyEntry(void)
|
|
|
|
{
|
|
|
|
/* SHChangeNotifyEntry (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (SHChangeNotifyEntry, 12)
|
|
|
|
TEST_TYPE_ALIGN (SHChangeNotifyEntry, 1)
|
|
|
|
TEST_FIELD_SIZE (SHChangeNotifyEntry, pidl, 8)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeNotifyEntry, pidl, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeNotifyEntry, pidl, 0)
|
|
|
|
TEST_FIELD_SIZE (SHChangeNotifyEntry, fRecursive, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeNotifyEntry, fRecursive, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeNotifyEntry, fRecursive, 8)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHChangeProductKeyAsIDList(void)
|
|
|
|
{
|
|
|
|
/* SHChangeProductKeyAsIDList (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (SHChangeProductKeyAsIDList, 82)
|
|
|
|
TEST_TYPE_ALIGN (SHChangeProductKeyAsIDList, 1)
|
|
|
|
TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, cb, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, cb, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeProductKeyAsIDList, cb, 0)
|
|
|
|
TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, wszProductKey, 78)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, wszProductKey, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeProductKeyAsIDList, wszProductKey, 2)
|
|
|
|
TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, cbZero, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, cbZero, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeProductKeyAsIDList, cbZero, 80)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHDESCRIPTIONID(void)
|
|
|
|
{
|
|
|
|
/* SHDESCRIPTIONID (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (SHDESCRIPTIONID, 20)
|
|
|
|
TEST_TYPE_ALIGN (SHDESCRIPTIONID, 4)
|
|
|
|
TEST_FIELD_SIZE (SHDESCRIPTIONID, dwDescriptionId, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHDESCRIPTIONID, dwDescriptionId, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHDESCRIPTIONID, dwDescriptionId, 0)
|
|
|
|
TEST_FIELD_SIZE (SHDESCRIPTIONID, clsid, 16)
|
|
|
|
TEST_FIELD_ALIGN (SHDESCRIPTIONID, clsid, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHDESCRIPTIONID, clsid, 4)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLFLAGSTATE(void)
|
|
|
|
{
|
|
|
|
/* SHELLFLAGSTATE (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (SHELLFLAGSTATE, 4)
|
|
|
|
TEST_TYPE_ALIGN (SHELLFLAGSTATE, 1)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLSTATE(void)
|
|
|
|
{
|
|
|
|
/* SHELLSTATE (pack 1) */
|
|
|
|
TEST_TYPE_SIZE (SHELLSTATE, 32)
|
|
|
|
TEST_TYPE_ALIGN (SHELLSTATE, 1)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, dwWin95Unused, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, dwWin95Unused, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, dwWin95Unused, 4)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, uWin95Unused, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, uWin95Unused, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, uWin95Unused, 8)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, lParamSort, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, lParamSort, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, lParamSort, 12)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, iSortDirection, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, iSortDirection, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, iSortDirection, 16)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, version, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, version, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, version, 20)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, uNotUsed, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, uNotUsed, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, uNotUsed, 24)
|
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TBINFO(void)
|
|
|
|
{
|
|
|
|
/* TBINFO (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (TBINFO, 8)
|
|
|
|
TEST_TYPE_ALIGN (TBINFO, 4)
|
|
|
|
TEST_FIELD_SIZE (TBINFO, cbuttons, 4)
|
|
|
|
TEST_FIELD_ALIGN (TBINFO, cbuttons, 4)
|
|
|
|
TEST_FIELD_OFFSET(TBINFO, cbuttons, 0)
|
|
|
|
TEST_FIELD_SIZE (TBINFO, uFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (TBINFO, uFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(TBINFO, uFlags, 4)
|
|
|
|
}
|
2007-03-06 11:59:18 +00:00
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
#else /* _WIN64 */
|
2007-03-06 11:59:18 +00:00
|
|
|
|
|
|
|
static void test_pack_BLOB(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* BLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (BLOB, 8)
|
|
|
|
TEST_TYPE_ALIGN (BLOB, 4)
|
|
|
|
TEST_FIELD_SIZE (BLOB, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (BLOB, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(BLOB, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (BLOB, pBlobData, 4)
|
|
|
|
TEST_FIELD_ALIGN (BLOB, pBlobData, 4)
|
|
|
|
TEST_FIELD_OFFSET(BLOB, pBlobData, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BSTR(void)
|
|
|
|
{
|
|
|
|
/* BSTR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (BSTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (BSTR, 4)
|
|
|
|
TEST_TARGET_SIZE (BSTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(BSTR, 2)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BSTRBLOB(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* BSTRBLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (BSTRBLOB, 8)
|
|
|
|
TEST_TYPE_ALIGN (BSTRBLOB, 4)
|
|
|
|
TEST_FIELD_SIZE (BSTRBLOB, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (BSTRBLOB, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(BSTRBLOB, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (BSTRBLOB, pData, 4)
|
|
|
|
TEST_FIELD_ALIGN (BSTRBLOB, pData, 4)
|
|
|
|
TEST_FIELD_OFFSET(BSTRBLOB, pData, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BYTE_BLOB(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* BYTE_BLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (BYTE_BLOB, 8)
|
|
|
|
TEST_TYPE_ALIGN (BYTE_BLOB, 4)
|
|
|
|
TEST_FIELD_SIZE (BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(BYTE_BLOB, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (BYTE_BLOB, abData, 1)
|
|
|
|
TEST_FIELD_ALIGN (BYTE_BLOB, abData, 1)
|
|
|
|
TEST_FIELD_OFFSET(BYTE_BLOB, abData, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BYTE_SIZEDARR(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* BYTE_SIZEDARR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (BYTE_SIZEDARR, 8)
|
|
|
|
TEST_TYPE_ALIGN (BYTE_SIZEDARR, 4)
|
|
|
|
TEST_FIELD_SIZE (BYTE_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (BYTE_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(BYTE_SIZEDARR, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (BYTE_SIZEDARR, pData, 4)
|
|
|
|
TEST_FIELD_ALIGN (BYTE_SIZEDARR, pData, 4)
|
|
|
|
TEST_FIELD_OFFSET(BYTE_SIZEDARR, pData, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CLIPDATA(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* CLIPDATA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (CLIPDATA, 12)
|
|
|
|
TEST_TYPE_ALIGN (CLIPDATA, 4)
|
|
|
|
TEST_FIELD_SIZE (CLIPDATA, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (CLIPDATA, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(CLIPDATA, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (CLIPDATA, ulClipFmt, 4)
|
|
|
|
TEST_FIELD_ALIGN (CLIPDATA, ulClipFmt, 4)
|
|
|
|
TEST_FIELD_OFFSET(CLIPDATA, ulClipFmt, 4)
|
|
|
|
TEST_FIELD_SIZE (CLIPDATA, pClipData, 4)
|
|
|
|
TEST_FIELD_ALIGN (CLIPDATA, pClipData, 4)
|
|
|
|
TEST_FIELD_OFFSET(CLIPDATA, pClipData, 8)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CLIPFORMAT(void)
|
|
|
|
{
|
|
|
|
/* CLIPFORMAT */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (CLIPFORMAT, 2)
|
|
|
|
TEST_TYPE_ALIGN (CLIPFORMAT, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(CLIPFORMAT)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_COAUTHIDENTITY(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* COAUTHIDENTITY */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (COAUTHIDENTITY, 28)
|
|
|
|
TEST_TYPE_ALIGN (COAUTHIDENTITY, 4)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, User, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, User, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, User, 0)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, UserLength, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, UserLength, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, UserLength, 4)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, Domain, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, Domain, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, Domain, 8)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, DomainLength, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, DomainLength, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, DomainLength, 12)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, Password, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, Password, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, Password, 16)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, PasswordLength, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, PasswordLength, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, PasswordLength, 20)
|
|
|
|
TEST_FIELD_SIZE (COAUTHIDENTITY, Flags, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHIDENTITY, Flags, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHIDENTITY, Flags, 24)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_COAUTHINFO(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* COAUTHINFO */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (COAUTHINFO, 28)
|
|
|
|
TEST_TYPE_ALIGN (COAUTHINFO, 4)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwAuthnSvc, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnSvc, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnSvc, 0)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwAuthzSvc, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwAuthzSvc, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwAuthzSvc, 4)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, pwszServerPrincName, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, pwszServerPrincName, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, pwszServerPrincName, 8)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwAuthnLevel, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnLevel, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnLevel, 12)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwImpersonationLevel, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwImpersonationLevel, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwImpersonationLevel, 16)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, pAuthIdentityData, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, pAuthIdentityData, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, pAuthIdentityData, 20)
|
|
|
|
TEST_FIELD_SIZE (COAUTHINFO, dwCapabilities, 4)
|
|
|
|
TEST_FIELD_ALIGN (COAUTHINFO, dwCapabilities, 4)
|
|
|
|
TEST_FIELD_OFFSET(COAUTHINFO, dwCapabilities, 24)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
2007-08-27 07:03:32 +00:00
|
|
|
static void test_pack_DATE(void)
|
2007-03-06 11:59:18 +00:00
|
|
|
{
|
2007-08-27 07:03:32 +00:00
|
|
|
/* DATE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (DATE, 8)
|
|
|
|
TEST_TYPE_ALIGN (DATE, 8)
|
2007-08-27 07:03:32 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DOUBLE(void)
|
|
|
|
{
|
|
|
|
/* DOUBLE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (DOUBLE, 8)
|
|
|
|
TEST_TYPE_ALIGN (DOUBLE, 8)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DWORD_SIZEDARR(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* DWORD_SIZEDARR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (DWORD_SIZEDARR, 8)
|
|
|
|
TEST_TYPE_ALIGN (DWORD_SIZEDARR, 4)
|
|
|
|
TEST_FIELD_SIZE (DWORD_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (DWORD_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(DWORD_SIZEDARR, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (DWORD_SIZEDARR, pData, 4)
|
|
|
|
TEST_FIELD_ALIGN (DWORD_SIZEDARR, pData, 4)
|
|
|
|
TEST_FIELD_OFFSET(DWORD_SIZEDARR, pData, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FLAGGED_BYTE_BLOB(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* FLAGGED_BYTE_BLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (FLAGGED_BYTE_BLOB, 12)
|
|
|
|
TEST_TYPE_ALIGN (FLAGGED_BYTE_BLOB, 4)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, fFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, fFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, fFlags, 0)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, abData, 1)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, abData, 1)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, abData, 8)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FLAGGED_WORD_BLOB(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* FLAGGED_WORD_BLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (FLAGGED_WORD_BLOB, 12)
|
|
|
|
TEST_TYPE_ALIGN (FLAGGED_WORD_BLOB, 4)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, fFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, fFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, fFlags, 0)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, clSize, 4)
|
|
|
|
TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, asData, 2)
|
|
|
|
TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, asData, 2)
|
|
|
|
TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, asData, 8)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HMETAFILEPICT(void)
|
|
|
|
{
|
|
|
|
/* HMETAFILEPICT */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (HMETAFILEPICT, 4)
|
|
|
|
TEST_TYPE_ALIGN (HMETAFILEPICT, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_HYPER_SIZEDARR(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* HYPER_SIZEDARR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (HYPER_SIZEDARR, 8)
|
|
|
|
TEST_TYPE_ALIGN (HYPER_SIZEDARR, 4)
|
|
|
|
TEST_FIELD_SIZE (HYPER_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (HYPER_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(HYPER_SIZEDARR, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (HYPER_SIZEDARR, pData, 4)
|
|
|
|
TEST_FIELD_ALIGN (HYPER_SIZEDARR, pData, 4)
|
|
|
|
TEST_FIELD_OFFSET(HYPER_SIZEDARR, pData, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPBLOB(void)
|
|
|
|
{
|
|
|
|
/* LPBLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPBLOB, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPBLOB, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPBSTR(void)
|
|
|
|
{
|
|
|
|
/* LPBSTR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPBSTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPBSTR, 4)
|
|
|
|
TEST_TARGET_SIZE (LPBSTR, 4)
|
|
|
|
TEST_TARGET_ALIGN(LPBSTR, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPBSTRBLOB(void)
|
|
|
|
{
|
|
|
|
/* LPBSTRBLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPBSTRBLOB, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPBSTRBLOB, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCOLESTR(void)
|
|
|
|
{
|
|
|
|
/* LPCOLESTR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPCOLESTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPCOLESTR, 4)
|
|
|
|
TEST_TARGET_SIZE (LPCOLESTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(LPCOLESTR, 2)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCY(void)
|
|
|
|
{
|
|
|
|
/* LPCY */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPCY, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPCY, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPDECIMAL(void)
|
|
|
|
{
|
|
|
|
/* LPDECIMAL */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPDECIMAL, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPDECIMAL, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPOLESTR(void)
|
|
|
|
{
|
|
|
|
/* LPOLESTR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPOLESTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPOLESTR, 4)
|
|
|
|
TEST_TARGET_SIZE (LPOLESTR, 2)
|
|
|
|
TEST_TARGET_ALIGN(LPOLESTR, 2)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_OLECHAR(void)
|
|
|
|
{
|
|
|
|
/* OLECHAR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (OLECHAR, 2)
|
|
|
|
TEST_TYPE_ALIGN (OLECHAR, 2)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PROPID(void)
|
|
|
|
{
|
|
|
|
/* PROPID */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (PROPID, 4)
|
|
|
|
TEST_TYPE_ALIGN (PROPID, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHBITMAP(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* RemHBITMAP */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (RemHBITMAP, 8)
|
|
|
|
TEST_TYPE_ALIGN (RemHBITMAP, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHBITMAP, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHBITMAP, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHBITMAP, cbData, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHBITMAP, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHBITMAP, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHBITMAP, data, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHENHMETAFILE(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* RemHENHMETAFILE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (RemHENHMETAFILE, 8)
|
|
|
|
TEST_TYPE_ALIGN (RemHENHMETAFILE, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHENHMETAFILE, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHENHMETAFILE, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHENHMETAFILE, cbData, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHENHMETAFILE, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHENHMETAFILE, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHENHMETAFILE, data, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHGLOBAL(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* RemHGLOBAL */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (RemHGLOBAL, 12)
|
|
|
|
TEST_TYPE_ALIGN (RemHGLOBAL, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHGLOBAL, fNullHGlobal, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHGLOBAL, fNullHGlobal, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHGLOBAL, fNullHGlobal, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHGLOBAL, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHGLOBAL, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHGLOBAL, cbData, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHGLOBAL, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHGLOBAL, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHGLOBAL, data, 8)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHMETAFILEPICT(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* RemHMETAFILEPICT */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (RemHMETAFILEPICT, 20)
|
|
|
|
TEST_TYPE_ALIGN (RemHMETAFILEPICT, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, mm, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, mm, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, mm, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, yExt, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, yExt, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, yExt, 8)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, cbData, 12)
|
|
|
|
TEST_FIELD_SIZE (RemHMETAFILEPICT, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHMETAFILEPICT, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHMETAFILEPICT, data, 16)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_RemHPALETTE(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* RemHPALETTE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (RemHPALETTE, 8)
|
|
|
|
TEST_TYPE_ALIGN (RemHPALETTE, 4)
|
|
|
|
TEST_FIELD_SIZE (RemHPALETTE, cbData, 4)
|
|
|
|
TEST_FIELD_ALIGN (RemHPALETTE, cbData, 4)
|
|
|
|
TEST_FIELD_OFFSET(RemHPALETTE, cbData, 0)
|
|
|
|
TEST_FIELD_SIZE (RemHPALETTE, data, 1)
|
|
|
|
TEST_FIELD_ALIGN (RemHPALETTE, data, 1)
|
|
|
|
TEST_FIELD_OFFSET(RemHPALETTE, data, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SCODE(void)
|
|
|
|
{
|
|
|
|
/* SCODE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SCODE, 4)
|
|
|
|
TEST_TYPE_ALIGN (SCODE, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UP_BYTE_BLOB(void)
|
|
|
|
{
|
|
|
|
/* UP_BYTE_BLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (UP_BYTE_BLOB, 4)
|
|
|
|
TEST_TYPE_ALIGN (UP_BYTE_BLOB, 4)
|
|
|
|
TEST_TARGET_SIZE (UP_BYTE_BLOB, 8)
|
|
|
|
TEST_TARGET_ALIGN(UP_BYTE_BLOB, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UP_FLAGGED_BYTE_BLOB(void)
|
|
|
|
{
|
|
|
|
/* UP_FLAGGED_BYTE_BLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (UP_FLAGGED_BYTE_BLOB, 4)
|
|
|
|
TEST_TYPE_ALIGN (UP_FLAGGED_BYTE_BLOB, 4)
|
|
|
|
TEST_TARGET_SIZE (UP_FLAGGED_BYTE_BLOB, 12)
|
|
|
|
TEST_TARGET_ALIGN(UP_FLAGGED_BYTE_BLOB, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_UP_FLAGGED_WORD_BLOB(void)
|
|
|
|
{
|
|
|
|
/* UP_FLAGGED_WORD_BLOB */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (UP_FLAGGED_WORD_BLOB, 4)
|
|
|
|
TEST_TYPE_ALIGN (UP_FLAGGED_WORD_BLOB, 4)
|
|
|
|
TEST_TARGET_SIZE (UP_FLAGGED_WORD_BLOB, 12)
|
|
|
|
TEST_TARGET_ALIGN(UP_FLAGGED_WORD_BLOB, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_VARIANT_BOOL(void)
|
|
|
|
{
|
|
|
|
/* VARIANT_BOOL */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (VARIANT_BOOL, 2)
|
|
|
|
TEST_TYPE_ALIGN (VARIANT_BOOL, 2)
|
|
|
|
TEST_TYPE_SIGNED(VARIANT_BOOL)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_VARTYPE(void)
|
|
|
|
{
|
|
|
|
/* VARTYPE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (VARTYPE, 2)
|
|
|
|
TEST_TYPE_ALIGN (VARTYPE, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(VARTYPE)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_WORD_SIZEDARR(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* WORD_SIZEDARR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (WORD_SIZEDARR, 8)
|
|
|
|
TEST_TYPE_ALIGN (WORD_SIZEDARR, 4)
|
|
|
|
TEST_FIELD_SIZE (WORD_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (WORD_SIZEDARR, clSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(WORD_SIZEDARR, clSize, 0)
|
|
|
|
TEST_FIELD_SIZE (WORD_SIZEDARR, pData, 4)
|
|
|
|
TEST_FIELD_ALIGN (WORD_SIZEDARR, pData, 4)
|
|
|
|
TEST_FIELD_OFFSET(WORD_SIZEDARR, pData, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_remoteMETAFILEPICT(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* remoteMETAFILEPICT */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (remoteMETAFILEPICT, 16)
|
|
|
|
TEST_TYPE_ALIGN (remoteMETAFILEPICT, 4)
|
|
|
|
TEST_FIELD_SIZE (remoteMETAFILEPICT, mm, 4)
|
|
|
|
TEST_FIELD_ALIGN (remoteMETAFILEPICT, mm, 4)
|
|
|
|
TEST_FIELD_OFFSET(remoteMETAFILEPICT, mm, 0)
|
|
|
|
TEST_FIELD_SIZE (remoteMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_ALIGN (remoteMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_OFFSET(remoteMETAFILEPICT, xExt, 4)
|
|
|
|
TEST_FIELD_SIZE (remoteMETAFILEPICT, yExt, 4)
|
|
|
|
TEST_FIELD_ALIGN (remoteMETAFILEPICT, yExt, 4)
|
|
|
|
TEST_FIELD_OFFSET(remoteMETAFILEPICT, yExt, 8)
|
|
|
|
TEST_FIELD_SIZE (remoteMETAFILEPICT, hMF, 4)
|
|
|
|
TEST_FIELD_ALIGN (remoteMETAFILEPICT, hMF, 4)
|
|
|
|
TEST_FIELD_OFFSET(remoteMETAFILEPICT, hMF, 12)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userBITMAP(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* userBITMAP */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (userBITMAP, 28)
|
|
|
|
TEST_TYPE_ALIGN (userBITMAP, 4)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmType, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmType, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmType, 0)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmWidth, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmWidth, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmWidth, 4)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmHeight, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmHeight, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmHeight, 8)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmWidthBytes, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmWidthBytes, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmWidthBytes, 12)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmPlanes, 2)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmPlanes, 2)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmPlanes, 16)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, bmBitsPixel, 2)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, bmBitsPixel, 2)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, bmBitsPixel, 18)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, cbSize, 20)
|
|
|
|
TEST_FIELD_SIZE (userBITMAP, pBuffer, 1)
|
|
|
|
TEST_FIELD_ALIGN (userBITMAP, pBuffer, 1)
|
|
|
|
TEST_FIELD_OFFSET(userBITMAP, pBuffer, 24)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userCLIPFORMAT(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* userCLIPFORMAT */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (userCLIPFORMAT, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userCLIPFORMAT, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userCLIPFORMAT, fContext, 0)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHBITMAP(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* userHBITMAP */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (userHBITMAP, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHBITMAP, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHBITMAP, fContext, 0)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHENHMETAFILE(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* userHENHMETAFILE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (userHENHMETAFILE, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHENHMETAFILE, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHENHMETAFILE, fContext, 0)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHGLOBAL(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* userHGLOBAL */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (userHGLOBAL, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHGLOBAL, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHGLOBAL, fContext, 0)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHMETAFILE(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* userHMETAFILE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (userHMETAFILE, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHMETAFILE, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHMETAFILE, fContext, 0)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHMETAFILEPICT(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* userHMETAFILEPICT */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (userHMETAFILEPICT, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHMETAFILEPICT, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHMETAFILEPICT, fContext, 0)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_userHPALETTE(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* userHPALETTE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (userHPALETTE, fContext, 4)
|
|
|
|
TEST_FIELD_ALIGN (userHPALETTE, fContext, 4)
|
|
|
|
TEST_FIELD_OFFSET(userHPALETTE, fContext, 0)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireBSTR(void)
|
|
|
|
{
|
|
|
|
/* wireBSTR */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (wireBSTR, 4)
|
|
|
|
TEST_TYPE_ALIGN (wireBSTR, 4)
|
|
|
|
TEST_TARGET_SIZE (wireBSTR, 12)
|
|
|
|
TEST_TARGET_ALIGN(wireBSTR, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireCLIPFORMAT(void)
|
|
|
|
{
|
|
|
|
/* wireCLIPFORMAT */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (wireCLIPFORMAT, 4)
|
|
|
|
TEST_TYPE_ALIGN (wireCLIPFORMAT, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHBITMAP(void)
|
|
|
|
{
|
|
|
|
/* wireHBITMAP */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (wireHBITMAP, 4)
|
|
|
|
TEST_TYPE_ALIGN (wireHBITMAP, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHENHMETAFILE(void)
|
|
|
|
{
|
|
|
|
/* wireHENHMETAFILE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (wireHENHMETAFILE, 4)
|
|
|
|
TEST_TYPE_ALIGN (wireHENHMETAFILE, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHGLOBAL(void)
|
|
|
|
{
|
|
|
|
/* wireHGLOBAL */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (wireHGLOBAL, 4)
|
|
|
|
TEST_TYPE_ALIGN (wireHGLOBAL, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHMETAFILE(void)
|
|
|
|
{
|
|
|
|
/* wireHMETAFILE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (wireHMETAFILE, 4)
|
|
|
|
TEST_TYPE_ALIGN (wireHMETAFILE, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHMETAFILEPICT(void)
|
|
|
|
{
|
|
|
|
/* wireHMETAFILEPICT */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (wireHMETAFILEPICT, 4)
|
|
|
|
TEST_TYPE_ALIGN (wireHMETAFILEPICT, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_wireHPALETTE(void)
|
|
|
|
{
|
|
|
|
/* wireHPALETTE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (wireHPALETTE, 4)
|
|
|
|
TEST_TYPE_ALIGN (wireHPALETTE, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CLSID(void)
|
|
|
|
{
|
|
|
|
/* CLSID */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (CLSID, 16)
|
|
|
|
TEST_TYPE_ALIGN (CLSID, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FMTID(void)
|
|
|
|
{
|
|
|
|
/* FMTID */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (FMTID, 16)
|
|
|
|
TEST_TYPE_ALIGN (FMTID, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_IID(void)
|
|
|
|
{
|
|
|
|
/* IID */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (IID, 16)
|
|
|
|
TEST_TYPE_ALIGN (IID, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_APPBARDATA(void)
|
|
|
|
{
|
|
|
|
/* APPBARDATA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (APPBARDATA, 36)
|
|
|
|
TEST_TYPE_ALIGN (APPBARDATA, 1)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, cbSize, 1)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, hWnd, 4)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, hWnd, 1)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, hWnd, 4)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, uCallbackMessage, 4)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, uCallbackMessage, 1)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, uCallbackMessage, 8)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, uEdge, 4)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, uEdge, 1)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, uEdge, 12)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, rc, 16)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, rc, 1)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, rc, 16)
|
|
|
|
TEST_FIELD_SIZE (APPBARDATA, lParam, 4)
|
|
|
|
TEST_FIELD_ALIGN (APPBARDATA, lParam, 1)
|
|
|
|
TEST_FIELD_OFFSET(APPBARDATA, lParam, 32)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DRAGINFOA(void)
|
|
|
|
{
|
|
|
|
/* DRAGINFOA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (DRAGINFOA, 24)
|
|
|
|
TEST_TYPE_ALIGN (DRAGINFOA, 1)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, uSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, uSize, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, uSize, 0)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, pt, 8)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, pt, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, pt, 4)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, fNC, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, fNC, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, fNC, 12)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, lpFileList, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, lpFileList, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, lpFileList, 16)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOA, grfKeyState, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOA, grfKeyState, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOA, grfKeyState, 20)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DRAGINFOW(void)
|
|
|
|
{
|
|
|
|
/* DRAGINFOW (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (DRAGINFOW, 24)
|
|
|
|
TEST_TYPE_ALIGN (DRAGINFOW, 1)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, uSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, uSize, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, uSize, 0)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, pt, 8)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, pt, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, pt, 4)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, fNC, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, fNC, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, fNC, 12)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, lpFileList, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, lpFileList, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, lpFileList, 16)
|
|
|
|
TEST_FIELD_SIZE (DRAGINFOW, grfKeyState, 4)
|
|
|
|
TEST_FIELD_ALIGN (DRAGINFOW, grfKeyState, 1)
|
|
|
|
TEST_FIELD_OFFSET(DRAGINFOW, grfKeyState, 20)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEOP_FLAGS(void)
|
|
|
|
{
|
|
|
|
/* FILEOP_FLAGS */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (FILEOP_FLAGS, 2)
|
|
|
|
TEST_TYPE_ALIGN (FILEOP_FLAGS, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(FILEOP_FLAGS)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPDRAGINFOA(void)
|
|
|
|
{
|
|
|
|
/* LPDRAGINFOA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPDRAGINFOA, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPDRAGINFOA, 4)
|
|
|
|
TEST_TARGET_SIZE (LPDRAGINFOA, 24)
|
|
|
|
TEST_TARGET_ALIGN(LPDRAGINFOA, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPDRAGINFOW(void)
|
|
|
|
{
|
|
|
|
/* LPDRAGINFOW */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPDRAGINFOW, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPDRAGINFOW, 4)
|
|
|
|
TEST_TARGET_SIZE (LPDRAGINFOW, 24)
|
|
|
|
TEST_TARGET_ALIGN(LPDRAGINFOW, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLEXECUTEINFOA(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLEXECUTEINFOA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHELLEXECUTEINFOA, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLEXECUTEINFOA, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLEXECUTEINFOW(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLEXECUTEINFOW */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHELLEXECUTEINFOW, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLEXECUTEINFOW, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHFILEOPSTRUCTA(void)
|
|
|
|
{
|
|
|
|
/* LPSHFILEOPSTRUCTA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHFILEOPSTRUCTA, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHFILEOPSTRUCTA, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSHFILEOPSTRUCTA, 30)
|
|
|
|
TEST_TARGET_ALIGN(LPSHFILEOPSTRUCTA, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHFILEOPSTRUCTW(void)
|
|
|
|
{
|
|
|
|
/* LPSHFILEOPSTRUCTW */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHFILEOPSTRUCTW, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHFILEOPSTRUCTW, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSHFILEOPSTRUCTW, 30)
|
|
|
|
TEST_TARGET_ALIGN(LPSHFILEOPSTRUCTW, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHNAMEMAPPINGA(void)
|
|
|
|
{
|
|
|
|
/* LPSHNAMEMAPPINGA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHNAMEMAPPINGA, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHNAMEMAPPINGA, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSHNAMEMAPPINGA, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPSHNAMEMAPPINGA, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHNAMEMAPPINGW(void)
|
|
|
|
{
|
|
|
|
/* LPSHNAMEMAPPINGW */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHNAMEMAPPINGW, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHNAMEMAPPINGW, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSHNAMEMAPPINGW, 16)
|
|
|
|
TEST_TARGET_ALIGN(LPSHNAMEMAPPINGW, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_NOTIFYICONDATAA(void)
|
|
|
|
{
|
|
|
|
/* NOTIFYICONDATAA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, cbSize, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, hWnd, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, hWnd, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, hWnd, 4)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, uID, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, uID, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, uID, 8)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, uFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, uFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, uFlags, 12)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, uCallbackMessage, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, uCallbackMessage, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, uCallbackMessage, 16)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, hIcon, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, hIcon, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, hIcon, 20)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, szTip, 128)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, szTip, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, szTip, 24)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, dwState, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwState, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwState, 152)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, dwStateMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwStateMask, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwStateMask, 156)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAA, szInfo, 256)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAA, szInfo, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAA, szInfo, 160)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_NOTIFYICONDATAW(void)
|
|
|
|
{
|
|
|
|
/* NOTIFYICONDATAW (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, cbSize, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, hWnd, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, hWnd, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, hWnd, 4)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, uID, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, uID, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, uID, 8)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, uFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, uFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, uFlags, 12)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, uCallbackMessage, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, uCallbackMessage, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, uCallbackMessage, 16)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, hIcon, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, hIcon, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, hIcon, 20)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, szTip, 256)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, szTip, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, szTip, 24)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, dwState, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwState, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwState, 280)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, dwStateMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwStateMask, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwStateMask, 284)
|
|
|
|
TEST_FIELD_SIZE (NOTIFYICONDATAW, szInfo, 512)
|
|
|
|
TEST_FIELD_ALIGN (NOTIFYICONDATAW, szInfo, 1)
|
|
|
|
TEST_FIELD_OFFSET(NOTIFYICONDATAW, szInfo, 288)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PAPPBARDATA(void)
|
|
|
|
{
|
|
|
|
/* PAPPBARDATA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (PAPPBARDATA, 4)
|
|
|
|
TEST_TYPE_ALIGN (PAPPBARDATA, 4)
|
|
|
|
TEST_TARGET_SIZE (PAPPBARDATA, 36)
|
|
|
|
TEST_TARGET_ALIGN(PAPPBARDATA, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PNOTIFYICONDATAA(void)
|
|
|
|
{
|
|
|
|
/* PNOTIFYICONDATAA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (PNOTIFYICONDATAA, 4)
|
|
|
|
TEST_TYPE_ALIGN (PNOTIFYICONDATAA, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PNOTIFYICONDATAW(void)
|
|
|
|
{
|
|
|
|
/* PNOTIFYICONDATAW */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (PNOTIFYICONDATAW, 4)
|
|
|
|
TEST_TYPE_ALIGN (PNOTIFYICONDATAW, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PRINTEROP_FLAGS(void)
|
|
|
|
{
|
|
|
|
/* PRINTEROP_FLAGS */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (PRINTEROP_FLAGS, 2)
|
|
|
|
TEST_TYPE_ALIGN (PRINTEROP_FLAGS, 2)
|
|
|
|
TEST_TYPE_UNSIGNED(PRINTEROP_FLAGS)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLEXECUTEINFOA(void)
|
|
|
|
{
|
|
|
|
/* SHELLEXECUTEINFOA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, cbSize, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, fMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, fMask, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, fMask, 4)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hwnd, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hwnd, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hwnd, 8)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpVerb, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpVerb, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpVerb, 12)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpFile, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpFile, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpFile, 16)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpParameters, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpParameters, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpParameters, 20)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpDirectory, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpDirectory, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpDirectory, 24)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, nShow, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, nShow, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, nShow, 28)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hInstApp, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hInstApp, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hInstApp, 32)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpIDList, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpIDList, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpIDList, 36)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpClass, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpClass, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpClass, 40)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hkeyClass, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hkeyClass, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hkeyClass, 44)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOA, dwHotKey, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, dwHotKey, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, dwHotKey, 48)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLEXECUTEINFOW(void)
|
|
|
|
{
|
|
|
|
/* SHELLEXECUTEINFOW (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, cbSize, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, fMask, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, fMask, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, fMask, 4)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hwnd, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hwnd, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hwnd, 8)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpVerb, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpVerb, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpVerb, 12)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpFile, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpFile, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpFile, 16)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpParameters, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpParameters, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpParameters, 20)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpDirectory, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpDirectory, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpDirectory, 24)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, nShow, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, nShow, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, nShow, 28)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hInstApp, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hInstApp, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hInstApp, 32)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpIDList, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpIDList, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpIDList, 36)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpClass, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpClass, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpClass, 40)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hkeyClass, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hkeyClass, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hkeyClass, 44)
|
|
|
|
TEST_FIELD_SIZE (SHELLEXECUTEINFOW, dwHotKey, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, dwHotKey, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, dwHotKey, 48)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHFILEINFOA(void)
|
|
|
|
{
|
|
|
|
/* SHFILEINFOA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHFILEINFOA, 352)
|
|
|
|
TEST_TYPE_ALIGN (SHFILEINFOA, 1)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, hIcon, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, hIcon, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, hIcon, 0)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, iIcon, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, iIcon, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, iIcon, 4)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, dwAttributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, dwAttributes, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, dwAttributes, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, szDisplayName, 260)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, szDisplayName, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, szDisplayName, 12)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOA, szTypeName, 80)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOA, szTypeName, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOA, szTypeName, 272)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHFILEINFOW(void)
|
|
|
|
{
|
|
|
|
/* SHFILEINFOW (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHFILEINFOW, 692)
|
|
|
|
TEST_TYPE_ALIGN (SHFILEINFOW, 1)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, hIcon, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, hIcon, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, hIcon, 0)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, iIcon, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, iIcon, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, iIcon, 4)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, dwAttributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, dwAttributes, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, dwAttributes, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, szDisplayName, 520)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, szDisplayName, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, szDisplayName, 12)
|
|
|
|
TEST_FIELD_SIZE (SHFILEINFOW, szTypeName, 160)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEINFOW, szTypeName, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEINFOW, szTypeName, 532)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHFILEOPSTRUCTA(void)
|
|
|
|
{
|
|
|
|
/* SHFILEOPSTRUCTA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHFILEOPSTRUCTA, 30)
|
|
|
|
TEST_TYPE_ALIGN (SHFILEOPSTRUCTA, 1)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, hwnd, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hwnd, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hwnd, 0)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, wFunc, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, wFunc, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, wFunc, 4)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, pFrom, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, pFrom, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, pFrom, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, pTo, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, pTo, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, pTo, 12)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fFlags, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fFlags, 16)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fAnyOperationsAborted, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fAnyOperationsAborted, 18)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, hNameMappings, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hNameMappings, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hNameMappings, 22)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTA, lpszProgressTitle, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, lpszProgressTitle, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, lpszProgressTitle, 26)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHFILEOPSTRUCTW(void)
|
|
|
|
{
|
|
|
|
/* SHFILEOPSTRUCTW (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHFILEOPSTRUCTW, 30)
|
|
|
|
TEST_TYPE_ALIGN (SHFILEOPSTRUCTW, 1)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, hwnd, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hwnd, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hwnd, 0)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, wFunc, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, wFunc, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, wFunc, 4)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, pFrom, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, pFrom, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, pFrom, 8)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, pTo, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, pTo, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, pTo, 12)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fFlags, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fFlags, 16)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fAnyOperationsAborted, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fAnyOperationsAborted, 18)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, hNameMappings, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hNameMappings, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hNameMappings, 22)
|
|
|
|
TEST_FIELD_SIZE (SHFILEOPSTRUCTW, lpszProgressTitle, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, lpszProgressTitle, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, lpszProgressTitle, 26)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHNAMEMAPPINGA(void)
|
|
|
|
{
|
|
|
|
/* SHNAMEMAPPINGA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHNAMEMAPPINGA, 16)
|
|
|
|
TEST_TYPE_ALIGN (SHNAMEMAPPINGA, 1)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszOldPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszOldPath, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszOldPath, 0)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszNewPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszNewPath, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszNewPath, 4)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchOldPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchOldPath, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchOldPath, 8)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchNewPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchNewPath, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchNewPath, 12)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHNAMEMAPPINGW(void)
|
|
|
|
{
|
|
|
|
/* SHNAMEMAPPINGW (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHNAMEMAPPINGW, 16)
|
|
|
|
TEST_TYPE_ALIGN (SHNAMEMAPPINGW, 1)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszOldPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszOldPath, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszOldPath, 0)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszNewPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszNewPath, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszNewPath, 4)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchOldPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchOldPath, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchOldPath, 8)
|
|
|
|
TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchNewPath, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchNewPath, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchNewPath, 12)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_ITEMIDLIST(void)
|
|
|
|
{
|
|
|
|
/* ITEMIDLIST (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (ITEMIDLIST, 3)
|
|
|
|
TEST_TYPE_ALIGN (ITEMIDLIST, 1)
|
|
|
|
TEST_FIELD_SIZE (ITEMIDLIST, mkid, 3)
|
|
|
|
TEST_FIELD_ALIGN (ITEMIDLIST, mkid, 1)
|
|
|
|
TEST_FIELD_OFFSET(ITEMIDLIST, mkid, 0)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCITEMIDLIST(void)
|
|
|
|
{
|
|
|
|
/* LPCITEMIDLIST */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPCITEMIDLIST, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPCITEMIDLIST, 4)
|
|
|
|
TEST_TARGET_SIZE (LPCITEMIDLIST, 3)
|
|
|
|
TEST_TARGET_ALIGN(LPCITEMIDLIST, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCSHITEMID(void)
|
|
|
|
{
|
|
|
|
/* LPCSHITEMID */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPCSHITEMID, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPCSHITEMID, 4)
|
|
|
|
TEST_TARGET_SIZE (LPCSHITEMID, 3)
|
|
|
|
TEST_TARGET_ALIGN(LPCSHITEMID, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPITEMIDLIST(void)
|
|
|
|
{
|
|
|
|
/* LPITEMIDLIST */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPITEMIDLIST, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPITEMIDLIST, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLDETAILS(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLDETAILS */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHELLDETAILS, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLDETAILS, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHITEMID(void)
|
|
|
|
{
|
|
|
|
/* LPSHITEMID */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHITEMID, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHITEMID, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSTRRET(void)
|
|
|
|
{
|
|
|
|
/* LPSTRRET */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSTRRET, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSTRRET, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLDETAILS(void)
|
|
|
|
{
|
|
|
|
/* SHELLDETAILS (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (SHELLDETAILS, fmt, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLDETAILS, fmt, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLDETAILS, fmt, 0)
|
|
|
|
TEST_FIELD_SIZE (SHELLDETAILS, cxChar, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLDETAILS, cxChar, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLDETAILS, cxChar, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHITEMID(void)
|
|
|
|
{
|
|
|
|
/* SHITEMID (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHITEMID, 3)
|
|
|
|
TEST_TYPE_ALIGN (SHITEMID, 1)
|
|
|
|
TEST_FIELD_SIZE (SHITEMID, cb, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHITEMID, cb, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHITEMID, cb, 0)
|
|
|
|
TEST_FIELD_SIZE (SHITEMID, abID, 1)
|
|
|
|
TEST_FIELD_ALIGN (SHITEMID, abID, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHITEMID, abID, 2)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_STRRET(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* STRRET (pack 8) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (STRRET, uType, 4)
|
|
|
|
TEST_FIELD_ALIGN (STRRET, uType, 4)
|
|
|
|
TEST_FIELD_OFFSET(STRRET, uType, 0)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_AUTO_SCROLL_DATA(void)
|
|
|
|
{
|
|
|
|
/* AUTO_SCROLL_DATA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (AUTO_SCROLL_DATA, 48)
|
|
|
|
TEST_TYPE_ALIGN (AUTO_SCROLL_DATA, 1)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, iNextSample, 4)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, iNextSample, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, iNextSample, 0)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwLastScroll, 4)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwLastScroll, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwLastScroll, 4)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, bFull, 4)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, bFull, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, bFull, 8)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, pts, 24)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, pts, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, pts, 12)
|
|
|
|
TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwTimes, 12)
|
|
|
|
TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwTimes, 1)
|
|
|
|
TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwTimes, 36)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BFFCALLBACK(void)
|
|
|
|
{
|
|
|
|
/* BFFCALLBACK */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (BFFCALLBACK, 4)
|
|
|
|
TEST_TYPE_ALIGN (BFFCALLBACK, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BROWSEINFOA(void)
|
|
|
|
{
|
|
|
|
/* BROWSEINFOA (pack 8) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (BROWSEINFOA, 32)
|
|
|
|
TEST_TYPE_ALIGN (BROWSEINFOA, 4)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, hwndOwner, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, hwndOwner, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, hwndOwner, 0)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, pidlRoot, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, pidlRoot, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, pidlRoot, 4)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, pszDisplayName, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, pszDisplayName, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, pszDisplayName, 8)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, lpszTitle, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, lpszTitle, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, lpszTitle, 12)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, ulFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, ulFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, ulFlags, 16)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, lpfn, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, lpfn, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, lpfn, 20)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, lParam, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, lParam, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, lParam, 24)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOA, iImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOA, iImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOA, iImage, 28)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_BROWSEINFOW(void)
|
|
|
|
{
|
|
|
|
/* BROWSEINFOW (pack 8) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (BROWSEINFOW, 32)
|
|
|
|
TEST_TYPE_ALIGN (BROWSEINFOW, 4)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, hwndOwner, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, hwndOwner, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, hwndOwner, 0)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, pidlRoot, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, pidlRoot, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, pidlRoot, 4)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, pszDisplayName, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, pszDisplayName, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, pszDisplayName, 8)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, lpszTitle, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, lpszTitle, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, lpszTitle, 12)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, ulFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, ulFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, ulFlags, 16)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, lpfn, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, lpfn, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, lpfn, 20)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, lParam, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, lParam, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, lParam, 24)
|
|
|
|
TEST_FIELD_SIZE (BROWSEINFOW, iImage, 4)
|
|
|
|
TEST_FIELD_ALIGN (BROWSEINFOW, iImage, 4)
|
|
|
|
TEST_FIELD_OFFSET(BROWSEINFOW, iImage, 28)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CABINETSTATE(void)
|
|
|
|
{
|
|
|
|
/* CABINETSTATE (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (CABINETSTATE, 12)
|
|
|
|
TEST_TYPE_ALIGN (CABINETSTATE, 1)
|
|
|
|
TEST_FIELD_SIZE (CABINETSTATE, cLength, 2)
|
|
|
|
TEST_FIELD_ALIGN (CABINETSTATE, cLength, 1)
|
|
|
|
TEST_FIELD_OFFSET(CABINETSTATE, cLength, 0)
|
|
|
|
TEST_FIELD_SIZE (CABINETSTATE, nVersion, 2)
|
|
|
|
TEST_FIELD_ALIGN (CABINETSTATE, nVersion, 1)
|
|
|
|
TEST_FIELD_OFFSET(CABINETSTATE, nVersion, 2)
|
|
|
|
TEST_FIELD_SIZE (CABINETSTATE, fMenuEnumFilter, 4)
|
|
|
|
TEST_FIELD_ALIGN (CABINETSTATE, fMenuEnumFilter, 1)
|
|
|
|
TEST_FIELD_OFFSET(CABINETSTATE, fMenuEnumFilter, 8)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CIDA(void)
|
|
|
|
{
|
|
|
|
/* CIDA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (CIDA, 8)
|
|
|
|
TEST_TYPE_ALIGN (CIDA, 1)
|
|
|
|
TEST_FIELD_SIZE (CIDA, cidl, 4)
|
|
|
|
TEST_FIELD_ALIGN (CIDA, cidl, 1)
|
|
|
|
TEST_FIELD_OFFSET(CIDA, cidl, 0)
|
|
|
|
TEST_FIELD_SIZE (CIDA, aoffset, 4)
|
|
|
|
TEST_FIELD_ALIGN (CIDA, aoffset, 1)
|
|
|
|
TEST_FIELD_OFFSET(CIDA, aoffset, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_CSFV(void)
|
|
|
|
{
|
2010-07-05 23:00:52 +00:00
|
|
|
/* CSFV (pack 8) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_SIZE (CSFV, cbSize, 4)
|
2010-07-05 23:00:52 +00:00
|
|
|
TEST_FIELD_ALIGN (CSFV, cbSize, 4)
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_OFFSET(CSFV, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (CSFV, pshf, 4)
|
2010-07-05 23:00:52 +00:00
|
|
|
TEST_FIELD_ALIGN (CSFV, pshf, 4)
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_OFFSET(CSFV, pshf, 4)
|
|
|
|
TEST_FIELD_SIZE (CSFV, psvOuter, 4)
|
2010-07-05 23:00:52 +00:00
|
|
|
TEST_FIELD_ALIGN (CSFV, psvOuter, 4)
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_OFFSET(CSFV, psvOuter, 8)
|
|
|
|
TEST_FIELD_SIZE (CSFV, pidl, 4)
|
2010-07-05 23:00:52 +00:00
|
|
|
TEST_FIELD_ALIGN (CSFV, pidl, 4)
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_OFFSET(CSFV, pidl, 12)
|
|
|
|
TEST_FIELD_SIZE (CSFV, lEvents, 4)
|
2010-07-05 23:00:52 +00:00
|
|
|
TEST_FIELD_ALIGN (CSFV, lEvents, 4)
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_OFFSET(CSFV, lEvents, 16)
|
|
|
|
TEST_FIELD_SIZE (CSFV, pfnCallback, 4)
|
2010-07-05 23:00:52 +00:00
|
|
|
TEST_FIELD_ALIGN (CSFV, pfnCallback, 4)
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_FIELD_OFFSET(CSFV, pfnCallback, 20)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_DROPFILES(void)
|
|
|
|
{
|
|
|
|
/* DROPFILES (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (DROPFILES, 20)
|
|
|
|
TEST_TYPE_ALIGN (DROPFILES, 1)
|
|
|
|
TEST_FIELD_SIZE (DROPFILES, pFiles, 4)
|
|
|
|
TEST_FIELD_ALIGN (DROPFILES, pFiles, 1)
|
|
|
|
TEST_FIELD_OFFSET(DROPFILES, pFiles, 0)
|
|
|
|
TEST_FIELD_SIZE (DROPFILES, pt, 8)
|
|
|
|
TEST_FIELD_ALIGN (DROPFILES, pt, 1)
|
|
|
|
TEST_FIELD_OFFSET(DROPFILES, pt, 4)
|
|
|
|
TEST_FIELD_SIZE (DROPFILES, fNC, 4)
|
|
|
|
TEST_FIELD_ALIGN (DROPFILES, fNC, 1)
|
|
|
|
TEST_FIELD_OFFSET(DROPFILES, fNC, 12)
|
|
|
|
TEST_FIELD_SIZE (DROPFILES, fWide, 4)
|
|
|
|
TEST_FIELD_ALIGN (DROPFILES, fWide, 1)
|
|
|
|
TEST_FIELD_OFFSET(DROPFILES, fWide, 16)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEDESCRIPTORA(void)
|
|
|
|
{
|
|
|
|
/* FILEDESCRIPTORA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (FILEDESCRIPTORA, 332)
|
|
|
|
TEST_TYPE_ALIGN (FILEDESCRIPTORA, 1)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, dwFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, dwFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, dwFlags, 0)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, clsid, 16)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, clsid, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, clsid, 4)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, sizel, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, sizel, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, sizel, 20)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, pointl, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, pointl, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, pointl, 28)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, dwFileAttributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, dwFileAttributes, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, dwFileAttributes, 36)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, ftCreationTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftCreationTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftCreationTime, 40)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastAccessTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastAccessTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastAccessTime, 48)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastWriteTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastWriteTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastWriteTime, 56)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeHigh, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeHigh, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeHigh, 64)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeLow, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeLow, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeLow, 68)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORA, cFileName, 260)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORA, cFileName, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORA, cFileName, 72)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEDESCRIPTORW(void)
|
|
|
|
{
|
|
|
|
/* FILEDESCRIPTORW (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (FILEDESCRIPTORW, 592)
|
|
|
|
TEST_TYPE_ALIGN (FILEDESCRIPTORW, 1)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, dwFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, dwFlags, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, dwFlags, 0)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, clsid, 16)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, clsid, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, clsid, 4)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, sizel, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, sizel, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, sizel, 20)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, pointl, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, pointl, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, pointl, 28)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, dwFileAttributes, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, dwFileAttributes, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, dwFileAttributes, 36)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, ftCreationTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftCreationTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftCreationTime, 40)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastAccessTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastAccessTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastAccessTime, 48)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastWriteTime, 8)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastWriteTime, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastWriteTime, 56)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeHigh, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeHigh, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeHigh, 64)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeLow, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeLow, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeLow, 68)
|
|
|
|
TEST_FIELD_SIZE (FILEDESCRIPTORW, cFileName, 520)
|
|
|
|
TEST_FIELD_ALIGN (FILEDESCRIPTORW, cFileName, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEDESCRIPTORW, cFileName, 72)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEGROUPDESCRIPTORA(void)
|
|
|
|
{
|
|
|
|
/* FILEGROUPDESCRIPTORA (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (FILEGROUPDESCRIPTORA, 336)
|
|
|
|
TEST_TYPE_ALIGN (FILEGROUPDESCRIPTORA, 1)
|
|
|
|
TEST_FIELD_SIZE (FILEGROUPDESCRIPTORA, cItems, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORA, cItems, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORA, cItems, 0)
|
|
|
|
TEST_FIELD_SIZE (FILEGROUPDESCRIPTORA, fgd, 332)
|
|
|
|
TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORA, fgd, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORA, fgd, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_FILEGROUPDESCRIPTORW(void)
|
|
|
|
{
|
|
|
|
/* FILEGROUPDESCRIPTORW (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (FILEGROUPDESCRIPTORW, 596)
|
|
|
|
TEST_TYPE_ALIGN (FILEGROUPDESCRIPTORW, 1)
|
|
|
|
TEST_FIELD_SIZE (FILEGROUPDESCRIPTORW, cItems, 4)
|
|
|
|
TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORW, cItems, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORW, cItems, 0)
|
|
|
|
TEST_FIELD_SIZE (FILEGROUPDESCRIPTORW, fgd, 592)
|
|
|
|
TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORW, fgd, 1)
|
|
|
|
TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORW, fgd, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_ITEMSPACING(void)
|
|
|
|
{
|
|
|
|
/* ITEMSPACING (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (ITEMSPACING, 16)
|
|
|
|
TEST_TYPE_ALIGN (ITEMSPACING, 4)
|
|
|
|
TEST_FIELD_SIZE (ITEMSPACING, cxSmall, 4)
|
|
|
|
TEST_FIELD_ALIGN (ITEMSPACING, cxSmall, 4)
|
|
|
|
TEST_FIELD_OFFSET(ITEMSPACING, cxSmall, 0)
|
|
|
|
TEST_FIELD_SIZE (ITEMSPACING, cySmall, 4)
|
|
|
|
TEST_FIELD_ALIGN (ITEMSPACING, cySmall, 4)
|
|
|
|
TEST_FIELD_OFFSET(ITEMSPACING, cySmall, 4)
|
|
|
|
TEST_FIELD_SIZE (ITEMSPACING, cxLarge, 4)
|
|
|
|
TEST_FIELD_ALIGN (ITEMSPACING, cxLarge, 4)
|
|
|
|
TEST_FIELD_OFFSET(ITEMSPACING, cxLarge, 8)
|
|
|
|
TEST_FIELD_SIZE (ITEMSPACING, cyLarge, 4)
|
|
|
|
TEST_FIELD_ALIGN (ITEMSPACING, cyLarge, 4)
|
|
|
|
TEST_FIELD_OFFSET(ITEMSPACING, cyLarge, 12)
|
|
|
|
}
|
|
|
|
|
2007-03-06 11:59:18 +00:00
|
|
|
static void test_pack_LPBROWSEINFOA(void)
|
|
|
|
{
|
|
|
|
/* LPBROWSEINFOA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPBROWSEINFOA, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPBROWSEINFOA, 4)
|
|
|
|
TEST_TARGET_SIZE (LPBROWSEINFOA, 32)
|
|
|
|
TEST_TARGET_ALIGN(LPBROWSEINFOA, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPBROWSEINFOW(void)
|
|
|
|
{
|
|
|
|
/* LPBROWSEINFOW */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPBROWSEINFOW, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPBROWSEINFOW, 4)
|
|
|
|
TEST_TARGET_SIZE (LPBROWSEINFOW, 32)
|
|
|
|
TEST_TARGET_ALIGN(LPBROWSEINFOW, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCABINETSTATE(void)
|
|
|
|
{
|
|
|
|
/* LPCABINETSTATE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPCABINETSTATE, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPCABINETSTATE, 4)
|
|
|
|
TEST_TARGET_SIZE (LPCABINETSTATE, 12)
|
|
|
|
TEST_TARGET_ALIGN(LPCABINETSTATE, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPCSFV(void)
|
|
|
|
{
|
|
|
|
/* LPCSFV */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPCSFV, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPCSFV, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPDROPFILES(void)
|
|
|
|
{
|
|
|
|
/* LPDROPFILES */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPDROPFILES, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPDROPFILES, 4)
|
|
|
|
TEST_TARGET_SIZE (LPDROPFILES, 20)
|
|
|
|
TEST_TARGET_ALIGN(LPDROPFILES, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPFILEDESCRIPTORA(void)
|
|
|
|
{
|
|
|
|
/* LPFILEDESCRIPTORA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPFILEDESCRIPTORA, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPFILEDESCRIPTORA, 4)
|
|
|
|
TEST_TARGET_SIZE (LPFILEDESCRIPTORA, 332)
|
|
|
|
TEST_TARGET_ALIGN(LPFILEDESCRIPTORA, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPFILEDESCRIPTORW(void)
|
|
|
|
{
|
|
|
|
/* LPFILEDESCRIPTORW */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPFILEDESCRIPTORW, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPFILEDESCRIPTORW, 4)
|
|
|
|
TEST_TARGET_SIZE (LPFILEDESCRIPTORW, 592)
|
|
|
|
TEST_TARGET_ALIGN(LPFILEDESCRIPTORW, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPFILEGROUPDESCRIPTORA(void)
|
|
|
|
{
|
|
|
|
/* LPFILEGROUPDESCRIPTORA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPFILEGROUPDESCRIPTORA, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPFILEGROUPDESCRIPTORA, 4)
|
|
|
|
TEST_TARGET_SIZE (LPFILEGROUPDESCRIPTORA, 336)
|
|
|
|
TEST_TARGET_ALIGN(LPFILEGROUPDESCRIPTORA, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPFILEGROUPDESCRIPTORW(void)
|
|
|
|
{
|
|
|
|
/* LPFILEGROUPDESCRIPTORW */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPFILEGROUPDESCRIPTORW, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPFILEGROUPDESCRIPTORW, 4)
|
|
|
|
TEST_TARGET_SIZE (LPFILEGROUPDESCRIPTORW, 596)
|
|
|
|
TEST_TARGET_ALIGN(LPFILEGROUPDESCRIPTORW, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPFNVIEWCALLBACK(void)
|
|
|
|
{
|
|
|
|
/* LPFNVIEWCALLBACK */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPFNVIEWCALLBACK, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPFNVIEWCALLBACK, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPIDA(void)
|
|
|
|
{
|
|
|
|
/* LPIDA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPIDA, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPIDA, 4)
|
|
|
|
TEST_TARGET_SIZE (LPIDA, 8)
|
|
|
|
TEST_TARGET_ALIGN(LPIDA, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPQCMINFO(void)
|
|
|
|
{
|
|
|
|
/* LPQCMINFO */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPQCMINFO, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPQCMINFO, 4)
|
|
|
|
TEST_TARGET_SIZE (LPQCMINFO, 20)
|
|
|
|
TEST_TARGET_ALIGN(LPQCMINFO, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHChangeDWORDAsIDList(void)
|
|
|
|
{
|
|
|
|
/* LPSHChangeDWORDAsIDList */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHChangeDWORDAsIDList, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHChangeDWORDAsIDList, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSHChangeDWORDAsIDList, 12)
|
|
|
|
TEST_TARGET_ALIGN(LPSHChangeDWORDAsIDList, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHChangeProductKeyAsIDList(void)
|
|
|
|
{
|
|
|
|
/* LPSHChangeProductKeyAsIDList */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHChangeProductKeyAsIDList, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHChangeProductKeyAsIDList, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSHChangeProductKeyAsIDList, 82)
|
|
|
|
TEST_TARGET_ALIGN(LPSHChangeProductKeyAsIDList, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHDESCRIPTIONID(void)
|
|
|
|
{
|
|
|
|
/* LPSHDESCRIPTIONID */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHDESCRIPTIONID, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHDESCRIPTIONID, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSHDESCRIPTIONID, 20)
|
|
|
|
TEST_TARGET_ALIGN(LPSHDESCRIPTIONID, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLFLAGSTATE(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLFLAGSTATE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHELLFLAGSTATE, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLFLAGSTATE, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSHELLFLAGSTATE, 4)
|
|
|
|
TEST_TARGET_ALIGN(LPSHELLFLAGSTATE, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPSHELLSTATE(void)
|
|
|
|
{
|
|
|
|
/* LPSHELLSTATE */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPSHELLSTATE, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPSHELLSTATE, 4)
|
|
|
|
TEST_TARGET_SIZE (LPSHELLSTATE, 32)
|
|
|
|
TEST_TARGET_ALIGN(LPSHELLSTATE, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_LPTBINFO(void)
|
|
|
|
{
|
|
|
|
/* LPTBINFO */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (LPTBINFO, 4)
|
|
|
|
TEST_TYPE_ALIGN (LPTBINFO, 4)
|
|
|
|
TEST_TARGET_SIZE (LPTBINFO, 8)
|
|
|
|
TEST_TARGET_ALIGN(LPTBINFO, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PBROWSEINFOA(void)
|
|
|
|
{
|
|
|
|
/* PBROWSEINFOA */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (PBROWSEINFOA, 4)
|
|
|
|
TEST_TYPE_ALIGN (PBROWSEINFOA, 4)
|
|
|
|
TEST_TARGET_SIZE (PBROWSEINFOA, 32)
|
|
|
|
TEST_TARGET_ALIGN(PBROWSEINFOA, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_PBROWSEINFOW(void)
|
|
|
|
{
|
|
|
|
/* PBROWSEINFOW */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (PBROWSEINFOW, 4)
|
|
|
|
TEST_TYPE_ALIGN (PBROWSEINFOW, 4)
|
|
|
|
TEST_TARGET_SIZE (PBROWSEINFOW, 32)
|
|
|
|
TEST_TARGET_ALIGN(PBROWSEINFOW, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_QCMINFO(void)
|
|
|
|
{
|
|
|
|
/* QCMINFO (pack 8) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (QCMINFO, 20)
|
|
|
|
TEST_TYPE_ALIGN (QCMINFO, 4)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, hmenu, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, hmenu, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, hmenu, 0)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, indexMenu, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, indexMenu, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, indexMenu, 4)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, idCmdFirst, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, idCmdFirst, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, idCmdFirst, 8)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, idCmdLast, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, idCmdLast, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, idCmdLast, 12)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO, pIdMap, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO, pIdMap, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO, pIdMap, 16)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_QCMINFO_IDMAP(void)
|
|
|
|
{
|
|
|
|
/* QCMINFO_IDMAP (pack 8) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (QCMINFO_IDMAP, 12)
|
|
|
|
TEST_TYPE_ALIGN (QCMINFO_IDMAP, 4)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO_IDMAP, nMaxIds, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO_IDMAP, nMaxIds, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO_IDMAP, nMaxIds, 0)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO_IDMAP, pIdList, 8)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO_IDMAP, pIdList, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO_IDMAP, pIdList, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_QCMINFO_IDMAP_PLACEMENT(void)
|
|
|
|
{
|
|
|
|
/* QCMINFO_IDMAP_PLACEMENT (pack 8) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (QCMINFO_IDMAP_PLACEMENT, 8)
|
|
|
|
TEST_TYPE_ALIGN (QCMINFO_IDMAP_PLACEMENT, 4)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO_IDMAP_PLACEMENT, id, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO_IDMAP_PLACEMENT, id, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO_IDMAP_PLACEMENT, id, 0)
|
|
|
|
TEST_FIELD_SIZE (QCMINFO_IDMAP_PLACEMENT, fFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (QCMINFO_IDMAP_PLACEMENT, fFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(QCMINFO_IDMAP_PLACEMENT, fFlags, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
static void test_pack_SFV_CREATE(void)
|
|
|
|
{
|
|
|
|
/* SFV_CREATE (pack 8) */
|
|
|
|
TEST_TYPE_SIZE (SFV_CREATE, 16)
|
|
|
|
TEST_TYPE_ALIGN (SFV_CREATE, 4)
|
|
|
|
TEST_FIELD_SIZE (SFV_CREATE, cbSize, 4)
|
|
|
|
TEST_FIELD_ALIGN (SFV_CREATE, cbSize, 4)
|
|
|
|
TEST_FIELD_OFFSET(SFV_CREATE, cbSize, 0)
|
|
|
|
TEST_FIELD_SIZE (SFV_CREATE, pshf, 4)
|
|
|
|
TEST_FIELD_ALIGN (SFV_CREATE, pshf, 4)
|
|
|
|
TEST_FIELD_OFFSET(SFV_CREATE, pshf, 4)
|
|
|
|
TEST_FIELD_SIZE (SFV_CREATE, psvOuter, 4)
|
|
|
|
TEST_FIELD_ALIGN (SFV_CREATE, psvOuter, 4)
|
|
|
|
TEST_FIELD_OFFSET(SFV_CREATE, psvOuter, 8)
|
|
|
|
TEST_FIELD_SIZE (SFV_CREATE, psfvcb, 4)
|
|
|
|
TEST_FIELD_ALIGN (SFV_CREATE, psfvcb, 4)
|
|
|
|
TEST_FIELD_OFFSET(SFV_CREATE, psfvcb, 12)
|
|
|
|
}
|
|
|
|
|
2007-03-06 11:59:18 +00:00
|
|
|
static void test_pack_SHChangeDWORDAsIDList(void)
|
|
|
|
{
|
|
|
|
/* SHChangeDWORDAsIDList (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHChangeDWORDAsIDList, 12)
|
|
|
|
TEST_TYPE_ALIGN (SHChangeDWORDAsIDList, 1)
|
|
|
|
TEST_FIELD_SIZE (SHChangeDWORDAsIDList, cb, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, cb, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, cb, 0)
|
|
|
|
TEST_FIELD_SIZE (SHChangeDWORDAsIDList, dwItem1, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, dwItem1, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, dwItem1, 2)
|
|
|
|
TEST_FIELD_SIZE (SHChangeDWORDAsIDList, dwItem2, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, dwItem2, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, dwItem2, 6)
|
|
|
|
TEST_FIELD_SIZE (SHChangeDWORDAsIDList, cbZero, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, cbZero, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, cbZero, 10)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHChangeNotifyEntry(void)
|
|
|
|
{
|
|
|
|
/* SHChangeNotifyEntry (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHChangeNotifyEntry, 8)
|
|
|
|
TEST_TYPE_ALIGN (SHChangeNotifyEntry, 1)
|
|
|
|
TEST_FIELD_SIZE (SHChangeNotifyEntry, pidl, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeNotifyEntry, pidl, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeNotifyEntry, pidl, 0)
|
|
|
|
TEST_FIELD_SIZE (SHChangeNotifyEntry, fRecursive, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeNotifyEntry, fRecursive, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeNotifyEntry, fRecursive, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHChangeProductKeyAsIDList(void)
|
|
|
|
{
|
|
|
|
/* SHChangeProductKeyAsIDList (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHChangeProductKeyAsIDList, 82)
|
|
|
|
TEST_TYPE_ALIGN (SHChangeProductKeyAsIDList, 1)
|
|
|
|
TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, cb, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, cb, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeProductKeyAsIDList, cb, 0)
|
|
|
|
TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, wszProductKey, 78)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, wszProductKey, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeProductKeyAsIDList, wszProductKey, 2)
|
|
|
|
TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, cbZero, 2)
|
|
|
|
TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, cbZero, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHChangeProductKeyAsIDList, cbZero, 80)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHDESCRIPTIONID(void)
|
|
|
|
{
|
|
|
|
/* SHDESCRIPTIONID (pack 8) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHDESCRIPTIONID, 20)
|
|
|
|
TEST_TYPE_ALIGN (SHDESCRIPTIONID, 4)
|
|
|
|
TEST_FIELD_SIZE (SHDESCRIPTIONID, dwDescriptionId, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHDESCRIPTIONID, dwDescriptionId, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHDESCRIPTIONID, dwDescriptionId, 0)
|
|
|
|
TEST_FIELD_SIZE (SHDESCRIPTIONID, clsid, 16)
|
|
|
|
TEST_FIELD_ALIGN (SHDESCRIPTIONID, clsid, 4)
|
|
|
|
TEST_FIELD_OFFSET(SHDESCRIPTIONID, clsid, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLFLAGSTATE(void)
|
|
|
|
{
|
|
|
|
/* SHELLFLAGSTATE (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHELLFLAGSTATE, 4)
|
|
|
|
TEST_TYPE_ALIGN (SHELLFLAGSTATE, 1)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_SHELLSTATE(void)
|
|
|
|
{
|
|
|
|
/* SHELLSTATE (pack 1) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (SHELLSTATE, 32)
|
|
|
|
TEST_TYPE_ALIGN (SHELLSTATE, 1)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, dwWin95Unused, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, dwWin95Unused, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, dwWin95Unused, 4)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, uWin95Unused, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, uWin95Unused, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, uWin95Unused, 8)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, lParamSort, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, lParamSort, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, lParamSort, 12)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, iSortDirection, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, iSortDirection, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, iSortDirection, 16)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, version, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, version, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, version, 20)
|
|
|
|
TEST_FIELD_SIZE (SHELLSTATE, uNotUsed, 4)
|
|
|
|
TEST_FIELD_ALIGN (SHELLSTATE, uNotUsed, 1)
|
|
|
|
TEST_FIELD_OFFSET(SHELLSTATE, uNotUsed, 24)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static void test_pack_TBINFO(void)
|
|
|
|
{
|
|
|
|
/* TBINFO (pack 8) */
|
2009-04-29 15:11:22 +00:00
|
|
|
TEST_TYPE_SIZE (TBINFO, 8)
|
|
|
|
TEST_TYPE_ALIGN (TBINFO, 4)
|
|
|
|
TEST_FIELD_SIZE (TBINFO, cbuttons, 4)
|
|
|
|
TEST_FIELD_ALIGN (TBINFO, cbuttons, 4)
|
|
|
|
TEST_FIELD_OFFSET(TBINFO, cbuttons, 0)
|
|
|
|
TEST_FIELD_SIZE (TBINFO, uFlags, 4)
|
|
|
|
TEST_FIELD_ALIGN (TBINFO, uFlags, 4)
|
|
|
|
TEST_FIELD_OFFSET(TBINFO, uFlags, 4)
|
2007-03-06 11:59:18 +00:00
|
|
|
}
|
|
|
|
|
2010-07-05 23:00:52 +00:00
|
|
|
#endif /* _WIN64 */
|
|
|
|
|
2007-03-06 11:59:18 +00:00
|
|
|
static void test_pack(void)
|
|
|
|
{
|
|
|
|
test_pack_APPBARDATA();
|
|
|
|
test_pack_AUTO_SCROLL_DATA();
|
|
|
|
test_pack_BFFCALLBACK();
|
|
|
|
test_pack_BLOB();
|
|
|
|
test_pack_BROWSEINFOA();
|
|
|
|
test_pack_BROWSEINFOW();
|
|
|
|
test_pack_BSTR();
|
|
|
|
test_pack_BSTRBLOB();
|
|
|
|
test_pack_BYTE_BLOB();
|
|
|
|
test_pack_BYTE_SIZEDARR();
|
|
|
|
test_pack_CABINETSTATE();
|
|
|
|
test_pack_CIDA();
|
|
|
|
test_pack_CLIPDATA();
|
|
|
|
test_pack_CLIPFORMAT();
|
|
|
|
test_pack_CLSID();
|
|
|
|
test_pack_COAUTHIDENTITY();
|
|
|
|
test_pack_COAUTHINFO();
|
|
|
|
test_pack_CSFV();
|
2007-08-27 07:03:32 +00:00
|
|
|
test_pack_DATE();
|
|
|
|
test_pack_DOUBLE();
|
2007-03-06 11:59:18 +00:00
|
|
|
test_pack_DRAGINFOA();
|
|
|
|
test_pack_DRAGINFOW();
|
|
|
|
test_pack_DROPFILES();
|
|
|
|
test_pack_DWORD_SIZEDARR();
|
|
|
|
test_pack_FILEDESCRIPTORA();
|
|
|
|
test_pack_FILEDESCRIPTORW();
|
|
|
|
test_pack_FILEGROUPDESCRIPTORA();
|
|
|
|
test_pack_FILEGROUPDESCRIPTORW();
|
|
|
|
test_pack_FILEOP_FLAGS();
|
|
|
|
test_pack_FLAGGED_BYTE_BLOB();
|
|
|
|
test_pack_FLAGGED_WORD_BLOB();
|
|
|
|
test_pack_FMTID();
|
|
|
|
test_pack_HMETAFILEPICT();
|
|
|
|
test_pack_HYPER_SIZEDARR();
|
|
|
|
test_pack_IID();
|
|
|
|
test_pack_ITEMIDLIST();
|
2010-07-05 23:00:52 +00:00
|
|
|
test_pack_ITEMSPACING();
|
2007-03-06 11:59:18 +00:00
|
|
|
test_pack_LPBLOB();
|
|
|
|
test_pack_LPBROWSEINFOA();
|
|
|
|
test_pack_LPBROWSEINFOW();
|
|
|
|
test_pack_LPBSTR();
|
|
|
|
test_pack_LPBSTRBLOB();
|
|
|
|
test_pack_LPCABINETSTATE();
|
|
|
|
test_pack_LPCITEMIDLIST();
|
|
|
|
test_pack_LPCOLESTR();
|
|
|
|
test_pack_LPCSFV();
|
|
|
|
test_pack_LPCSHITEMID();
|
|
|
|
test_pack_LPCY();
|
|
|
|
test_pack_LPDECIMAL();
|
|
|
|
test_pack_LPDRAGINFOA();
|
|
|
|
test_pack_LPDRAGINFOW();
|
|
|
|
test_pack_LPDROPFILES();
|
|
|
|
test_pack_LPFILEDESCRIPTORA();
|
|
|
|
test_pack_LPFILEDESCRIPTORW();
|
|
|
|
test_pack_LPFILEGROUPDESCRIPTORA();
|
|
|
|
test_pack_LPFILEGROUPDESCRIPTORW();
|
|
|
|
test_pack_LPFNVIEWCALLBACK();
|
|
|
|
test_pack_LPIDA();
|
|
|
|
test_pack_LPITEMIDLIST();
|
|
|
|
test_pack_LPOLESTR();
|
|
|
|
test_pack_LPQCMINFO();
|
|
|
|
test_pack_LPSHChangeDWORDAsIDList();
|
|
|
|
test_pack_LPSHChangeProductKeyAsIDList();
|
|
|
|
test_pack_LPSHDESCRIPTIONID();
|
|
|
|
test_pack_LPSHELLDETAILS();
|
|
|
|
test_pack_LPSHELLEXECUTEINFOA();
|
|
|
|
test_pack_LPSHELLEXECUTEINFOW();
|
|
|
|
test_pack_LPSHELLFLAGSTATE();
|
|
|
|
test_pack_LPSHELLSTATE();
|
|
|
|
test_pack_LPSHFILEOPSTRUCTA();
|
|
|
|
test_pack_LPSHFILEOPSTRUCTW();
|
|
|
|
test_pack_LPSHITEMID();
|
|
|
|
test_pack_LPSHNAMEMAPPINGA();
|
|
|
|
test_pack_LPSHNAMEMAPPINGW();
|
|
|
|
test_pack_LPSTRRET();
|
|
|
|
test_pack_LPTBINFO();
|
|
|
|
test_pack_NOTIFYICONDATAA();
|
|
|
|
test_pack_NOTIFYICONDATAW();
|
|
|
|
test_pack_OLECHAR();
|
|
|
|
test_pack_PAPPBARDATA();
|
|
|
|
test_pack_PBROWSEINFOA();
|
|
|
|
test_pack_PBROWSEINFOW();
|
|
|
|
test_pack_PNOTIFYICONDATAA();
|
|
|
|
test_pack_PNOTIFYICONDATAW();
|
|
|
|
test_pack_PRINTEROP_FLAGS();
|
|
|
|
test_pack_PROPID();
|
|
|
|
test_pack_QCMINFO();
|
|
|
|
test_pack_QCMINFO_IDMAP();
|
|
|
|
test_pack_QCMINFO_IDMAP_PLACEMENT();
|
|
|
|
test_pack_RemHBITMAP();
|
|
|
|
test_pack_RemHENHMETAFILE();
|
|
|
|
test_pack_RemHGLOBAL();
|
|
|
|
test_pack_RemHMETAFILEPICT();
|
|
|
|
test_pack_RemHPALETTE();
|
|
|
|
test_pack_SCODE();
|
2010-07-05 23:00:52 +00:00
|
|
|
test_pack_SFV_CREATE();
|
2007-03-06 11:59:18 +00:00
|
|
|
test_pack_SHChangeDWORDAsIDList();
|
|
|
|
test_pack_SHChangeNotifyEntry();
|
|
|
|
test_pack_SHChangeProductKeyAsIDList();
|
|
|
|
test_pack_SHDESCRIPTIONID();
|
|
|
|
test_pack_SHELLDETAILS();
|
|
|
|
test_pack_SHELLEXECUTEINFOA();
|
|
|
|
test_pack_SHELLEXECUTEINFOW();
|
|
|
|
test_pack_SHELLFLAGSTATE();
|
|
|
|
test_pack_SHELLSTATE();
|
|
|
|
test_pack_SHFILEINFOA();
|
|
|
|
test_pack_SHFILEINFOW();
|
|
|
|
test_pack_SHFILEOPSTRUCTA();
|
|
|
|
test_pack_SHFILEOPSTRUCTW();
|
|
|
|
test_pack_SHITEMID();
|
|
|
|
test_pack_SHNAMEMAPPINGA();
|
|
|
|
test_pack_SHNAMEMAPPINGW();
|
|
|
|
test_pack_STRRET();
|
|
|
|
test_pack_TBINFO();
|
|
|
|
test_pack_UP_BYTE_BLOB();
|
|
|
|
test_pack_UP_FLAGGED_BYTE_BLOB();
|
|
|
|
test_pack_UP_FLAGGED_WORD_BLOB();
|
|
|
|
test_pack_VARIANT_BOOL();
|
|
|
|
test_pack_VARTYPE();
|
|
|
|
test_pack_WORD_SIZEDARR();
|
|
|
|
test_pack_remoteMETAFILEPICT();
|
|
|
|
test_pack_userBITMAP();
|
|
|
|
test_pack_userCLIPFORMAT();
|
|
|
|
test_pack_userHBITMAP();
|
|
|
|
test_pack_userHENHMETAFILE();
|
|
|
|
test_pack_userHGLOBAL();
|
|
|
|
test_pack_userHMETAFILE();
|
|
|
|
test_pack_userHMETAFILEPICT();
|
|
|
|
test_pack_userHPALETTE();
|
|
|
|
test_pack_wireBSTR();
|
|
|
|
test_pack_wireCLIPFORMAT();
|
|
|
|
test_pack_wireHBITMAP();
|
|
|
|
test_pack_wireHENHMETAFILE();
|
|
|
|
test_pack_wireHGLOBAL();
|
|
|
|
test_pack_wireHMETAFILE();
|
|
|
|
test_pack_wireHMETAFILEPICT();
|
|
|
|
test_pack_wireHPALETTE();
|
|
|
|
}
|
|
|
|
|
|
|
|
START_TEST(generated)
|
|
|
|
{
|
|
|
|
test_pack();
|
|
|
|
}
|