ReactOS 0.4.15-dev-7842-g558ab78
generated.c
Go to the documentation of this file.
1/* File generated automatically from tools/winapi/tests.dat; do not edit! */
2/* This file can be copied, modified and distributed without restriction. */
3
4/*
5 * Unit tests for data structure packing
6 */
7
8#define WINE_NOWINSOCK
9
10#include <stdarg.h>
11#include "windef.h"
12#include "winbase.h"
13#include "wtypes.h"
14#include "shellapi.h"
15#include "winuser.h"
16#include "wingdi.h"
17#include "shlobj.h"
18
19#include "wine/test.h"
20
21/***********************************************************************
22 * Compatibility macros
23 */
24
25#define DWORD_PTR UINT_PTR
26#define LONG_PTR INT_PTR
27#define ULONG_PTR UINT_PTR
28
29/***********************************************************************
30 * Windows API extension
31 */
32
33#if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
34# define _TYPE_ALIGNMENT(type) __alignof(type)
35#elif defined(__GNUC__)
36# define _TYPE_ALIGNMENT(type) __alignof__(type)
37#else
38/*
39 * FIXME: May not be possible without a compiler extension
40 * (if type is not just a name that is, otherwise the normal
41 * TYPE_ALIGNMENT can be used)
42 */
43#endif
44
45#if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
46#pragma warning(disable:4116)
47#endif
48
49#if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
50# define TYPE_ALIGNMENT _TYPE_ALIGNMENT
51#endif
52
53/***********************************************************************
54 * Test helper macros
55 */
56
57#define TEST_TYPE_SIZE(type, size) C_ASSERT(sizeof(type) == size);
58
59#ifdef TYPE_ALIGNMENT
60# define TEST_TYPE_ALIGN(type, align) C_ASSERT(TYPE_ALIGNMENT(type) == align);
61#else
62# define TEST_TYPE_ALIGN(type, align)
63#endif
64
65#ifdef _TYPE_ALIGNMENT
66# define TEST_TARGET_ALIGN(type, align) C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
67# define TEST_FIELD_ALIGN(type, field, align) C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
68#else
69# define TEST_TARGET_ALIGN(type, align)
70# define TEST_FIELD_ALIGN(type, field, align)
71#endif
72
73#define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
74
75#define TEST_TARGET_SIZE(type, size) TEST_TYPE_SIZE(*(type)0, size)
76#define TEST_FIELD_SIZE(type, field, size) TEST_TYPE_SIZE((((type*)0)->field), size)
77#define TEST_TYPE_SIGNED(type) C_ASSERT((type) -1 < 0);
78#define TEST_TYPE_UNSIGNED(type) C_ASSERT((type) -1 > 0);
79
80
81#ifdef _WIN64
82
83static void test_pack_BLOB(void)
84{
85 /* BLOB */
88 TEST_FIELD_SIZE (BLOB, cbSize, 4)
89 TEST_FIELD_ALIGN (BLOB, cbSize, 4)
90 TEST_FIELD_OFFSET(BLOB, cbSize, 0)
91 TEST_FIELD_SIZE (BLOB, pBlobData, 8)
92 TEST_FIELD_ALIGN (BLOB, pBlobData, 8)
93 TEST_FIELD_OFFSET(BLOB, pBlobData, 8)
94}
95
96static void test_pack_BSTR(void)
97{
98 /* BSTR */
103}
104
105static void test_pack_BSTRBLOB(void)
106{
107 /* BSTRBLOB */
108 TEST_TYPE_SIZE (BSTRBLOB, 16)
109 TEST_TYPE_ALIGN (BSTRBLOB, 8)
110 TEST_FIELD_SIZE (BSTRBLOB, cbSize, 4)
111 TEST_FIELD_ALIGN (BSTRBLOB, cbSize, 4)
112 TEST_FIELD_OFFSET(BSTRBLOB, cbSize, 0)
113 TEST_FIELD_SIZE (BSTRBLOB, pData, 8)
114 TEST_FIELD_ALIGN (BSTRBLOB, pData, 8)
115 TEST_FIELD_OFFSET(BSTRBLOB, pData, 8)
116}
117
118static void test_pack_BYTE_BLOB(void)
119{
120 /* BYTE_BLOB */
121 TEST_TYPE_SIZE (BYTE_BLOB, 8)
122 TEST_TYPE_ALIGN (BYTE_BLOB, 4)
123 TEST_FIELD_SIZE (BYTE_BLOB, clSize, 4)
124 TEST_FIELD_ALIGN (BYTE_BLOB, clSize, 4)
125 TEST_FIELD_OFFSET(BYTE_BLOB, clSize, 0)
126 TEST_FIELD_SIZE (BYTE_BLOB, abData, 1)
127 TEST_FIELD_ALIGN (BYTE_BLOB, abData, 1)
128 TEST_FIELD_OFFSET(BYTE_BLOB, abData, 4)
129}
130
131static void test_pack_BYTE_SIZEDARR(void)
132{
133 /* BYTE_SIZEDARR */
134 TEST_TYPE_SIZE (BYTE_SIZEDARR, 16)
135 TEST_TYPE_ALIGN (BYTE_SIZEDARR, 8)
136 TEST_FIELD_SIZE (BYTE_SIZEDARR, clSize, 4)
137 TEST_FIELD_ALIGN (BYTE_SIZEDARR, clSize, 4)
138 TEST_FIELD_OFFSET(BYTE_SIZEDARR, clSize, 0)
139 TEST_FIELD_SIZE (BYTE_SIZEDARR, pData, 8)
140 TEST_FIELD_ALIGN (BYTE_SIZEDARR, pData, 8)
141 TEST_FIELD_OFFSET(BYTE_SIZEDARR, pData, 8)
142}
143
144static void test_pack_CLIPDATA(void)
145{
146 /* CLIPDATA */
147 TEST_TYPE_SIZE (CLIPDATA, 16)
148 TEST_TYPE_ALIGN (CLIPDATA, 8)
149 TEST_FIELD_SIZE (CLIPDATA, cbSize, 4)
150 TEST_FIELD_ALIGN (CLIPDATA, cbSize, 4)
151 TEST_FIELD_OFFSET(CLIPDATA, cbSize, 0)
152 TEST_FIELD_SIZE (CLIPDATA, ulClipFmt, 4)
153 TEST_FIELD_ALIGN (CLIPDATA, ulClipFmt, 4)
154 TEST_FIELD_OFFSET(CLIPDATA, ulClipFmt, 4)
155 TEST_FIELD_SIZE (CLIPDATA, pClipData, 8)
156 TEST_FIELD_ALIGN (CLIPDATA, pClipData, 8)
157 TEST_FIELD_OFFSET(CLIPDATA, pClipData, 8)
158}
159
160static void test_pack_CLIPFORMAT(void)
161{
162 /* CLIPFORMAT */
163 TEST_TYPE_SIZE (CLIPFORMAT, 2)
164 TEST_TYPE_ALIGN (CLIPFORMAT, 2)
165 TEST_TYPE_UNSIGNED(CLIPFORMAT)
166}
167
168static void test_pack_COAUTHIDENTITY(void)
169{
170 /* COAUTHIDENTITY */
171 TEST_TYPE_SIZE (COAUTHIDENTITY, 48)
172 TEST_TYPE_ALIGN (COAUTHIDENTITY, 8)
173 TEST_FIELD_SIZE (COAUTHIDENTITY, User, 8)
174 TEST_FIELD_ALIGN (COAUTHIDENTITY, User, 8)
175 TEST_FIELD_OFFSET(COAUTHIDENTITY, User, 0)
176 TEST_FIELD_SIZE (COAUTHIDENTITY, UserLength, 4)
177 TEST_FIELD_ALIGN (COAUTHIDENTITY, UserLength, 4)
178 TEST_FIELD_OFFSET(COAUTHIDENTITY, UserLength, 8)
179 TEST_FIELD_SIZE (COAUTHIDENTITY, Domain, 8)
180 TEST_FIELD_ALIGN (COAUTHIDENTITY, Domain, 8)
181 TEST_FIELD_OFFSET(COAUTHIDENTITY, Domain, 16)
182 TEST_FIELD_SIZE (COAUTHIDENTITY, DomainLength, 4)
183 TEST_FIELD_ALIGN (COAUTHIDENTITY, DomainLength, 4)
184 TEST_FIELD_OFFSET(COAUTHIDENTITY, DomainLength, 24)
185 TEST_FIELD_SIZE (COAUTHIDENTITY, Password, 8)
186 TEST_FIELD_ALIGN (COAUTHIDENTITY, Password, 8)
187 TEST_FIELD_OFFSET(COAUTHIDENTITY, Password, 32)
188 TEST_FIELD_SIZE (COAUTHIDENTITY, PasswordLength, 4)
189 TEST_FIELD_ALIGN (COAUTHIDENTITY, PasswordLength, 4)
190 TEST_FIELD_OFFSET(COAUTHIDENTITY, PasswordLength, 40)
191 TEST_FIELD_SIZE (COAUTHIDENTITY, Flags, 4)
192 TEST_FIELD_ALIGN (COAUTHIDENTITY, Flags, 4)
193 TEST_FIELD_OFFSET(COAUTHIDENTITY, Flags, 44)
194}
195
196static void test_pack_COAUTHINFO(void)
197{
198 /* COAUTHINFO */
199 TEST_TYPE_SIZE (COAUTHINFO, 40)
200 TEST_TYPE_ALIGN (COAUTHINFO, 8)
201 TEST_FIELD_SIZE (COAUTHINFO, dwAuthnSvc, 4)
202 TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnSvc, 4)
203 TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnSvc, 0)
204 TEST_FIELD_SIZE (COAUTHINFO, dwAuthzSvc, 4)
205 TEST_FIELD_ALIGN (COAUTHINFO, dwAuthzSvc, 4)
206 TEST_FIELD_OFFSET(COAUTHINFO, dwAuthzSvc, 4)
207 TEST_FIELD_SIZE (COAUTHINFO, pwszServerPrincName, 8)
208 TEST_FIELD_ALIGN (COAUTHINFO, pwszServerPrincName, 8)
209 TEST_FIELD_OFFSET(COAUTHINFO, pwszServerPrincName, 8)
210 TEST_FIELD_SIZE (COAUTHINFO, dwAuthnLevel, 4)
211 TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnLevel, 4)
212 TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnLevel, 16)
213 TEST_FIELD_SIZE (COAUTHINFO, dwImpersonationLevel, 4)
214 TEST_FIELD_ALIGN (COAUTHINFO, dwImpersonationLevel, 4)
215 TEST_FIELD_OFFSET(COAUTHINFO, dwImpersonationLevel, 20)
216 TEST_FIELD_SIZE (COAUTHINFO, pAuthIdentityData, 8)
217 TEST_FIELD_ALIGN (COAUTHINFO, pAuthIdentityData, 8)
218 TEST_FIELD_OFFSET(COAUTHINFO, pAuthIdentityData, 24)
219 TEST_FIELD_SIZE (COAUTHINFO, dwCapabilities, 4)
220 TEST_FIELD_ALIGN (COAUTHINFO, dwCapabilities, 4)
221 TEST_FIELD_OFFSET(COAUTHINFO, dwCapabilities, 32)
222}
223
224static void test_pack_DATE(void)
225{
226 /* DATE */
229}
230
231static void test_pack_DOUBLE(void)
232{
233 /* DOUBLE */
236}
237
238static void test_pack_DWORD_SIZEDARR(void)
239{
240 /* DWORD_SIZEDARR */
241 TEST_TYPE_SIZE (DWORD_SIZEDARR, 16)
242 TEST_TYPE_ALIGN (DWORD_SIZEDARR, 8)
243 TEST_FIELD_SIZE (DWORD_SIZEDARR, clSize, 4)
244 TEST_FIELD_ALIGN (DWORD_SIZEDARR, clSize, 4)
245 TEST_FIELD_OFFSET(DWORD_SIZEDARR, clSize, 0)
246 TEST_FIELD_SIZE (DWORD_SIZEDARR, pData, 8)
247 TEST_FIELD_ALIGN (DWORD_SIZEDARR, pData, 8)
248 TEST_FIELD_OFFSET(DWORD_SIZEDARR, pData, 8)
249}
250
251static void test_pack_FLAGGED_BYTE_BLOB(void)
252{
253 /* FLAGGED_BYTE_BLOB */
254 TEST_TYPE_SIZE (FLAGGED_BYTE_BLOB, 12)
255 TEST_TYPE_ALIGN (FLAGGED_BYTE_BLOB, 4)
256 TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, fFlags, 4)
257 TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, fFlags, 4)
258 TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, fFlags, 0)
259 TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, clSize, 4)
260 TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, clSize, 4)
261 TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, clSize, 4)
262 TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, abData, 1)
263 TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, abData, 1)
264 TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, abData, 8)
265}
266
267static void test_pack_FLAGGED_WORD_BLOB(void)
268{
269 /* FLAGGED_WORD_BLOB */
270 TEST_TYPE_SIZE (FLAGGED_WORD_BLOB, 12)
271 TEST_TYPE_ALIGN (FLAGGED_WORD_BLOB, 4)
272 TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, fFlags, 4)
273 TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, fFlags, 4)
274 TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, fFlags, 0)
275 TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, clSize, 4)
276 TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, clSize, 4)
277 TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, clSize, 4)
278 TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, asData, 2)
279 TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, asData, 2)
280 TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, asData, 8)
281}
282
283static void test_pack_HMETAFILEPICT(void)
284{
285 /* HMETAFILEPICT */
286 TEST_TYPE_SIZE (HMETAFILEPICT, 8)
287 TEST_TYPE_ALIGN (HMETAFILEPICT, 8)
288}
289
290static void test_pack_HYPER_SIZEDARR(void)
291{
292 /* HYPER_SIZEDARR */
293 TEST_TYPE_SIZE (HYPER_SIZEDARR, 16)
294 TEST_TYPE_ALIGN (HYPER_SIZEDARR, 8)
295 TEST_FIELD_SIZE (HYPER_SIZEDARR, clSize, 4)
296 TEST_FIELD_ALIGN (HYPER_SIZEDARR, clSize, 4)
297 TEST_FIELD_OFFSET(HYPER_SIZEDARR, clSize, 0)
298 TEST_FIELD_SIZE (HYPER_SIZEDARR, pData, 8)
299 TEST_FIELD_ALIGN (HYPER_SIZEDARR, pData, 8)
300 TEST_FIELD_OFFSET(HYPER_SIZEDARR, pData, 8)
301}
302
303static void test_pack_LPBLOB(void)
304{
305 /* LPBLOB */
308}
309
310static void test_pack_LPBSTR(void)
311{
312 /* LPBSTR */
313 TEST_TYPE_SIZE (LPBSTR, 8)
314 TEST_TYPE_ALIGN (LPBSTR, 8)
315 TEST_TARGET_SIZE (LPBSTR, 8)
316 TEST_TARGET_ALIGN(LPBSTR, 8)
317}
318
319static void test_pack_LPBSTRBLOB(void)
320{
321 /* LPBSTRBLOB */
322 TEST_TYPE_SIZE (LPBSTRBLOB, 8)
323 TEST_TYPE_ALIGN (LPBSTRBLOB, 8)
324}
325
326static void test_pack_LPCOLESTR(void)
327{
328 /* LPCOLESTR */
329 TEST_TYPE_SIZE (LPCOLESTR, 8)
330 TEST_TYPE_ALIGN (LPCOLESTR, 8)
331 TEST_TARGET_SIZE (LPCOLESTR, 2)
332 TEST_TARGET_ALIGN(LPCOLESTR, 2)
333}
334
335static void test_pack_LPCY(void)
336{
337 /* LPCY */
338 TEST_TYPE_SIZE (LPCY, 8)
339 TEST_TYPE_ALIGN (LPCY, 8)
340}
341
342static void test_pack_LPDECIMAL(void)
343{
344 /* LPDECIMAL */
345 TEST_TYPE_SIZE (LPDECIMAL, 8)
346 TEST_TYPE_ALIGN (LPDECIMAL, 8)
347}
348
349static void test_pack_LPOLESTR(void)
350{
351 /* LPOLESTR */
356}
357
358static void test_pack_OLECHAR(void)
359{
360 /* OLECHAR */
363}
364
365static void test_pack_PROPID(void)
366{
367 /* PROPID */
370}
371
372static void test_pack_RemHBITMAP(void)
373{
374 /* RemHBITMAP */
375 TEST_TYPE_SIZE (RemHBITMAP, 8)
376 TEST_TYPE_ALIGN (RemHBITMAP, 4)
377 TEST_FIELD_SIZE (RemHBITMAP, cbData, 4)
378 TEST_FIELD_ALIGN (RemHBITMAP, cbData, 4)
379 TEST_FIELD_OFFSET(RemHBITMAP, cbData, 0)
380 TEST_FIELD_SIZE (RemHBITMAP, data, 1)
381 TEST_FIELD_ALIGN (RemHBITMAP, data, 1)
382 TEST_FIELD_OFFSET(RemHBITMAP, data, 4)
383}
384
385static void test_pack_RemHENHMETAFILE(void)
386{
387 /* RemHENHMETAFILE */
388 TEST_TYPE_SIZE (RemHENHMETAFILE, 8)
389 TEST_TYPE_ALIGN (RemHENHMETAFILE, 4)
390 TEST_FIELD_SIZE (RemHENHMETAFILE, cbData, 4)
391 TEST_FIELD_ALIGN (RemHENHMETAFILE, cbData, 4)
392 TEST_FIELD_OFFSET(RemHENHMETAFILE, cbData, 0)
393 TEST_FIELD_SIZE (RemHENHMETAFILE, data, 1)
394 TEST_FIELD_ALIGN (RemHENHMETAFILE, data, 1)
395 TEST_FIELD_OFFSET(RemHENHMETAFILE, data, 4)
396}
397
398static void test_pack_RemHGLOBAL(void)
399{
400 /* RemHGLOBAL */
401 TEST_TYPE_SIZE (RemHGLOBAL, 12)
402 TEST_TYPE_ALIGN (RemHGLOBAL, 4)
403 TEST_FIELD_SIZE (RemHGLOBAL, fNullHGlobal, 4)
404 TEST_FIELD_ALIGN (RemHGLOBAL, fNullHGlobal, 4)
405 TEST_FIELD_OFFSET(RemHGLOBAL, fNullHGlobal, 0)
406 TEST_FIELD_SIZE (RemHGLOBAL, cbData, 4)
407 TEST_FIELD_ALIGN (RemHGLOBAL, cbData, 4)
408 TEST_FIELD_OFFSET(RemHGLOBAL, cbData, 4)
409 TEST_FIELD_SIZE (RemHGLOBAL, data, 1)
410 TEST_FIELD_ALIGN (RemHGLOBAL, data, 1)
411 TEST_FIELD_OFFSET(RemHGLOBAL, data, 8)
412}
413
414static void test_pack_RemHMETAFILEPICT(void)
415{
416 /* RemHMETAFILEPICT */
417 TEST_TYPE_SIZE (RemHMETAFILEPICT, 20)
418 TEST_TYPE_ALIGN (RemHMETAFILEPICT, 4)
419 TEST_FIELD_SIZE (RemHMETAFILEPICT, mm, 4)
420 TEST_FIELD_ALIGN (RemHMETAFILEPICT, mm, 4)
421 TEST_FIELD_OFFSET(RemHMETAFILEPICT, mm, 0)
422 TEST_FIELD_SIZE (RemHMETAFILEPICT, xExt, 4)
423 TEST_FIELD_ALIGN (RemHMETAFILEPICT, xExt, 4)
424 TEST_FIELD_OFFSET(RemHMETAFILEPICT, xExt, 4)
425 TEST_FIELD_SIZE (RemHMETAFILEPICT, yExt, 4)
426 TEST_FIELD_ALIGN (RemHMETAFILEPICT, yExt, 4)
427 TEST_FIELD_OFFSET(RemHMETAFILEPICT, yExt, 8)
428 TEST_FIELD_SIZE (RemHMETAFILEPICT, cbData, 4)
429 TEST_FIELD_ALIGN (RemHMETAFILEPICT, cbData, 4)
430 TEST_FIELD_OFFSET(RemHMETAFILEPICT, cbData, 12)
431 TEST_FIELD_SIZE (RemHMETAFILEPICT, data, 1)
432 TEST_FIELD_ALIGN (RemHMETAFILEPICT, data, 1)
433 TEST_FIELD_OFFSET(RemHMETAFILEPICT, data, 16)
434}
435
436static void test_pack_RemHPALETTE(void)
437{
438 /* RemHPALETTE */
439 TEST_TYPE_SIZE (RemHPALETTE, 8)
440 TEST_TYPE_ALIGN (RemHPALETTE, 4)
441 TEST_FIELD_SIZE (RemHPALETTE, cbData, 4)
442 TEST_FIELD_ALIGN (RemHPALETTE, cbData, 4)
443 TEST_FIELD_OFFSET(RemHPALETTE, cbData, 0)
444 TEST_FIELD_SIZE (RemHPALETTE, data, 1)
445 TEST_FIELD_ALIGN (RemHPALETTE, data, 1)
446 TEST_FIELD_OFFSET(RemHPALETTE, data, 4)
447}
448
449static void test_pack_SCODE(void)
450{
451 /* SCODE */
454}
455
456static void test_pack_UP_BYTE_BLOB(void)
457{
458 /* UP_BYTE_BLOB */
459 TEST_TYPE_SIZE (UP_BYTE_BLOB, 8)
460 TEST_TYPE_ALIGN (UP_BYTE_BLOB, 8)
461 TEST_TARGET_SIZE (UP_BYTE_BLOB, 8)
462 TEST_TARGET_ALIGN(UP_BYTE_BLOB, 4)
463}
464
465static void test_pack_UP_FLAGGED_BYTE_BLOB(void)
466{
467 /* UP_FLAGGED_BYTE_BLOB */
468 TEST_TYPE_SIZE (UP_FLAGGED_BYTE_BLOB, 8)
469 TEST_TYPE_ALIGN (UP_FLAGGED_BYTE_BLOB, 8)
470 TEST_TARGET_SIZE (UP_FLAGGED_BYTE_BLOB, 12)
471 TEST_TARGET_ALIGN(UP_FLAGGED_BYTE_BLOB, 4)
472}
473
474static void test_pack_UP_FLAGGED_WORD_BLOB(void)
475{
476 /* UP_FLAGGED_WORD_BLOB */
477 TEST_TYPE_SIZE (UP_FLAGGED_WORD_BLOB, 8)
478 TEST_TYPE_ALIGN (UP_FLAGGED_WORD_BLOB, 8)
479 TEST_TARGET_SIZE (UP_FLAGGED_WORD_BLOB, 12)
480 TEST_TARGET_ALIGN(UP_FLAGGED_WORD_BLOB, 4)
481}
482
483static void test_pack_VARIANT_BOOL(void)
484{
485 /* VARIANT_BOOL */
489}
490
491static void test_pack_VARTYPE(void)
492{
493 /* VARTYPE */
497}
498
499static void test_pack_WORD_SIZEDARR(void)
500{
501 /* WORD_SIZEDARR */
502 TEST_TYPE_SIZE (WORD_SIZEDARR, 16)
503 TEST_TYPE_ALIGN (WORD_SIZEDARR, 8)
504 TEST_FIELD_SIZE (WORD_SIZEDARR, clSize, 4)
505 TEST_FIELD_ALIGN (WORD_SIZEDARR, clSize, 4)
506 TEST_FIELD_OFFSET(WORD_SIZEDARR, clSize, 0)
507 TEST_FIELD_SIZE (WORD_SIZEDARR, pData, 8)
508 TEST_FIELD_ALIGN (WORD_SIZEDARR, pData, 8)
509 TEST_FIELD_OFFSET(WORD_SIZEDARR, pData, 8)
510}
511
512static void test_pack_remoteMETAFILEPICT(void)
513{
514 /* remoteMETAFILEPICT */
515 TEST_TYPE_SIZE (remoteMETAFILEPICT, 24)
516 TEST_TYPE_ALIGN (remoteMETAFILEPICT, 8)
517 TEST_FIELD_SIZE (remoteMETAFILEPICT, mm, 4)
518 TEST_FIELD_ALIGN (remoteMETAFILEPICT, mm, 4)
519 TEST_FIELD_OFFSET(remoteMETAFILEPICT, mm, 0)
520 TEST_FIELD_SIZE (remoteMETAFILEPICT, xExt, 4)
521 TEST_FIELD_ALIGN (remoteMETAFILEPICT, xExt, 4)
522 TEST_FIELD_OFFSET(remoteMETAFILEPICT, xExt, 4)
523 TEST_FIELD_SIZE (remoteMETAFILEPICT, yExt, 4)
524 TEST_FIELD_ALIGN (remoteMETAFILEPICT, yExt, 4)
525 TEST_FIELD_OFFSET(remoteMETAFILEPICT, yExt, 8)
526 TEST_FIELD_SIZE (remoteMETAFILEPICT, hMF, 8)
527 TEST_FIELD_ALIGN (remoteMETAFILEPICT, hMF, 8)
528 TEST_FIELD_OFFSET(remoteMETAFILEPICT, hMF, 16)
529}
530
531static void test_pack_userBITMAP(void)
532{
533 /* userBITMAP */
534 TEST_TYPE_SIZE (userBITMAP, 28)
535 TEST_TYPE_ALIGN (userBITMAP, 4)
536 TEST_FIELD_SIZE (userBITMAP, bmType, 4)
537 TEST_FIELD_ALIGN (userBITMAP, bmType, 4)
538 TEST_FIELD_OFFSET(userBITMAP, bmType, 0)
539 TEST_FIELD_SIZE (userBITMAP, bmWidth, 4)
540 TEST_FIELD_ALIGN (userBITMAP, bmWidth, 4)
541 TEST_FIELD_OFFSET(userBITMAP, bmWidth, 4)
542 TEST_FIELD_SIZE (userBITMAP, bmHeight, 4)
543 TEST_FIELD_ALIGN (userBITMAP, bmHeight, 4)
544 TEST_FIELD_OFFSET(userBITMAP, bmHeight, 8)
545 TEST_FIELD_SIZE (userBITMAP, bmWidthBytes, 4)
546 TEST_FIELD_ALIGN (userBITMAP, bmWidthBytes, 4)
547 TEST_FIELD_OFFSET(userBITMAP, bmWidthBytes, 12)
548 TEST_FIELD_SIZE (userBITMAP, bmPlanes, 2)
549 TEST_FIELD_ALIGN (userBITMAP, bmPlanes, 2)
550 TEST_FIELD_OFFSET(userBITMAP, bmPlanes, 16)
551 TEST_FIELD_SIZE (userBITMAP, bmBitsPixel, 2)
552 TEST_FIELD_ALIGN (userBITMAP, bmBitsPixel, 2)
553 TEST_FIELD_OFFSET(userBITMAP, bmBitsPixel, 18)
554 TEST_FIELD_SIZE (userBITMAP, cbSize, 4)
555 TEST_FIELD_ALIGN (userBITMAP, cbSize, 4)
556 TEST_FIELD_OFFSET(userBITMAP, cbSize, 20)
557 TEST_FIELD_SIZE (userBITMAP, pBuffer, 1)
558 TEST_FIELD_ALIGN (userBITMAP, pBuffer, 1)
559 TEST_FIELD_OFFSET(userBITMAP, pBuffer, 24)
560}
561
562static void test_pack_userCLIPFORMAT(void)
563{
564 /* userCLIPFORMAT */
565 TEST_FIELD_SIZE (userCLIPFORMAT, fContext, 4)
566 TEST_FIELD_ALIGN (userCLIPFORMAT, fContext, 4)
567 TEST_FIELD_OFFSET(userCLIPFORMAT, fContext, 0)
568}
569
570static void test_pack_userHBITMAP(void)
571{
572 /* userHBITMAP */
573 TEST_FIELD_SIZE (userHBITMAP, fContext, 4)
574 TEST_FIELD_ALIGN (userHBITMAP, fContext, 4)
575 TEST_FIELD_OFFSET(userHBITMAP, fContext, 0)
576}
577
578static void test_pack_userHENHMETAFILE(void)
579{
580 /* userHENHMETAFILE */
581 TEST_FIELD_SIZE (userHENHMETAFILE, fContext, 4)
582 TEST_FIELD_ALIGN (userHENHMETAFILE, fContext, 4)
583 TEST_FIELD_OFFSET(userHENHMETAFILE, fContext, 0)
584}
585
586static void test_pack_userHGLOBAL(void)
587{
588 /* userHGLOBAL */
589 TEST_FIELD_SIZE (userHGLOBAL, fContext, 4)
590 TEST_FIELD_ALIGN (userHGLOBAL, fContext, 4)
591 TEST_FIELD_OFFSET(userHGLOBAL, fContext, 0)
592}
593
594static void test_pack_userHMETAFILE(void)
595{
596 /* userHMETAFILE */
597 TEST_FIELD_SIZE (userHMETAFILE, fContext, 4)
598 TEST_FIELD_ALIGN (userHMETAFILE, fContext, 4)
599 TEST_FIELD_OFFSET(userHMETAFILE, fContext, 0)
600}
601
602static void test_pack_userHMETAFILEPICT(void)
603{
604 /* userHMETAFILEPICT */
605 TEST_FIELD_SIZE (userHMETAFILEPICT, fContext, 4)
606 TEST_FIELD_ALIGN (userHMETAFILEPICT, fContext, 4)
607 TEST_FIELD_OFFSET(userHMETAFILEPICT, fContext, 0)
608}
609
610static void test_pack_userHPALETTE(void)
611{
612 /* userHPALETTE */
613 TEST_FIELD_SIZE (userHPALETTE, fContext, 4)
614 TEST_FIELD_ALIGN (userHPALETTE, fContext, 4)
615 TEST_FIELD_OFFSET(userHPALETTE, fContext, 0)
616}
617
618static void test_pack_wireBSTR(void)
619{
620 /* wireBSTR */
621 TEST_TYPE_SIZE (wireBSTR, 8)
622 TEST_TYPE_ALIGN (wireBSTR, 8)
623 TEST_TARGET_SIZE (wireBSTR, 12)
624 TEST_TARGET_ALIGN(wireBSTR, 4)
625}
626
627static void test_pack_wireCLIPFORMAT(void)
628{
629 /* wireCLIPFORMAT */
630 TEST_TYPE_SIZE (wireCLIPFORMAT, 8)
631 TEST_TYPE_ALIGN (wireCLIPFORMAT, 8)
632}
633
634static void test_pack_wireHBITMAP(void)
635{
636 /* wireHBITMAP */
637 TEST_TYPE_SIZE (wireHBITMAP, 8)
638 TEST_TYPE_ALIGN (wireHBITMAP, 8)
639}
640
641static void test_pack_wireHENHMETAFILE(void)
642{
643 /* wireHENHMETAFILE */
644 TEST_TYPE_SIZE (wireHENHMETAFILE, 8)
645 TEST_TYPE_ALIGN (wireHENHMETAFILE, 8)
646}
647
648static void test_pack_wireHGLOBAL(void)
649{
650 /* wireHGLOBAL */
651 TEST_TYPE_SIZE (wireHGLOBAL, 8)
652 TEST_TYPE_ALIGN (wireHGLOBAL, 8)
653}
654
655static void test_pack_wireHMETAFILE(void)
656{
657 /* wireHMETAFILE */
658 TEST_TYPE_SIZE (wireHMETAFILE, 8)
659 TEST_TYPE_ALIGN (wireHMETAFILE, 8)
660}
661
662static void test_pack_wireHMETAFILEPICT(void)
663{
664 /* wireHMETAFILEPICT */
665 TEST_TYPE_SIZE (wireHMETAFILEPICT, 8)
666 TEST_TYPE_ALIGN (wireHMETAFILEPICT, 8)
667}
668
669static void test_pack_wireHPALETTE(void)
670{
671 /* wireHPALETTE */
672 TEST_TYPE_SIZE (wireHPALETTE, 8)
673 TEST_TYPE_ALIGN (wireHPALETTE, 8)
674}
675
676static void test_pack_CLSID(void)
677{
678 /* CLSID */
681}
682
683static void test_pack_FMTID(void)
684{
685 /* FMTID */
688}
689
690static void test_pack_IID(void)
691{
692 /* IID */
693 TEST_TYPE_SIZE (IID, 16)
695}
696
697static void test_pack_APPBARDATA(void)
698{
699 /* APPBARDATA */
702 TEST_FIELD_SIZE (APPBARDATA, cbSize, 4)
703 TEST_FIELD_ALIGN (APPBARDATA, cbSize, 4)
704 TEST_FIELD_OFFSET(APPBARDATA, cbSize, 0)
708 TEST_FIELD_SIZE (APPBARDATA, uCallbackMessage, 4)
709 TEST_FIELD_ALIGN (APPBARDATA, uCallbackMessage, 4)
710 TEST_FIELD_OFFSET(APPBARDATA, uCallbackMessage, 16)
711 TEST_FIELD_SIZE (APPBARDATA, uEdge, 4)
712 TEST_FIELD_ALIGN (APPBARDATA, uEdge, 4)
713 TEST_FIELD_OFFSET(APPBARDATA, uEdge, 20)
720}
721
722static void test_pack_DRAGINFOA(void)
723{
724 /* DRAGINFOA */
725 TEST_TYPE_SIZE (DRAGINFOA, 32)
726 TEST_TYPE_ALIGN (DRAGINFOA, 8)
727 TEST_FIELD_SIZE (DRAGINFOA, uSize, 4)
728 TEST_FIELD_ALIGN (DRAGINFOA, uSize, 4)
729 TEST_FIELD_OFFSET(DRAGINFOA, uSize, 0)
730 TEST_FIELD_SIZE (DRAGINFOA, pt, 8)
731 TEST_FIELD_ALIGN (DRAGINFOA, pt, 4)
732 TEST_FIELD_OFFSET(DRAGINFOA, pt, 4)
733 TEST_FIELD_SIZE (DRAGINFOA, fNC, 4)
734 TEST_FIELD_ALIGN (DRAGINFOA, fNC, 4)
735 TEST_FIELD_OFFSET(DRAGINFOA, fNC, 12)
736 TEST_FIELD_SIZE (DRAGINFOA, lpFileList, 8)
737 TEST_FIELD_ALIGN (DRAGINFOA, lpFileList, 8)
738 TEST_FIELD_OFFSET(DRAGINFOA, lpFileList, 16)
739 TEST_FIELD_SIZE (DRAGINFOA, grfKeyState, 4)
740 TEST_FIELD_ALIGN (DRAGINFOA, grfKeyState, 4)
741 TEST_FIELD_OFFSET(DRAGINFOA, grfKeyState, 24)
742}
743
744static void test_pack_DRAGINFOW(void)
745{
746 /* DRAGINFOW */
747 TEST_TYPE_SIZE (DRAGINFOW, 32)
748 TEST_TYPE_ALIGN (DRAGINFOW, 8)
749 TEST_FIELD_SIZE (DRAGINFOW, uSize, 4)
750 TEST_FIELD_ALIGN (DRAGINFOW, uSize, 4)
751 TEST_FIELD_OFFSET(DRAGINFOW, uSize, 0)
752 TEST_FIELD_SIZE (DRAGINFOW, pt, 8)
753 TEST_FIELD_ALIGN (DRAGINFOW, pt, 4)
754 TEST_FIELD_OFFSET(DRAGINFOW, pt, 4)
755 TEST_FIELD_SIZE (DRAGINFOW, fNC, 4)
756 TEST_FIELD_ALIGN (DRAGINFOW, fNC, 4)
757 TEST_FIELD_OFFSET(DRAGINFOW, fNC, 12)
758 TEST_FIELD_SIZE (DRAGINFOW, lpFileList, 8)
759 TEST_FIELD_ALIGN (DRAGINFOW, lpFileList, 8)
760 TEST_FIELD_OFFSET(DRAGINFOW, lpFileList, 16)
761 TEST_FIELD_SIZE (DRAGINFOW, grfKeyState, 4)
762 TEST_FIELD_ALIGN (DRAGINFOW, grfKeyState, 4)
763 TEST_FIELD_OFFSET(DRAGINFOW, grfKeyState, 24)
764}
765
766static void test_pack_FILEOP_FLAGS(void)
767{
768 /* FILEOP_FLAGS */
772}
773
774static void test_pack_LPDRAGINFOA(void)
775{
776 /* LPDRAGINFOA */
777 TEST_TYPE_SIZE (LPDRAGINFOA, 8)
778 TEST_TYPE_ALIGN (LPDRAGINFOA, 8)
779 TEST_TARGET_SIZE (LPDRAGINFOA, 32)
780 TEST_TARGET_ALIGN(LPDRAGINFOA, 8)
781}
782
783static void test_pack_LPDRAGINFOW(void)
784{
785 /* LPDRAGINFOW */
786 TEST_TYPE_SIZE (LPDRAGINFOW, 8)
787 TEST_TYPE_ALIGN (LPDRAGINFOW, 8)
788 TEST_TARGET_SIZE (LPDRAGINFOW, 32)
789 TEST_TARGET_ALIGN(LPDRAGINFOW, 8)
790}
791
792static void test_pack_LPSHELLEXECUTEINFOA(void)
793{
794 /* LPSHELLEXECUTEINFOA */
797}
798
799static void test_pack_LPSHELLEXECUTEINFOW(void)
800{
801 /* LPSHELLEXECUTEINFOW */
804}
805
806static void test_pack_LPSHFILEOPSTRUCTA(void)
807{
808 /* LPSHFILEOPSTRUCTA */
813}
814
815static void test_pack_LPSHFILEOPSTRUCTW(void)
816{
817 /* LPSHFILEOPSTRUCTW */
822}
823
824static void test_pack_LPSHNAMEMAPPINGA(void)
825{
826 /* LPSHNAMEMAPPINGA */
831}
832
833static void test_pack_LPSHNAMEMAPPINGW(void)
834{
835 /* LPSHNAMEMAPPINGW */
840}
841
842static void test_pack_NOTIFYICONDATAA(void)
843{
844 /* NOTIFYICONDATAA */
857 TEST_FIELD_SIZE (NOTIFYICONDATAA, uCallbackMessage, 4)
858 TEST_FIELD_ALIGN (NOTIFYICONDATAA, uCallbackMessage, 4)
859 TEST_FIELD_OFFSET(NOTIFYICONDATAA, uCallbackMessage, 24)
863 TEST_FIELD_SIZE (NOTIFYICONDATAA, szTip, 128)
866 TEST_FIELD_SIZE (NOTIFYICONDATAA, dwState, 4)
869 TEST_FIELD_SIZE (NOTIFYICONDATAA, dwStateMask, 4)
870 TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwStateMask, 4)
871 TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwStateMask, 172)
872 TEST_FIELD_SIZE (NOTIFYICONDATAA, szInfo, 256)
875}
876
877static void test_pack_NOTIFYICONDATAW(void)
878{
879 /* NOTIFYICONDATAW */
892 TEST_FIELD_SIZE (NOTIFYICONDATAW, uCallbackMessage, 4)
893 TEST_FIELD_ALIGN (NOTIFYICONDATAW, uCallbackMessage, 4)
894 TEST_FIELD_OFFSET(NOTIFYICONDATAW, uCallbackMessage, 24)
898 TEST_FIELD_SIZE (NOTIFYICONDATAW, szTip, 256)
901 TEST_FIELD_SIZE (NOTIFYICONDATAW, dwState, 4)
904 TEST_FIELD_SIZE (NOTIFYICONDATAW, dwStateMask, 4)
905 TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwStateMask, 4)
906 TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwStateMask, 300)
907 TEST_FIELD_SIZE (NOTIFYICONDATAW, szInfo, 512)
910}
911
912static void test_pack_PAPPBARDATA(void)
913{
914 /* PAPPBARDATA */
919}
920
921static void test_pack_PNOTIFYICONDATAA(void)
922{
923 /* PNOTIFYICONDATAA */
926}
927
928static void test_pack_PNOTIFYICONDATAW(void)
929{
930 /* PNOTIFYICONDATAW */
933}
934
935static void test_pack_PRINTEROP_FLAGS(void)
936{
937 /* PRINTEROP_FLAGS */
941}
942
943static void test_pack_SHELLEXECUTEINFOA(void)
944{
945 /* SHELLEXECUTEINFOA */
961 TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpParameters, 8)
962 TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpParameters, 8)
963 TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpParameters, 32)
979 TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hkeyClass, 8)
980 TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hkeyClass, 8)
985}
986
987static void test_pack_SHELLEXECUTEINFOW(void)
988{
989 /* SHELLEXECUTEINFOW */
1005 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpParameters, 8)
1006 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpParameters, 8)
1007 TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpParameters, 32)
1014 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hInstApp, 8)
1015 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hInstApp, 8)
1017 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpIDList, 8)
1018 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpIDList, 8)
1023 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hkeyClass, 8)
1024 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hkeyClass, 8)
1025 TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hkeyClass, 80)
1026 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, dwHotKey, 4)
1027 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, dwHotKey, 4)
1029}
1030
1031static void test_pack_SHFILEINFOA(void)
1032{
1033 /* SHFILEINFOA */
1039 TEST_FIELD_SIZE (SHFILEINFOA, iIcon, 4)
1040 TEST_FIELD_ALIGN (SHFILEINFOA, iIcon, 4)
1045 TEST_FIELD_SIZE (SHFILEINFOA, szDisplayName, 260)
1046 TEST_FIELD_ALIGN (SHFILEINFOA, szDisplayName, 1)
1047 TEST_FIELD_OFFSET(SHFILEINFOA, szDisplayName, 16)
1051}
1052
1053static void test_pack_SHFILEINFOW(void)
1054{
1055 /* SHFILEINFOW */
1061 TEST_FIELD_SIZE (SHFILEINFOW, iIcon, 4)
1062 TEST_FIELD_ALIGN (SHFILEINFOW, iIcon, 4)
1067 TEST_FIELD_SIZE (SHFILEINFOW, szDisplayName, 520)
1068 TEST_FIELD_ALIGN (SHFILEINFOW, szDisplayName, 2)
1069 TEST_FIELD_OFFSET(SHFILEINFOW, szDisplayName, 16)
1073}
1074
1075static void test_pack_SHFILEOPSTRUCTA(void)
1076{
1077 /* SHFILEOPSTRUCTA */
1092 TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fFlags, 2)
1095 TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
1096 TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
1097 TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fAnyOperationsAborted, 36)
1098 TEST_FIELD_SIZE (SHFILEOPSTRUCTA, hNameMappings, 8)
1099 TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hNameMappings, 8)
1100 TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hNameMappings, 40)
1101 TEST_FIELD_SIZE (SHFILEOPSTRUCTA, lpszProgressTitle, 8)
1102 TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, lpszProgressTitle, 8)
1103 TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, lpszProgressTitle, 48)
1104}
1105
1106static void test_pack_SHFILEOPSTRUCTW(void)
1107{
1108 /* SHFILEOPSTRUCTW */
1123 TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fFlags, 2)
1126 TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
1127 TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
1128 TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fAnyOperationsAborted, 36)
1129 TEST_FIELD_SIZE (SHFILEOPSTRUCTW, hNameMappings, 8)
1130 TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hNameMappings, 8)
1131 TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hNameMappings, 40)
1132 TEST_FIELD_SIZE (SHFILEOPSTRUCTW, lpszProgressTitle, 8)
1133 TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, lpszProgressTitle, 8)
1134 TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, lpszProgressTitle, 48)
1135}
1136
1137static void test_pack_SHNAMEMAPPINGA(void)
1138{
1139 /* SHNAMEMAPPINGA */
1142 TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszOldPath, 8)
1143 TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszOldPath, 8)
1144 TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszOldPath, 0)
1145 TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszNewPath, 8)
1146 TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszNewPath, 8)
1147 TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszNewPath, 8)
1148 TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchOldPath, 4)
1149 TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchOldPath, 4)
1150 TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchOldPath, 16)
1151 TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchNewPath, 4)
1152 TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchNewPath, 4)
1153 TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchNewPath, 20)
1154}
1155
1156static void test_pack_SHNAMEMAPPINGW(void)
1157{
1158 /* SHNAMEMAPPINGW */
1161 TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszOldPath, 8)
1162 TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszOldPath, 8)
1163 TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszOldPath, 0)
1164 TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszNewPath, 8)
1165 TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszNewPath, 8)
1166 TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszNewPath, 8)
1167 TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchOldPath, 4)
1168 TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchOldPath, 4)
1169 TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchOldPath, 16)
1170 TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchNewPath, 4)
1171 TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchNewPath, 4)
1172 TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchNewPath, 20)
1173}
1174
1175static void test_pack_ITEMIDLIST(void)
1176{
1177 /* ITEMIDLIST (pack 1) */
1180 TEST_FIELD_SIZE (ITEMIDLIST, mkid, 3)
1181 TEST_FIELD_ALIGN (ITEMIDLIST, mkid, 1)
1183}
1184
1185static void test_pack_LPCITEMIDLIST(void)
1186{
1187 /* LPCITEMIDLIST */
1192}
1193
1194static void test_pack_LPCSHITEMID(void)
1195{
1196 /* LPCSHITEMID */
1201}
1202
1203static void test_pack_LPITEMIDLIST(void)
1204{
1205 /* LPITEMIDLIST */
1208}
1209
1210static void test_pack_LPSHELLDETAILS(void)
1211{
1212 /* LPSHELLDETAILS */
1215}
1216
1217static void test_pack_LPSHITEMID(void)
1218{
1219 /* LPSHITEMID */
1222}
1223
1224static void test_pack_LPSTRRET(void)
1225{
1226 /* LPSTRRET */
1229}
1230
1231static void test_pack_SHELLDETAILS(void)
1232{
1233 /* SHELLDETAILS (pack 1) */
1237 TEST_FIELD_SIZE (SHELLDETAILS, cxChar, 4)
1238 TEST_FIELD_ALIGN (SHELLDETAILS, cxChar, 1)
1240}
1241
1242static void test_pack_SHITEMID(void)
1243{
1244 /* SHITEMID (pack 1) */
1250 TEST_FIELD_SIZE (SHITEMID, abID, 1)
1251 TEST_FIELD_ALIGN (SHITEMID, abID, 1)
1252 TEST_FIELD_OFFSET(SHITEMID, abID, 2)
1253}
1254
1255static void test_pack_STRRET(void)
1256{
1257 /* STRRET (pack 8) */
1258 TEST_FIELD_SIZE (STRRET, uType, 4)
1259 TEST_FIELD_ALIGN (STRRET, uType, 4)
1260 TEST_FIELD_OFFSET(STRRET, uType, 0)
1261}
1262
1263static void test_pack_AUTO_SCROLL_DATA(void)
1264{
1265 /* AUTO_SCROLL_DATA (pack 1) */
1268 TEST_FIELD_SIZE (AUTO_SCROLL_DATA, iNextSample, 4)
1269 TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, iNextSample, 1)
1270 TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, iNextSample, 0)
1271 TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwLastScroll, 4)
1272 TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwLastScroll, 1)
1273 TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwLastScroll, 4)
1280 TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwTimes, 12)
1283}
1284
1285static void test_pack_BFFCALLBACK(void)
1286{
1287 /* BFFCALLBACK */
1290}
1291
1292static void test_pack_BROWSEINFOA(void)
1293{
1294 /* BROWSEINFOA (pack 8) */
1297 TEST_FIELD_SIZE (BROWSEINFOA, hwndOwner, 8)
1298 TEST_FIELD_ALIGN (BROWSEINFOA, hwndOwner, 8)
1299 TEST_FIELD_OFFSET(BROWSEINFOA, hwndOwner, 0)
1300 TEST_FIELD_SIZE (BROWSEINFOA, pidlRoot, 8)
1301 TEST_FIELD_ALIGN (BROWSEINFOA, pidlRoot, 8)
1302 TEST_FIELD_OFFSET(BROWSEINFOA, pidlRoot, 8)
1303 TEST_FIELD_SIZE (BROWSEINFOA, pszDisplayName, 8)
1304 TEST_FIELD_ALIGN (BROWSEINFOA, pszDisplayName, 8)
1305 TEST_FIELD_OFFSET(BROWSEINFOA, pszDisplayName, 16)
1306 TEST_FIELD_SIZE (BROWSEINFOA, lpszTitle, 8)
1307 TEST_FIELD_ALIGN (BROWSEINFOA, lpszTitle, 8)
1308 TEST_FIELD_OFFSET(BROWSEINFOA, lpszTitle, 24)
1309 TEST_FIELD_SIZE (BROWSEINFOA, ulFlags, 4)
1310 TEST_FIELD_ALIGN (BROWSEINFOA, ulFlags, 4)
1311 TEST_FIELD_OFFSET(BROWSEINFOA, ulFlags, 32)
1312 TEST_FIELD_SIZE (BROWSEINFOA, lpfn, 8)
1313 TEST_FIELD_ALIGN (BROWSEINFOA, lpfn, 8)
1318 TEST_FIELD_SIZE (BROWSEINFOA, iImage, 4)
1319 TEST_FIELD_ALIGN (BROWSEINFOA, iImage, 4)
1320 TEST_FIELD_OFFSET(BROWSEINFOA, iImage, 56)
1321}
1322
1323static void test_pack_BROWSEINFOW(void)
1324{
1325 /* BROWSEINFOW (pack 8) */
1328 TEST_FIELD_SIZE (BROWSEINFOW, hwndOwner, 8)
1329 TEST_FIELD_ALIGN (BROWSEINFOW, hwndOwner, 8)
1330 TEST_FIELD_OFFSET(BROWSEINFOW, hwndOwner, 0)
1331 TEST_FIELD_SIZE (BROWSEINFOW, pidlRoot, 8)
1332 TEST_FIELD_ALIGN (BROWSEINFOW, pidlRoot, 8)
1333 TEST_FIELD_OFFSET(BROWSEINFOW, pidlRoot, 8)
1334 TEST_FIELD_SIZE (BROWSEINFOW, pszDisplayName, 8)
1335 TEST_FIELD_ALIGN (BROWSEINFOW, pszDisplayName, 8)
1336 TEST_FIELD_OFFSET(BROWSEINFOW, pszDisplayName, 16)
1337 TEST_FIELD_SIZE (BROWSEINFOW, lpszTitle, 8)
1338 TEST_FIELD_ALIGN (BROWSEINFOW, lpszTitle, 8)
1339 TEST_FIELD_OFFSET(BROWSEINFOW, lpszTitle, 24)
1340 TEST_FIELD_SIZE (BROWSEINFOW, ulFlags, 4)
1341 TEST_FIELD_ALIGN (BROWSEINFOW, ulFlags, 4)
1342 TEST_FIELD_OFFSET(BROWSEINFOW, ulFlags, 32)
1343 TEST_FIELD_SIZE (BROWSEINFOW, lpfn, 8)
1344 TEST_FIELD_ALIGN (BROWSEINFOW, lpfn, 8)
1349 TEST_FIELD_SIZE (BROWSEINFOW, iImage, 4)
1350 TEST_FIELD_ALIGN (BROWSEINFOW, iImage, 4)
1351 TEST_FIELD_OFFSET(BROWSEINFOW, iImage, 56)
1352}
1353
1354static void test_pack_CABINETSTATE(void)
1355{
1356 /* CABINETSTATE (pack 1) */
1359 TEST_FIELD_SIZE (CABINETSTATE, cLength, 2)
1360 TEST_FIELD_ALIGN (CABINETSTATE, cLength, 1)
1361 TEST_FIELD_OFFSET(CABINETSTATE, cLength, 0)
1362 TEST_FIELD_SIZE (CABINETSTATE, nVersion, 2)
1363 TEST_FIELD_ALIGN (CABINETSTATE, nVersion, 1)
1364 TEST_FIELD_OFFSET(CABINETSTATE, nVersion, 2)
1365 TEST_FIELD_SIZE (CABINETSTATE, fMenuEnumFilter, 4)
1366 TEST_FIELD_ALIGN (CABINETSTATE, fMenuEnumFilter, 1)
1367 TEST_FIELD_OFFSET(CABINETSTATE, fMenuEnumFilter, 8)
1368}
1369
1370static void test_pack_CIDA(void)
1371{
1372 /* CIDA (pack 1) */
1373 TEST_TYPE_SIZE (CIDA, 8)
1375 TEST_FIELD_SIZE (CIDA, cidl, 4)
1376 TEST_FIELD_ALIGN (CIDA, cidl, 1)
1377 TEST_FIELD_OFFSET(CIDA, cidl, 0)
1378 TEST_FIELD_SIZE (CIDA, aoffset, 4)
1379 TEST_FIELD_ALIGN (CIDA, aoffset, 1)
1380 TEST_FIELD_OFFSET(CIDA, aoffset, 4)
1381}
1382
1383static void test_pack_CSFV(void)
1384{
1385 /* CSFV (pack 8) */
1386 TEST_FIELD_SIZE (CSFV, cbSize, 4)
1387 TEST_FIELD_ALIGN (CSFV, cbSize, 4)
1388 TEST_FIELD_OFFSET(CSFV, cbSize, 0)
1389 TEST_FIELD_SIZE (CSFV, pshf, 8)
1390 TEST_FIELD_ALIGN (CSFV, pshf, 8)
1391 TEST_FIELD_OFFSET(CSFV, pshf, 8)
1392 TEST_FIELD_SIZE (CSFV, psvOuter, 8)
1393 TEST_FIELD_ALIGN (CSFV, psvOuter, 8)
1394 TEST_FIELD_OFFSET(CSFV, psvOuter, 16)
1395 TEST_FIELD_SIZE (CSFV, pidl, 8)
1396 TEST_FIELD_ALIGN (CSFV, pidl, 8)
1397 TEST_FIELD_OFFSET(CSFV, pidl, 24)
1398 TEST_FIELD_SIZE (CSFV, lEvents, 4)
1399 TEST_FIELD_ALIGN (CSFV, lEvents, 4)
1400 TEST_FIELD_OFFSET(CSFV, lEvents, 32)
1401 TEST_FIELD_SIZE (CSFV, pfnCallback, 8)
1402 TEST_FIELD_ALIGN (CSFV, pfnCallback, 8)
1403 TEST_FIELD_OFFSET(CSFV, pfnCallback, 40)
1404}
1405
1406static void test_pack_DROPFILES(void)
1407{
1408 /* DROPFILES (pack 1) */
1411 TEST_FIELD_SIZE (DROPFILES, pFiles, 4)
1412 TEST_FIELD_ALIGN (DROPFILES, pFiles, 1)
1413 TEST_FIELD_OFFSET(DROPFILES, pFiles, 0)
1417 TEST_FIELD_SIZE (DROPFILES, fNC, 4)
1418 TEST_FIELD_ALIGN (DROPFILES, fNC, 1)
1420 TEST_FIELD_SIZE (DROPFILES, fWide, 4)
1421 TEST_FIELD_ALIGN (DROPFILES, fWide, 1)
1422 TEST_FIELD_OFFSET(DROPFILES, fWide, 16)
1423}
1424
1425static void test_pack_FILEDESCRIPTORA(void)
1426{
1427 /* FILEDESCRIPTORA (pack 1) */
1439 TEST_FIELD_SIZE (FILEDESCRIPTORA, pointl, 8)
1445 TEST_FIELD_SIZE (FILEDESCRIPTORA, ftCreationTime, 8)
1446 TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftCreationTime, 1)
1447 TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftCreationTime, 40)
1448 TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastAccessTime, 8)
1449 TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastAccessTime, 1)
1450 TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastAccessTime, 48)
1451 TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastWriteTime, 8)
1452 TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastWriteTime, 1)
1453 TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastWriteTime, 56)
1454 TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeHigh, 4)
1455 TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeHigh, 1)
1456 TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeHigh, 64)
1457 TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeLow, 4)
1458 TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeLow, 1)
1459 TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeLow, 68)
1460 TEST_FIELD_SIZE (FILEDESCRIPTORA, cFileName, 260)
1461 TEST_FIELD_ALIGN (FILEDESCRIPTORA, cFileName, 1)
1462 TEST_FIELD_OFFSET(FILEDESCRIPTORA, cFileName, 72)
1463}
1464
1465static void test_pack_FILEDESCRIPTORW(void)
1466{
1467 /* FILEDESCRIPTORW (pack 1) */
1479 TEST_FIELD_SIZE (FILEDESCRIPTORW, pointl, 8)
1485 TEST_FIELD_SIZE (FILEDESCRIPTORW, ftCreationTime, 8)
1486 TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftCreationTime, 1)
1487 TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftCreationTime, 40)
1488 TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastAccessTime, 8)
1489 TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastAccessTime, 1)
1490 TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastAccessTime, 48)
1491 TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastWriteTime, 8)
1492 TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastWriteTime, 1)
1493 TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastWriteTime, 56)
1494 TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeHigh, 4)
1495 TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeHigh, 1)
1496 TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeHigh, 64)
1497 TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeLow, 4)
1498 TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeLow, 1)
1499 TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeLow, 68)
1500 TEST_FIELD_SIZE (FILEDESCRIPTORW, cFileName, 520)
1501 TEST_FIELD_ALIGN (FILEDESCRIPTORW, cFileName, 1)
1502 TEST_FIELD_OFFSET(FILEDESCRIPTORW, cFileName, 72)
1503}
1504
1505static void test_pack_FILEGROUPDESCRIPTORA(void)
1506{
1507 /* FILEGROUPDESCRIPTORA (pack 1) */
1516}
1517
1518static void test_pack_FILEGROUPDESCRIPTORW(void)
1519{
1520 /* FILEGROUPDESCRIPTORW (pack 1) */
1529}
1530
1531static void test_pack_ITEMSPACING(void)
1532{
1533 /* ITEMSPACING (pack 8) */
1536 TEST_FIELD_SIZE (ITEMSPACING, cxSmall, 4)
1537 TEST_FIELD_ALIGN (ITEMSPACING, cxSmall, 4)
1538 TEST_FIELD_OFFSET(ITEMSPACING, cxSmall, 0)
1539 TEST_FIELD_SIZE (ITEMSPACING, cySmall, 4)
1540 TEST_FIELD_ALIGN (ITEMSPACING, cySmall, 4)
1541 TEST_FIELD_OFFSET(ITEMSPACING, cySmall, 4)
1542 TEST_FIELD_SIZE (ITEMSPACING, cxLarge, 4)
1543 TEST_FIELD_ALIGN (ITEMSPACING, cxLarge, 4)
1544 TEST_FIELD_OFFSET(ITEMSPACING, cxLarge, 8)
1545 TEST_FIELD_SIZE (ITEMSPACING, cyLarge, 4)
1546 TEST_FIELD_ALIGN (ITEMSPACING, cyLarge, 4)
1547 TEST_FIELD_OFFSET(ITEMSPACING, cyLarge, 12)
1548}
1549
1550static void test_pack_LPBROWSEINFOA(void)
1551{
1552 /* LPBROWSEINFOA */
1557}
1558
1559static void test_pack_LPBROWSEINFOW(void)
1560{
1561 /* LPBROWSEINFOW */
1566}
1567
1568static void test_pack_LPCABINETSTATE(void)
1569{
1570 /* LPCABINETSTATE */
1575}
1576
1577static void test_pack_LPCSFV(void)
1578{
1579 /* LPCSFV */
1582}
1583
1584static void test_pack_LPDROPFILES(void)
1585{
1586 /* LPDROPFILES */
1591}
1592
1593static void test_pack_LPFILEDESCRIPTORA(void)
1594{
1595 /* LPFILEDESCRIPTORA */
1600}
1601
1602static void test_pack_LPFILEDESCRIPTORW(void)
1603{
1604 /* LPFILEDESCRIPTORW */
1609}
1610
1611static void test_pack_LPFILEGROUPDESCRIPTORA(void)
1612{
1613 /* LPFILEGROUPDESCRIPTORA */
1618}
1619
1620static void test_pack_LPFILEGROUPDESCRIPTORW(void)
1621{
1622 /* LPFILEGROUPDESCRIPTORW */
1627}
1628
1629static void test_pack_LPFNVIEWCALLBACK(void)
1630{
1631 /* LPFNVIEWCALLBACK */
1634}
1635
1636static void test_pack_LPIDA(void)
1637{
1638 /* LPIDA */
1643}
1644
1645static void test_pack_LPQCMINFO(void)
1646{
1647 /* LPQCMINFO */
1652}
1653
1654static void test_pack_LPSHChangeDWORDAsIDList(void)
1655{
1656 /* LPSHChangeDWORDAsIDList */
1661}
1662
1664{
1665 /* LPSHChangeProductKeyAsIDList */
1670}
1671
1672static void test_pack_LPSHDESCRIPTIONID(void)
1673{
1674 /* LPSHDESCRIPTIONID */
1679}
1680
1681static void test_pack_LPSHELLFLAGSTATE(void)
1682{
1683 /* LPSHELLFLAGSTATE */
1688}
1689
1690static void test_pack_LPSHELLSTATE(void)
1691{
1692 /* LPSHELLSTATE */
1697}
1698
1699static void test_pack_LPTBINFO(void)
1700{
1701 /* LPTBINFO */
1706}
1707
1708static void test_pack_PBROWSEINFOA(void)
1709{
1710 /* PBROWSEINFOA */
1715}
1716
1717static void test_pack_PBROWSEINFOW(void)
1718{
1719 /* PBROWSEINFOW */
1724}
1725
1726static void test_pack_QCMINFO(void)
1727{
1728 /* QCMINFO (pack 8) */
1734 TEST_FIELD_SIZE (QCMINFO, indexMenu, 4)
1735 TEST_FIELD_ALIGN (QCMINFO, indexMenu, 4)
1736 TEST_FIELD_OFFSET(QCMINFO, indexMenu, 8)
1737 TEST_FIELD_SIZE (QCMINFO, idCmdFirst, 4)
1738 TEST_FIELD_ALIGN (QCMINFO, idCmdFirst, 4)
1739 TEST_FIELD_OFFSET(QCMINFO, idCmdFirst, 12)
1740 TEST_FIELD_SIZE (QCMINFO, idCmdLast, 4)
1741 TEST_FIELD_ALIGN (QCMINFO, idCmdLast, 4)
1742 TEST_FIELD_OFFSET(QCMINFO, idCmdLast, 16)
1743 TEST_FIELD_SIZE (QCMINFO, pIdMap, 8)
1744 TEST_FIELD_ALIGN (QCMINFO, pIdMap, 8)
1745 TEST_FIELD_OFFSET(QCMINFO, pIdMap, 24)
1746}
1747
1748static void test_pack_QCMINFO_IDMAP(void)
1749{
1750 /* QCMINFO_IDMAP (pack 8) */
1753 TEST_FIELD_SIZE (QCMINFO_IDMAP, nMaxIds, 4)
1754 TEST_FIELD_ALIGN (QCMINFO_IDMAP, nMaxIds, 4)
1755 TEST_FIELD_OFFSET(QCMINFO_IDMAP, nMaxIds, 0)
1756 TEST_FIELD_SIZE (QCMINFO_IDMAP, pIdList, 8)
1757 TEST_FIELD_ALIGN (QCMINFO_IDMAP, pIdList, 4)
1758 TEST_FIELD_OFFSET(QCMINFO_IDMAP, pIdList, 4)
1759}
1760
1761static void test_pack_QCMINFO_IDMAP_PLACEMENT(void)
1762{
1763 /* QCMINFO_IDMAP_PLACEMENT (pack 8) */
1772}
1773
1774static void test_pack_SFV_CREATE(void)
1775{
1776 /* SFV_CREATE (pack 8) */
1779 TEST_FIELD_SIZE (SFV_CREATE, cbSize, 4)
1780 TEST_FIELD_ALIGN (SFV_CREATE, cbSize, 4)
1781 TEST_FIELD_OFFSET(SFV_CREATE, cbSize, 0)
1782 TEST_FIELD_SIZE (SFV_CREATE, pshf, 8)
1783 TEST_FIELD_ALIGN (SFV_CREATE, pshf, 8)
1785 TEST_FIELD_SIZE (SFV_CREATE, psvOuter, 8)
1786 TEST_FIELD_ALIGN (SFV_CREATE, psvOuter, 8)
1787 TEST_FIELD_OFFSET(SFV_CREATE, psvOuter, 16)
1788 TEST_FIELD_SIZE (SFV_CREATE, psfvcb, 8)
1789 TEST_FIELD_ALIGN (SFV_CREATE, psfvcb, 8)
1790 TEST_FIELD_OFFSET(SFV_CREATE, psfvcb, 24)
1791}
1792
1793static void test_pack_SHChangeDWORDAsIDList(void)
1794{
1795 /* SHChangeDWORDAsIDList (pack 1) */
1810}
1811
1812static void test_pack_SHChangeNotifyEntry(void)
1813{
1814 /* SHChangeNotifyEntry (pack 1) */
1820 TEST_FIELD_SIZE (SHChangeNotifyEntry, fRecursive, 4)
1821 TEST_FIELD_ALIGN (SHChangeNotifyEntry, fRecursive, 1)
1823}
1824
1826{
1827 /* SHChangeProductKeyAsIDList (pack 1) */
1833 TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, wszProductKey, 78)
1839}
1840
1841static void test_pack_SHDESCRIPTIONID(void)
1842{
1843 /* SHDESCRIPTIONID (pack 8) */
1846 TEST_FIELD_SIZE (SHDESCRIPTIONID, dwDescriptionId, 4)
1847 TEST_FIELD_ALIGN (SHDESCRIPTIONID, dwDescriptionId, 4)
1848 TEST_FIELD_OFFSET(SHDESCRIPTIONID, dwDescriptionId, 0)
1852}
1853
1854static void test_pack_SHELLFLAGSTATE(void)
1855{
1856 /* SHELLFLAGSTATE (pack 1) */
1859}
1860
1861static void test_pack_SHELLSTATE(void)
1862{
1863 /* SHELLSTATE (pack 1) */
1866 TEST_FIELD_SIZE (SHELLSTATE, dwWin95Unused, 4)
1867 TEST_FIELD_ALIGN (SHELLSTATE, dwWin95Unused, 1)
1868 TEST_FIELD_OFFSET(SHELLSTATE, dwWin95Unused, 4)
1869 TEST_FIELD_SIZE (SHELLSTATE, uWin95Unused, 4)
1870 TEST_FIELD_ALIGN (SHELLSTATE, uWin95Unused, 1)
1871 TEST_FIELD_OFFSET(SHELLSTATE, uWin95Unused, 8)
1872 TEST_FIELD_SIZE (SHELLSTATE, lParamSort, 4)
1873 TEST_FIELD_ALIGN (SHELLSTATE, lParamSort, 1)
1874 TEST_FIELD_OFFSET(SHELLSTATE, lParamSort, 12)
1875 TEST_FIELD_SIZE (SHELLSTATE, iSortDirection, 4)
1876 TEST_FIELD_ALIGN (SHELLSTATE, iSortDirection, 1)
1877 TEST_FIELD_OFFSET(SHELLSTATE, iSortDirection, 16)
1881 TEST_FIELD_SIZE (SHELLSTATE, uNotUsed, 4)
1882 TEST_FIELD_ALIGN (SHELLSTATE, uNotUsed, 1)
1883 TEST_FIELD_OFFSET(SHELLSTATE, uNotUsed, 24)
1884}
1885
1886static void test_pack_TBINFO(void)
1887{
1888 /* TBINFO (pack 8) */
1891 TEST_FIELD_SIZE (TBINFO, cbuttons, 4)
1892 TEST_FIELD_ALIGN (TBINFO, cbuttons, 4)
1893 TEST_FIELD_OFFSET(TBINFO, cbuttons, 0)
1897}
1898
1899#else /* _WIN64 */
1900
1901static void test_pack_BLOB(void)
1902{
1903 /* BLOB */
1904 TEST_TYPE_SIZE (BLOB, 8)
1906 TEST_FIELD_SIZE (BLOB, cbSize, 4)
1907 TEST_FIELD_ALIGN (BLOB, cbSize, 4)
1908 TEST_FIELD_OFFSET(BLOB, cbSize, 0)
1909 TEST_FIELD_SIZE (BLOB, pBlobData, 4)
1910 TEST_FIELD_ALIGN (BLOB, pBlobData, 4)
1911 TEST_FIELD_OFFSET(BLOB, pBlobData, 4)
1912}
1913
1914static void test_pack_BSTR(void)
1915{
1916 /* BSTR */
1917 TEST_TYPE_SIZE (BSTR, 4)
1921}
1922
1923static void test_pack_BSTRBLOB(void)
1924{
1925 /* BSTRBLOB */
1926 TEST_TYPE_SIZE (BSTRBLOB, 8)
1927 TEST_TYPE_ALIGN (BSTRBLOB, 4)
1928 TEST_FIELD_SIZE (BSTRBLOB, cbSize, 4)
1929 TEST_FIELD_ALIGN (BSTRBLOB, cbSize, 4)
1930 TEST_FIELD_OFFSET(BSTRBLOB, cbSize, 0)
1931 TEST_FIELD_SIZE (BSTRBLOB, pData, 4)
1932 TEST_FIELD_ALIGN (BSTRBLOB, pData, 4)
1933 TEST_FIELD_OFFSET(BSTRBLOB, pData, 4)
1934}
1935
1936static void test_pack_BYTE_BLOB(void)
1937{
1938 /* BYTE_BLOB */
1939 TEST_TYPE_SIZE (BYTE_BLOB, 8)
1940 TEST_TYPE_ALIGN (BYTE_BLOB, 4)
1941 TEST_FIELD_SIZE (BYTE_BLOB, clSize, 4)
1942 TEST_FIELD_ALIGN (BYTE_BLOB, clSize, 4)
1943 TEST_FIELD_OFFSET(BYTE_BLOB, clSize, 0)
1944 TEST_FIELD_SIZE (BYTE_BLOB, abData, 1)
1945 TEST_FIELD_ALIGN (BYTE_BLOB, abData, 1)
1946 TEST_FIELD_OFFSET(BYTE_BLOB, abData, 4)
1947}
1948
1950{
1951 /* BYTE_SIZEDARR */
1952 TEST_TYPE_SIZE (BYTE_SIZEDARR, 8)
1953 TEST_TYPE_ALIGN (BYTE_SIZEDARR, 4)
1954 TEST_FIELD_SIZE (BYTE_SIZEDARR, clSize, 4)
1955 TEST_FIELD_ALIGN (BYTE_SIZEDARR, clSize, 4)
1956 TEST_FIELD_OFFSET(BYTE_SIZEDARR, clSize, 0)
1957 TEST_FIELD_SIZE (BYTE_SIZEDARR, pData, 4)
1958 TEST_FIELD_ALIGN (BYTE_SIZEDARR, pData, 4)
1959 TEST_FIELD_OFFSET(BYTE_SIZEDARR, pData, 4)
1960}
1961
1962static void test_pack_CLIPDATA(void)
1963{
1964 /* CLIPDATA */
1965 TEST_TYPE_SIZE (CLIPDATA, 12)
1966 TEST_TYPE_ALIGN (CLIPDATA, 4)
1967 TEST_FIELD_SIZE (CLIPDATA, cbSize, 4)
1968 TEST_FIELD_ALIGN (CLIPDATA, cbSize, 4)
1969 TEST_FIELD_OFFSET(CLIPDATA, cbSize, 0)
1970 TEST_FIELD_SIZE (CLIPDATA, ulClipFmt, 4)
1971 TEST_FIELD_ALIGN (CLIPDATA, ulClipFmt, 4)
1972 TEST_FIELD_OFFSET(CLIPDATA, ulClipFmt, 4)
1973 TEST_FIELD_SIZE (CLIPDATA, pClipData, 4)
1974 TEST_FIELD_ALIGN (CLIPDATA, pClipData, 4)
1975 TEST_FIELD_OFFSET(CLIPDATA, pClipData, 8)
1976}
1977
1978static void test_pack_CLIPFORMAT(void)
1979{
1980 /* CLIPFORMAT */
1981 TEST_TYPE_SIZE (CLIPFORMAT, 2)
1982 TEST_TYPE_ALIGN (CLIPFORMAT, 2)
1983 TEST_TYPE_UNSIGNED(CLIPFORMAT)
1984}
1985
1987{
1988 /* COAUTHIDENTITY */
1989 TEST_TYPE_SIZE (COAUTHIDENTITY, 28)
1990 TEST_TYPE_ALIGN (COAUTHIDENTITY, 4)
1991 TEST_FIELD_SIZE (COAUTHIDENTITY, User, 4)
1992 TEST_FIELD_ALIGN (COAUTHIDENTITY, User, 4)
1993 TEST_FIELD_OFFSET(COAUTHIDENTITY, User, 0)
1994 TEST_FIELD_SIZE (COAUTHIDENTITY, UserLength, 4)
1995 TEST_FIELD_ALIGN (COAUTHIDENTITY, UserLength, 4)
1996 TEST_FIELD_OFFSET(COAUTHIDENTITY, UserLength, 4)
1997 TEST_FIELD_SIZE (COAUTHIDENTITY, Domain, 4)
1998 TEST_FIELD_ALIGN (COAUTHIDENTITY, Domain, 4)
1999 TEST_FIELD_OFFSET(COAUTHIDENTITY, Domain, 8)
2000 TEST_FIELD_SIZE (COAUTHIDENTITY, DomainLength, 4)
2001 TEST_FIELD_ALIGN (COAUTHIDENTITY, DomainLength, 4)
2002 TEST_FIELD_OFFSET(COAUTHIDENTITY, DomainLength, 12)
2003 TEST_FIELD_SIZE (COAUTHIDENTITY, Password, 4)
2004 TEST_FIELD_ALIGN (COAUTHIDENTITY, Password, 4)
2005 TEST_FIELD_OFFSET(COAUTHIDENTITY, Password, 16)
2006 TEST_FIELD_SIZE (COAUTHIDENTITY, PasswordLength, 4)
2007 TEST_FIELD_ALIGN (COAUTHIDENTITY, PasswordLength, 4)
2008 TEST_FIELD_OFFSET(COAUTHIDENTITY, PasswordLength, 20)
2009 TEST_FIELD_SIZE (COAUTHIDENTITY, Flags, 4)
2010 TEST_FIELD_ALIGN (COAUTHIDENTITY, Flags, 4)
2011 TEST_FIELD_OFFSET(COAUTHIDENTITY, Flags, 24)
2012}
2013
2014static void test_pack_COAUTHINFO(void)
2015{
2016 /* COAUTHINFO */
2017 TEST_TYPE_SIZE (COAUTHINFO, 28)
2018 TEST_TYPE_ALIGN (COAUTHINFO, 4)
2019 TEST_FIELD_SIZE (COAUTHINFO, dwAuthnSvc, 4)
2020 TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnSvc, 4)
2021 TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnSvc, 0)
2022 TEST_FIELD_SIZE (COAUTHINFO, dwAuthzSvc, 4)
2023 TEST_FIELD_ALIGN (COAUTHINFO, dwAuthzSvc, 4)
2024 TEST_FIELD_OFFSET(COAUTHINFO, dwAuthzSvc, 4)
2025 TEST_FIELD_SIZE (COAUTHINFO, pwszServerPrincName, 4)
2026 TEST_FIELD_ALIGN (COAUTHINFO, pwszServerPrincName, 4)
2027 TEST_FIELD_OFFSET(COAUTHINFO, pwszServerPrincName, 8)
2028 TEST_FIELD_SIZE (COAUTHINFO, dwAuthnLevel, 4)
2029 TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnLevel, 4)
2030 TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnLevel, 12)
2031 TEST_FIELD_SIZE (COAUTHINFO, dwImpersonationLevel, 4)
2032 TEST_FIELD_ALIGN (COAUTHINFO, dwImpersonationLevel, 4)
2033 TEST_FIELD_OFFSET(COAUTHINFO, dwImpersonationLevel, 16)
2034 TEST_FIELD_SIZE (COAUTHINFO, pAuthIdentityData, 4)
2035 TEST_FIELD_ALIGN (COAUTHINFO, pAuthIdentityData, 4)
2036 TEST_FIELD_OFFSET(COAUTHINFO, pAuthIdentityData, 20)
2037 TEST_FIELD_SIZE (COAUTHINFO, dwCapabilities, 4)
2038 TEST_FIELD_ALIGN (COAUTHINFO, dwCapabilities, 4)
2039 TEST_FIELD_OFFSET(COAUTHINFO, dwCapabilities, 24)
2040}
2041
2042static void test_pack_DATE(void)
2043{
2044 /* DATE */
2045 TEST_TYPE_SIZE (DATE, 8)
2047}
2048
2049static void test_pack_DOUBLE(void)
2050{
2051 /* DOUBLE */
2054}
2055
2057{
2058 /* DWORD_SIZEDARR */
2059 TEST_TYPE_SIZE (DWORD_SIZEDARR, 8)
2060 TEST_TYPE_ALIGN (DWORD_SIZEDARR, 4)
2061 TEST_FIELD_SIZE (DWORD_SIZEDARR, clSize, 4)
2062 TEST_FIELD_ALIGN (DWORD_SIZEDARR, clSize, 4)
2063 TEST_FIELD_OFFSET(DWORD_SIZEDARR, clSize, 0)
2064 TEST_FIELD_SIZE (DWORD_SIZEDARR, pData, 4)
2065 TEST_FIELD_ALIGN (DWORD_SIZEDARR, pData, 4)
2066 TEST_FIELD_OFFSET(DWORD_SIZEDARR, pData, 4)
2067}
2068
2070{
2071 /* FLAGGED_BYTE_BLOB */
2072 TEST_TYPE_SIZE (FLAGGED_BYTE_BLOB, 12)
2073 TEST_TYPE_ALIGN (FLAGGED_BYTE_BLOB, 4)
2074 TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, fFlags, 4)
2075 TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, fFlags, 4)
2076 TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, fFlags, 0)
2077 TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, clSize, 4)
2078 TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, clSize, 4)
2079 TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, clSize, 4)
2080 TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, abData, 1)
2081 TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, abData, 1)
2082 TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, abData, 8)
2083}
2084
2086{
2087 /* FLAGGED_WORD_BLOB */
2088 TEST_TYPE_SIZE (FLAGGED_WORD_BLOB, 12)
2089 TEST_TYPE_ALIGN (FLAGGED_WORD_BLOB, 4)
2090 TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, fFlags, 4)
2091 TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, fFlags, 4)
2092 TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, fFlags, 0)
2093 TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, clSize, 4)
2094 TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, clSize, 4)
2095 TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, clSize, 4)
2096 TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, asData, 2)
2097 TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, asData, 2)
2098 TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, asData, 8)
2099}
2100
2102{
2103 /* HMETAFILEPICT */
2104 TEST_TYPE_SIZE (HMETAFILEPICT, 4)
2105 TEST_TYPE_ALIGN (HMETAFILEPICT, 4)
2106}
2107
2109{
2110 /* HYPER_SIZEDARR */
2111 TEST_TYPE_SIZE (HYPER_SIZEDARR, 8)
2112 TEST_TYPE_ALIGN (HYPER_SIZEDARR, 4)
2113 TEST_FIELD_SIZE (HYPER_SIZEDARR, clSize, 4)
2114 TEST_FIELD_ALIGN (HYPER_SIZEDARR, clSize, 4)
2115 TEST_FIELD_OFFSET(HYPER_SIZEDARR, clSize, 0)
2116 TEST_FIELD_SIZE (HYPER_SIZEDARR, pData, 4)
2117 TEST_FIELD_ALIGN (HYPER_SIZEDARR, pData, 4)
2118 TEST_FIELD_OFFSET(HYPER_SIZEDARR, pData, 4)
2119}
2120
2121static void test_pack_LPBLOB(void)
2122{
2123 /* LPBLOB */
2126}
2127
2128static void test_pack_LPBSTR(void)
2129{
2130 /* LPBSTR */
2131 TEST_TYPE_SIZE (LPBSTR, 4)
2132 TEST_TYPE_ALIGN (LPBSTR, 4)
2133 TEST_TARGET_SIZE (LPBSTR, 4)
2134 TEST_TARGET_ALIGN(LPBSTR, 4)
2135}
2136
2137static void test_pack_LPBSTRBLOB(void)
2138{
2139 /* LPBSTRBLOB */
2140 TEST_TYPE_SIZE (LPBSTRBLOB, 4)
2141 TEST_TYPE_ALIGN (LPBSTRBLOB, 4)
2142}
2143
2144static void test_pack_LPCOLESTR(void)
2145{
2146 /* LPCOLESTR */
2147 TEST_TYPE_SIZE (LPCOLESTR, 4)
2148 TEST_TYPE_ALIGN (LPCOLESTR, 4)
2149 TEST_TARGET_SIZE (LPCOLESTR, 2)
2150 TEST_TARGET_ALIGN(LPCOLESTR, 2)
2151}
2152
2153static void test_pack_LPCY(void)
2154{
2155 /* LPCY */
2156 TEST_TYPE_SIZE (LPCY, 4)
2157 TEST_TYPE_ALIGN (LPCY, 4)
2158}
2159
2160static void test_pack_LPDECIMAL(void)
2161{
2162 /* LPDECIMAL */
2163 TEST_TYPE_SIZE (LPDECIMAL, 4)
2164 TEST_TYPE_ALIGN (LPDECIMAL, 4)
2165}
2166
2167static void test_pack_LPOLESTR(void)
2168{
2169 /* LPOLESTR */
2174}
2175
2176static void test_pack_OLECHAR(void)
2177{
2178 /* OLECHAR */
2181}
2182
2183static void test_pack_PROPID(void)
2184{
2185 /* PROPID */
2188}
2189
2190static void test_pack_RemHBITMAP(void)
2191{
2192 /* RemHBITMAP */
2193 TEST_TYPE_SIZE (RemHBITMAP, 8)
2194 TEST_TYPE_ALIGN (RemHBITMAP, 4)
2195 TEST_FIELD_SIZE (RemHBITMAP, cbData, 4)
2196 TEST_FIELD_ALIGN (RemHBITMAP, cbData, 4)
2197 TEST_FIELD_OFFSET(RemHBITMAP, cbData, 0)
2198 TEST_FIELD_SIZE (RemHBITMAP, data, 1)
2199 TEST_FIELD_ALIGN (RemHBITMAP, data, 1)
2200 TEST_FIELD_OFFSET(RemHBITMAP, data, 4)
2201}
2202
2204{
2205 /* RemHENHMETAFILE */
2206 TEST_TYPE_SIZE (RemHENHMETAFILE, 8)
2207 TEST_TYPE_ALIGN (RemHENHMETAFILE, 4)
2208 TEST_FIELD_SIZE (RemHENHMETAFILE, cbData, 4)
2209 TEST_FIELD_ALIGN (RemHENHMETAFILE, cbData, 4)
2210 TEST_FIELD_OFFSET(RemHENHMETAFILE, cbData, 0)
2211 TEST_FIELD_SIZE (RemHENHMETAFILE, data, 1)
2212 TEST_FIELD_ALIGN (RemHENHMETAFILE, data, 1)
2213 TEST_FIELD_OFFSET(RemHENHMETAFILE, data, 4)
2214}
2215
2216static void test_pack_RemHGLOBAL(void)
2217{
2218 /* RemHGLOBAL */
2219 TEST_TYPE_SIZE (RemHGLOBAL, 12)
2220 TEST_TYPE_ALIGN (RemHGLOBAL, 4)
2221 TEST_FIELD_SIZE (RemHGLOBAL, fNullHGlobal, 4)
2222 TEST_FIELD_ALIGN (RemHGLOBAL, fNullHGlobal, 4)
2223 TEST_FIELD_OFFSET(RemHGLOBAL, fNullHGlobal, 0)
2224 TEST_FIELD_SIZE (RemHGLOBAL, cbData, 4)
2225 TEST_FIELD_ALIGN (RemHGLOBAL, cbData, 4)
2226 TEST_FIELD_OFFSET(RemHGLOBAL, cbData, 4)
2227 TEST_FIELD_SIZE (RemHGLOBAL, data, 1)
2228 TEST_FIELD_ALIGN (RemHGLOBAL, data, 1)
2229 TEST_FIELD_OFFSET(RemHGLOBAL, data, 8)
2230}
2231
2233{
2234 /* RemHMETAFILEPICT */
2235 TEST_TYPE_SIZE (RemHMETAFILEPICT, 20)
2236 TEST_TYPE_ALIGN (RemHMETAFILEPICT, 4)
2237 TEST_FIELD_SIZE (RemHMETAFILEPICT, mm, 4)
2238 TEST_FIELD_ALIGN (RemHMETAFILEPICT, mm, 4)
2239 TEST_FIELD_OFFSET(RemHMETAFILEPICT, mm, 0)
2240 TEST_FIELD_SIZE (RemHMETAFILEPICT, xExt, 4)
2241 TEST_FIELD_ALIGN (RemHMETAFILEPICT, xExt, 4)
2242 TEST_FIELD_OFFSET(RemHMETAFILEPICT, xExt, 4)
2243 TEST_FIELD_SIZE (RemHMETAFILEPICT, yExt, 4)
2244 TEST_FIELD_ALIGN (RemHMETAFILEPICT, yExt, 4)
2245 TEST_FIELD_OFFSET(RemHMETAFILEPICT, yExt, 8)
2246 TEST_FIELD_SIZE (RemHMETAFILEPICT, cbData, 4)
2247 TEST_FIELD_ALIGN (RemHMETAFILEPICT, cbData, 4)
2248 TEST_FIELD_OFFSET(RemHMETAFILEPICT, cbData, 12)
2249 TEST_FIELD_SIZE (RemHMETAFILEPICT, data, 1)
2250 TEST_FIELD_ALIGN (RemHMETAFILEPICT, data, 1)
2251 TEST_FIELD_OFFSET(RemHMETAFILEPICT, data, 16)
2252}
2253
2254static void test_pack_RemHPALETTE(void)
2255{
2256 /* RemHPALETTE */
2257 TEST_TYPE_SIZE (RemHPALETTE, 8)
2258 TEST_TYPE_ALIGN (RemHPALETTE, 4)
2259 TEST_FIELD_SIZE (RemHPALETTE, cbData, 4)
2260 TEST_FIELD_ALIGN (RemHPALETTE, cbData, 4)
2261 TEST_FIELD_OFFSET(RemHPALETTE, cbData, 0)
2262 TEST_FIELD_SIZE (RemHPALETTE, data, 1)
2263 TEST_FIELD_ALIGN (RemHPALETTE, data, 1)
2264 TEST_FIELD_OFFSET(RemHPALETTE, data, 4)
2265}
2266
2267static void test_pack_SCODE(void)
2268{
2269 /* SCODE */
2272}
2273
2274static void test_pack_UP_BYTE_BLOB(void)
2275{
2276 /* UP_BYTE_BLOB */
2277 TEST_TYPE_SIZE (UP_BYTE_BLOB, 4)
2278 TEST_TYPE_ALIGN (UP_BYTE_BLOB, 4)
2279 TEST_TARGET_SIZE (UP_BYTE_BLOB, 8)
2280 TEST_TARGET_ALIGN(UP_BYTE_BLOB, 4)
2281}
2282
2284{
2285 /* UP_FLAGGED_BYTE_BLOB */
2286 TEST_TYPE_SIZE (UP_FLAGGED_BYTE_BLOB, 4)
2287 TEST_TYPE_ALIGN (UP_FLAGGED_BYTE_BLOB, 4)
2288 TEST_TARGET_SIZE (UP_FLAGGED_BYTE_BLOB, 12)
2289 TEST_TARGET_ALIGN(UP_FLAGGED_BYTE_BLOB, 4)
2290}
2291
2293{
2294 /* UP_FLAGGED_WORD_BLOB */
2295 TEST_TYPE_SIZE (UP_FLAGGED_WORD_BLOB, 4)
2296 TEST_TYPE_ALIGN (UP_FLAGGED_WORD_BLOB, 4)
2297 TEST_TARGET_SIZE (UP_FLAGGED_WORD_BLOB, 12)
2298 TEST_TARGET_ALIGN(UP_FLAGGED_WORD_BLOB, 4)
2299}
2300
2301static void test_pack_VARIANT_BOOL(void)
2302{
2303 /* VARIANT_BOOL */
2307}
2308
2309static void test_pack_VARTYPE(void)
2310{
2311 /* VARTYPE */
2315}
2316
2318{
2319 /* WORD_SIZEDARR */
2320 TEST_TYPE_SIZE (WORD_SIZEDARR, 8)
2321 TEST_TYPE_ALIGN (WORD_SIZEDARR, 4)
2322 TEST_FIELD_SIZE (WORD_SIZEDARR, clSize, 4)
2323 TEST_FIELD_ALIGN (WORD_SIZEDARR, clSize, 4)
2324 TEST_FIELD_OFFSET(WORD_SIZEDARR, clSize, 0)
2325 TEST_FIELD_SIZE (WORD_SIZEDARR, pData, 4)
2326 TEST_FIELD_ALIGN (WORD_SIZEDARR, pData, 4)
2327 TEST_FIELD_OFFSET(WORD_SIZEDARR, pData, 4)
2328}
2329
2331{
2332 /* remoteMETAFILEPICT */
2333 TEST_TYPE_SIZE (remoteMETAFILEPICT, 16)
2334 TEST_TYPE_ALIGN (remoteMETAFILEPICT, 4)
2335 TEST_FIELD_SIZE (remoteMETAFILEPICT, mm, 4)
2336 TEST_FIELD_ALIGN (remoteMETAFILEPICT, mm, 4)
2337 TEST_FIELD_OFFSET(remoteMETAFILEPICT, mm, 0)
2338 TEST_FIELD_SIZE (remoteMETAFILEPICT, xExt, 4)
2339 TEST_FIELD_ALIGN (remoteMETAFILEPICT, xExt, 4)
2340 TEST_FIELD_OFFSET(remoteMETAFILEPICT, xExt, 4)
2341 TEST_FIELD_SIZE (remoteMETAFILEPICT, yExt, 4)
2342 TEST_FIELD_ALIGN (remoteMETAFILEPICT, yExt, 4)
2343 TEST_FIELD_OFFSET(remoteMETAFILEPICT, yExt, 8)
2344 TEST_FIELD_SIZE (remoteMETAFILEPICT, hMF, 4)
2345 TEST_FIELD_ALIGN (remoteMETAFILEPICT, hMF, 4)
2346 TEST_FIELD_OFFSET(remoteMETAFILEPICT, hMF, 12)
2347}
2348
2349static void test_pack_userBITMAP(void)
2350{
2351 /* userBITMAP */
2352 TEST_TYPE_SIZE (userBITMAP, 28)
2353 TEST_TYPE_ALIGN (userBITMAP, 4)
2354 TEST_FIELD_SIZE (userBITMAP, bmType, 4)
2355 TEST_FIELD_ALIGN (userBITMAP, bmType, 4)
2356 TEST_FIELD_OFFSET(userBITMAP, bmType, 0)
2357 TEST_FIELD_SIZE (userBITMAP, bmWidth, 4)
2358 TEST_FIELD_ALIGN (userBITMAP, bmWidth, 4)
2359 TEST_FIELD_OFFSET(userBITMAP, bmWidth, 4)
2360 TEST_FIELD_SIZE (userBITMAP, bmHeight, 4)
2361 TEST_FIELD_ALIGN (userBITMAP, bmHeight, 4)
2362 TEST_FIELD_OFFSET(userBITMAP, bmHeight, 8)
2363 TEST_FIELD_SIZE (userBITMAP, bmWidthBytes, 4)
2364 TEST_FIELD_ALIGN (userBITMAP, bmWidthBytes, 4)
2365 TEST_FIELD_OFFSET(userBITMAP, bmWidthBytes, 12)
2366 TEST_FIELD_SIZE (userBITMAP, bmPlanes, 2)
2367 TEST_FIELD_ALIGN (userBITMAP, bmPlanes, 2)
2368 TEST_FIELD_OFFSET(userBITMAP, bmPlanes, 16)
2369 TEST_FIELD_SIZE (userBITMAP, bmBitsPixel, 2)
2370 TEST_FIELD_ALIGN (userBITMAP, bmBitsPixel, 2)
2371 TEST_FIELD_OFFSET(userBITMAP, bmBitsPixel, 18)
2372 TEST_FIELD_SIZE (userBITMAP, cbSize, 4)
2373 TEST_FIELD_ALIGN (userBITMAP, cbSize, 4)
2374 TEST_FIELD_OFFSET(userBITMAP, cbSize, 20)
2375 TEST_FIELD_SIZE (userBITMAP, pBuffer, 1)
2376 TEST_FIELD_ALIGN (userBITMAP, pBuffer, 1)
2377 TEST_FIELD_OFFSET(userBITMAP, pBuffer, 24)
2378}
2379
2381{
2382 /* userCLIPFORMAT */
2383 TEST_FIELD_SIZE (userCLIPFORMAT, fContext, 4)
2384 TEST_FIELD_ALIGN (userCLIPFORMAT, fContext, 4)
2385 TEST_FIELD_OFFSET(userCLIPFORMAT, fContext, 0)
2386}
2387
2388static void test_pack_userHBITMAP(void)
2389{
2390 /* userHBITMAP */
2391 TEST_FIELD_SIZE (userHBITMAP, fContext, 4)
2392 TEST_FIELD_ALIGN (userHBITMAP, fContext, 4)
2393 TEST_FIELD_OFFSET(userHBITMAP, fContext, 0)
2394}
2395
2397{
2398 /* userHENHMETAFILE */
2399 TEST_FIELD_SIZE (userHENHMETAFILE, fContext, 4)
2400 TEST_FIELD_ALIGN (userHENHMETAFILE, fContext, 4)
2401 TEST_FIELD_OFFSET(userHENHMETAFILE, fContext, 0)
2402}
2403
2404static void test_pack_userHGLOBAL(void)
2405{
2406 /* userHGLOBAL */
2407 TEST_FIELD_SIZE (userHGLOBAL, fContext, 4)
2408 TEST_FIELD_ALIGN (userHGLOBAL, fContext, 4)
2409 TEST_FIELD_OFFSET(userHGLOBAL, fContext, 0)
2410}
2411
2413{
2414 /* userHMETAFILE */
2415 TEST_FIELD_SIZE (userHMETAFILE, fContext, 4)
2416 TEST_FIELD_ALIGN (userHMETAFILE, fContext, 4)
2417 TEST_FIELD_OFFSET(userHMETAFILE, fContext, 0)
2418}
2419
2421{
2422 /* userHMETAFILEPICT */
2423 TEST_FIELD_SIZE (userHMETAFILEPICT, fContext, 4)
2424 TEST_FIELD_ALIGN (userHMETAFILEPICT, fContext, 4)
2425 TEST_FIELD_OFFSET(userHMETAFILEPICT, fContext, 0)
2426}
2427
2428static void test_pack_userHPALETTE(void)
2429{
2430 /* userHPALETTE */
2431 TEST_FIELD_SIZE (userHPALETTE, fContext, 4)
2432 TEST_FIELD_ALIGN (userHPALETTE, fContext, 4)
2433 TEST_FIELD_OFFSET(userHPALETTE, fContext, 0)
2434}
2435
2436static void test_pack_wireBSTR(void)
2437{
2438 /* wireBSTR */
2439 TEST_TYPE_SIZE (wireBSTR, 4)
2440 TEST_TYPE_ALIGN (wireBSTR, 4)
2441 TEST_TARGET_SIZE (wireBSTR, 12)
2442 TEST_TARGET_ALIGN(wireBSTR, 4)
2443}
2444
2446{
2447 /* wireCLIPFORMAT */
2448 TEST_TYPE_SIZE (wireCLIPFORMAT, 4)
2449 TEST_TYPE_ALIGN (wireCLIPFORMAT, 4)
2450}
2451
2452static void test_pack_wireHBITMAP(void)
2453{
2454 /* wireHBITMAP */
2455 TEST_TYPE_SIZE (wireHBITMAP, 4)
2456 TEST_TYPE_ALIGN (wireHBITMAP, 4)
2457}
2458
2460{
2461 /* wireHENHMETAFILE */
2462 TEST_TYPE_SIZE (wireHENHMETAFILE, 4)
2463 TEST_TYPE_ALIGN (wireHENHMETAFILE, 4)
2464}
2465
2466static void test_pack_wireHGLOBAL(void)
2467{
2468 /* wireHGLOBAL */
2469 TEST_TYPE_SIZE (wireHGLOBAL, 4)
2470 TEST_TYPE_ALIGN (wireHGLOBAL, 4)
2471}
2472
2474{
2475 /* wireHMETAFILE */
2476 TEST_TYPE_SIZE (wireHMETAFILE, 4)
2477 TEST_TYPE_ALIGN (wireHMETAFILE, 4)
2478}
2479
2481{
2482 /* wireHMETAFILEPICT */
2483 TEST_TYPE_SIZE (wireHMETAFILEPICT, 4)
2484 TEST_TYPE_ALIGN (wireHMETAFILEPICT, 4)
2485}
2486
2487static void test_pack_wireHPALETTE(void)
2488{
2489 /* wireHPALETTE */
2490 TEST_TYPE_SIZE (wireHPALETTE, 4)
2491 TEST_TYPE_ALIGN (wireHPALETTE, 4)
2492}
2493
2494static void test_pack_CLSID(void)
2495{
2496 /* CLSID */
2497 TEST_TYPE_SIZE (CLSID, 16)
2499}
2500
2501static void test_pack_FMTID(void)
2502{
2503 /* FMTID */
2504 TEST_TYPE_SIZE (FMTID, 16)
2506}
2507
2508static void test_pack_IID(void)
2509{
2510 /* IID */
2511 TEST_TYPE_SIZE (IID, 16)
2512 TEST_TYPE_ALIGN (IID, 4)
2513}
2514
2515static void test_pack_APPBARDATA(void)
2516{
2517 /* APPBARDATA (pack 1) */
2520 TEST_FIELD_SIZE (APPBARDATA, cbSize, 4)
2521 TEST_FIELD_ALIGN (APPBARDATA, cbSize, 1)
2522 TEST_FIELD_OFFSET(APPBARDATA, cbSize, 0)
2526 TEST_FIELD_SIZE (APPBARDATA, uCallbackMessage, 4)
2527 TEST_FIELD_ALIGN (APPBARDATA, uCallbackMessage, 1)
2528 TEST_FIELD_OFFSET(APPBARDATA, uCallbackMessage, 8)
2529 TEST_FIELD_SIZE (APPBARDATA, uEdge, 4)
2530 TEST_FIELD_ALIGN (APPBARDATA, uEdge, 1)
2531 TEST_FIELD_OFFSET(APPBARDATA, uEdge, 12)
2532 TEST_FIELD_SIZE (APPBARDATA, rc, 16)
2538}
2539
2540static void test_pack_DRAGINFOA(void)
2541{
2542 /* DRAGINFOA (pack 1) */
2543 TEST_TYPE_SIZE (DRAGINFOA, 24)
2544 TEST_TYPE_ALIGN (DRAGINFOA, 1)
2545 TEST_FIELD_SIZE (DRAGINFOA, uSize, 4)
2546 TEST_FIELD_ALIGN (DRAGINFOA, uSize, 1)
2547 TEST_FIELD_OFFSET(DRAGINFOA, uSize, 0)
2548 TEST_FIELD_SIZE (DRAGINFOA, pt, 8)
2549 TEST_FIELD_ALIGN (DRAGINFOA, pt, 1)
2550 TEST_FIELD_OFFSET(DRAGINFOA, pt, 4)
2551 TEST_FIELD_SIZE (DRAGINFOA, fNC, 4)
2552 TEST_FIELD_ALIGN (DRAGINFOA, fNC, 1)
2553 TEST_FIELD_OFFSET(DRAGINFOA, fNC, 12)
2554 TEST_FIELD_SIZE (DRAGINFOA, lpFileList, 4)
2555 TEST_FIELD_ALIGN (DRAGINFOA, lpFileList, 1)
2556 TEST_FIELD_OFFSET(DRAGINFOA, lpFileList, 16)
2557 TEST_FIELD_SIZE (DRAGINFOA, grfKeyState, 4)
2558 TEST_FIELD_ALIGN (DRAGINFOA, grfKeyState, 1)
2559 TEST_FIELD_OFFSET(DRAGINFOA, grfKeyState, 20)
2560}
2561
2562static void test_pack_DRAGINFOW(void)
2563{
2564 /* DRAGINFOW (pack 1) */
2565 TEST_TYPE_SIZE (DRAGINFOW, 24)
2566 TEST_TYPE_ALIGN (DRAGINFOW, 1)
2567 TEST_FIELD_SIZE (DRAGINFOW, uSize, 4)
2568 TEST_FIELD_ALIGN (DRAGINFOW, uSize, 1)
2569 TEST_FIELD_OFFSET(DRAGINFOW, uSize, 0)
2570 TEST_FIELD_SIZE (DRAGINFOW, pt, 8)
2571 TEST_FIELD_ALIGN (DRAGINFOW, pt, 1)
2572 TEST_FIELD_OFFSET(DRAGINFOW, pt, 4)
2573 TEST_FIELD_SIZE (DRAGINFOW, fNC, 4)
2574 TEST_FIELD_ALIGN (DRAGINFOW, fNC, 1)
2575 TEST_FIELD_OFFSET(DRAGINFOW, fNC, 12)
2576 TEST_FIELD_SIZE (DRAGINFOW, lpFileList, 4)
2577 TEST_FIELD_ALIGN (DRAGINFOW, lpFileList, 1)
2578 TEST_FIELD_OFFSET(DRAGINFOW, lpFileList, 16)
2579 TEST_FIELD_SIZE (DRAGINFOW, grfKeyState, 4)
2580 TEST_FIELD_ALIGN (DRAGINFOW, grfKeyState, 1)
2581 TEST_FIELD_OFFSET(DRAGINFOW, grfKeyState, 20)
2582}
2583
2584static void test_pack_FILEOP_FLAGS(void)
2585{
2586 /* FILEOP_FLAGS */
2590}
2591
2592static void test_pack_LPDRAGINFOA(void)
2593{
2594 /* LPDRAGINFOA */
2595 TEST_TYPE_SIZE (LPDRAGINFOA, 4)
2596 TEST_TYPE_ALIGN (LPDRAGINFOA, 4)
2597 TEST_TARGET_SIZE (LPDRAGINFOA, 24)
2598 TEST_TARGET_ALIGN(LPDRAGINFOA, 1)
2599}
2600
2601static void test_pack_LPDRAGINFOW(void)
2602{
2603 /* LPDRAGINFOW */
2604 TEST_TYPE_SIZE (LPDRAGINFOW, 4)
2605 TEST_TYPE_ALIGN (LPDRAGINFOW, 4)
2606 TEST_TARGET_SIZE (LPDRAGINFOW, 24)
2607 TEST_TARGET_ALIGN(LPDRAGINFOW, 1)
2608}
2609
2611{
2612 /* LPSHELLEXECUTEINFOA */
2615}
2616
2618{
2619 /* LPSHELLEXECUTEINFOW */
2622}
2623
2625{
2626 /* LPSHFILEOPSTRUCTA */
2631}
2632
2634{
2635 /* LPSHFILEOPSTRUCTW */
2640}
2641
2643{
2644 /* LPSHNAMEMAPPINGA */
2649}
2650
2652{
2653 /* LPSHNAMEMAPPINGW */
2658}
2659
2661{
2662 /* NOTIFYICONDATAA (pack 1) */
2663 TEST_FIELD_SIZE (NOTIFYICONDATAA, cbSize, 4)
2675 TEST_FIELD_SIZE (NOTIFYICONDATAA, uCallbackMessage, 4)
2676 TEST_FIELD_ALIGN (NOTIFYICONDATAA, uCallbackMessage, 1)
2677 TEST_FIELD_OFFSET(NOTIFYICONDATAA, uCallbackMessage, 16)
2681 TEST_FIELD_SIZE (NOTIFYICONDATAA, szTip, 128)
2684 TEST_FIELD_SIZE (NOTIFYICONDATAA, dwState, 4)
2685 TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwState, 1)
2686 TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwState, 152)
2687 TEST_FIELD_SIZE (NOTIFYICONDATAA, dwStateMask, 4)
2688 TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwStateMask, 1)
2689 TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwStateMask, 156)
2690 TEST_FIELD_SIZE (NOTIFYICONDATAA, szInfo, 256)
2693}
2694
2696{
2697 /* NOTIFYICONDATAW (pack 1) */
2698 TEST_FIELD_SIZE (NOTIFYICONDATAW, cbSize, 4)
2710 TEST_FIELD_SIZE (NOTIFYICONDATAW, uCallbackMessage, 4)
2711 TEST_FIELD_ALIGN (NOTIFYICONDATAW, uCallbackMessage, 1)
2712 TEST_FIELD_OFFSET(NOTIFYICONDATAW, uCallbackMessage, 16)
2716 TEST_FIELD_SIZE (NOTIFYICONDATAW, szTip, 256)
2719 TEST_FIELD_SIZE (NOTIFYICONDATAW, dwState, 4)
2720 TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwState, 1)
2721 TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwState, 280)
2722 TEST_FIELD_SIZE (NOTIFYICONDATAW, dwStateMask, 4)
2723 TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwStateMask, 1)
2724 TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwStateMask, 284)
2725 TEST_FIELD_SIZE (NOTIFYICONDATAW, szInfo, 512)
2728}
2729
2730static void test_pack_PAPPBARDATA(void)
2731{
2732 /* PAPPBARDATA */
2737}
2738
2740{
2741 /* PNOTIFYICONDATAA */
2744}
2745
2747{
2748 /* PNOTIFYICONDATAW */
2751}
2752
2754{
2755 /* PRINTEROP_FLAGS */
2759}
2760
2762{
2763 /* SHELLEXECUTEINFOA (pack 1) */
2779 TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpParameters, 4)
2780 TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpParameters, 1)
2781 TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpParameters, 20)
2788 TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hInstApp, 4)
2789 TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hInstApp, 1)
2791 TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpIDList, 4)
2792 TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpIDList, 1)
2797 TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hkeyClass, 4)
2798 TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hkeyClass, 1)
2799 TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hkeyClass, 44)
2800 TEST_FIELD_SIZE (SHELLEXECUTEINFOA, dwHotKey, 4)
2801 TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, dwHotKey, 1)
2803}
2804
2806{
2807 /* SHELLEXECUTEINFOW (pack 1) */
2823 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpParameters, 4)
2824 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpParameters, 1)
2825 TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpParameters, 20)
2832 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hInstApp, 4)
2833 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hInstApp, 1)
2835 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpIDList, 4)
2836 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpIDList, 1)
2841 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hkeyClass, 4)
2842 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hkeyClass, 1)
2843 TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hkeyClass, 44)
2844 TEST_FIELD_SIZE (SHELLEXECUTEINFOW, dwHotKey, 4)
2845 TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, dwHotKey, 1)
2847}
2848
2849static void test_pack_SHFILEINFOA(void)
2850{
2851 /* SHFILEINFOA (pack 1) */
2857 TEST_FIELD_SIZE (SHFILEINFOA, iIcon, 4)
2858 TEST_FIELD_ALIGN (SHFILEINFOA, iIcon, 1)
2863 TEST_FIELD_SIZE (SHFILEINFOA, szDisplayName, 260)
2864 TEST_FIELD_ALIGN (SHFILEINFOA, szDisplayName, 1)
2865 TEST_FIELD_OFFSET(SHFILEINFOA, szDisplayName, 12)
2869}
2870
2871static void test_pack_SHFILEINFOW(void)
2872{
2873 /* SHFILEINFOW (pack 1) */
2879 TEST_FIELD_SIZE (SHFILEINFOW, iIcon, 4)
2880 TEST_FIELD_ALIGN (SHFILEINFOW, iIcon, 1)
2885 TEST_FIELD_SIZE (SHFILEINFOW, szDisplayName, 520)
2886 TEST_FIELD_ALIGN (SHFILEINFOW, szDisplayName, 1)
2887 TEST_FIELD_OFFSET(SHFILEINFOW, szDisplayName, 12)
2891}
2892
2894{
2895 /* SHFILEOPSTRUCTA (pack 1) */
2910 TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fFlags, 2)
2913 TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
2914 TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fAnyOperationsAborted, 1)
2915 TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fAnyOperationsAborted, 18)
2916 TEST_FIELD_SIZE (SHFILEOPSTRUCTA, hNameMappings, 4)
2917 TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hNameMappings, 1)
2918 TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hNameMappings, 22)
2919 TEST_FIELD_SIZE (SHFILEOPSTRUCTA, lpszProgressTitle, 4)
2920 TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, lpszProgressTitle, 1)
2921 TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, lpszProgressTitle, 26)
2922}
2923
2925{
2926 /* SHFILEOPSTRUCTW (pack 1) */
2941 TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fFlags, 2)
2944 TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
2945 TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fAnyOperationsAborted, 1)
2946 TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fAnyOperationsAborted, 18)
2947 TEST_FIELD_SIZE (SHFILEOPSTRUCTW, hNameMappings, 4)
2948 TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hNameMappings, 1)
2949 TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hNameMappings, 22)
2950 TEST_FIELD_SIZE (SHFILEOPSTRUCTW, lpszProgressTitle, 4)
2951 TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, lpszProgressTitle, 1)
2952 TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, lpszProgressTitle, 26)
2953}
2954
2956{
2957 /* SHNAMEMAPPINGA (pack 1) */
2960 TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszOldPath, 4)
2961 TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszOldPath, 1)
2962 TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszOldPath, 0)
2963 TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszNewPath, 4)
2964 TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszNewPath, 1)
2965 TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszNewPath, 4)
2966 TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchOldPath, 4)
2967 TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchOldPath, 1)
2968 TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchOldPath, 8)
2969 TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchNewPath, 4)
2970 TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchNewPath, 1)
2971 TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchNewPath, 12)
2972}
2973
2975{
2976 /* SHNAMEMAPPINGW (pack 1) */
2979 TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszOldPath, 4)
2980 TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszOldPath, 1)
2981 TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszOldPath, 0)
2982 TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszNewPath, 4)
2983 TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszNewPath, 1)
2984 TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszNewPath, 4)
2985 TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchOldPath, 4)
2986 TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchOldPath, 1)
2987 TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchOldPath, 8)
2988 TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchNewPath, 4)
2989 TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchNewPath, 1)
2990 TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchNewPath, 12)
2991}
2992
2993static void test_pack_ITEMIDLIST(void)
2994{
2995 /* ITEMIDLIST (pack 1) */
2998 TEST_FIELD_SIZE (ITEMIDLIST, mkid, 3)
2999 TEST_FIELD_ALIGN (ITEMIDLIST, mkid, 1)
3001}
3002
3004{
3005 /* LPCITEMIDLIST */
3010}
3011
3012static void test_pack_LPCSHITEMID(void)
3013{
3014 /* LPCSHITEMID */
3019}
3020
3021static void test_pack_LPITEMIDLIST(void)
3022{
3023 /* LPITEMIDLIST */
3026}
3027
3029{
3030 /* LPSHELLDETAILS */
3033}
3034
3035static void test_pack_LPSHITEMID(void)
3036{
3037 /* LPSHITEMID */
3040}
3041
3042static void test_pack_LPSTRRET(void)
3043{
3044 /* LPSTRRET */
3047}
3048
3049static void test_pack_SHELLDETAILS(void)
3050{
3051 /* SHELLDETAILS (pack 1) */
3055 TEST_FIELD_SIZE (SHELLDETAILS, cxChar, 4)
3056 TEST_FIELD_ALIGN (SHELLDETAILS, cxChar, 1)
3058}
3059
3060static void test_pack_SHITEMID(void)
3061{
3062 /* SHITEMID (pack 1) */
3068 TEST_FIELD_SIZE (SHITEMID, abID, 1)
3069 TEST_FIELD_ALIGN (SHITEMID, abID, 1)
3070 TEST_FIELD_OFFSET(SHITEMID, abID, 2)
3071}
3072
3073static void test_pack_STRRET(void)
3074{
3075 /* STRRET (pack 8) */
3076 TEST_FIELD_SIZE (STRRET, uType, 4)
3077 TEST_FIELD_ALIGN (STRRET, uType, 4)
3078 TEST_FIELD_OFFSET(STRRET, uType, 0)
3079}
3080
3082{
3083 /* AUTO_SCROLL_DATA (pack 1) */
3086 TEST_FIELD_SIZE (AUTO_SCROLL_DATA, iNextSample, 4)
3087 TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, iNextSample, 1)
3088 TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, iNextSample, 0)
3089 TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwLastScroll, 4)
3090 TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwLastScroll, 1)
3091 TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwLastScroll, 4)
3098 TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwTimes, 12)
3101}
3102
3103static void test_pack_BFFCALLBACK(void)
3104{
3105 /* BFFCALLBACK */
3108}
3109
3110static void test_pack_BROWSEINFOA(void)
3111{
3112 /* BROWSEINFOA (pack 8) */
3115 TEST_FIELD_SIZE (BROWSEINFOA, hwndOwner, 4)
3116 TEST_FIELD_ALIGN (BROWSEINFOA, hwndOwner, 4)
3117 TEST_FIELD_OFFSET(BROWSEINFOA, hwndOwner, 0)
3118 TEST_FIELD_SIZE (BROWSEINFOA, pidlRoot, 4)
3119 TEST_FIELD_ALIGN (BROWSEINFOA, pidlRoot, 4)
3120 TEST_FIELD_OFFSET(BROWSEINFOA, pidlRoot, 4)
3121 TEST_FIELD_SIZE (BROWSEINFOA, pszDisplayName, 4)
3122 TEST_FIELD_ALIGN (BROWSEINFOA, pszDisplayName, 4)
3123 TEST_FIELD_OFFSET(BROWSEINFOA, pszDisplayName, 8)
3124 TEST_FIELD_SIZE (BROWSEINFOA, lpszTitle, 4)
3125 TEST_FIELD_ALIGN (BROWSEINFOA, lpszTitle, 4)
3126 TEST_FIELD_OFFSET(BROWSEINFOA, lpszTitle, 12)
3127 TEST_FIELD_SIZE (BROWSEINFOA, ulFlags, 4)
3128 TEST_FIELD_ALIGN (BROWSEINFOA, ulFlags, 4)
3129 TEST_FIELD_OFFSET(BROWSEINFOA, ulFlags, 16)
3130 TEST_FIELD_SIZE (BROWSEINFOA, lpfn, 4)
3131 TEST_FIELD_ALIGN (BROWSEINFOA, lpfn, 4)
3136 TEST_FIELD_SIZE (BROWSEINFOA, iImage, 4)
3137 TEST_FIELD_ALIGN (BROWSEINFOA, iImage, 4)
3138 TEST_FIELD_OFFSET(BROWSEINFOA, iImage, 28)
3139}
3140
3141static void test_pack_BROWSEINFOW(void)
3142{
3143 /* BROWSEINFOW (pack 8) */
3146 TEST_FIELD_SIZE (BROWSEINFOW, hwndOwner, 4)
3147 TEST_FIELD_ALIGN (BROWSEINFOW, hwndOwner, 4)
3148 TEST_FIELD_OFFSET(BROWSEINFOW, hwndOwner, 0)
3149 TEST_FIELD_SIZE (BROWSEINFOW, pidlRoot, 4)
3150 TEST_FIELD_ALIGN (BROWSEINFOW, pidlRoot, 4)
3151 TEST_FIELD_OFFSET(BROWSEINFOW, pidlRoot, 4)
3152 TEST_FIELD_SIZE (BROWSEINFOW, pszDisplayName, 4)
3153 TEST_FIELD_ALIGN (BROWSEINFOW, pszDisplayName, 4)
3154 TEST_FIELD_OFFSET(BROWSEINFOW, pszDisplayName, 8)
3155 TEST_FIELD_SIZE (BROWSEINFOW, lpszTitle, 4)
3156 TEST_FIELD_ALIGN (BROWSEINFOW, lpszTitle, 4)
3157 TEST_FIELD_OFFSET(BROWSEINFOW, lpszTitle, 12)
3158 TEST_FIELD_SIZE (BROWSEINFOW, ulFlags, 4)
3159 TEST_FIELD_ALIGN (BROWSEINFOW, ulFlags, 4)
3160 TEST_FIELD_OFFSET(BROWSEINFOW, ulFlags, 16)
3161 TEST_FIELD_SIZE (BROWSEINFOW, lpfn, 4)
3162 TEST_FIELD_ALIGN (BROWSEINFOW, lpfn, 4)
3167 TEST_FIELD_SIZE (BROWSEINFOW, iImage, 4)
3168 TEST_FIELD_ALIGN (BROWSEINFOW, iImage, 4)
3169 TEST_FIELD_OFFSET(BROWSEINFOW, iImage, 28)
3170}
3171
3172static void test_pack_CABINETSTATE(void)
3173{
3174 /* CABINETSTATE (pack 1) */
3177 TEST_FIELD_SIZE (CABINETSTATE, cLength, 2)
3178 TEST_FIELD_ALIGN (CABINETSTATE, cLength, 1)
3179 TEST_FIELD_OFFSET(CABINETSTATE, cLength, 0)
3180 TEST_FIELD_SIZE (CABINETSTATE, nVersion, 2)
3181 TEST_FIELD_ALIGN (CABINETSTATE, nVersion, 1)
3182 TEST_FIELD_OFFSET(CABINETSTATE, nVersion, 2)
3183 TEST_FIELD_SIZE (CABINETSTATE, fMenuEnumFilter, 4)
3184 TEST_FIELD_ALIGN (CABINETSTATE, fMenuEnumFilter, 1)
3185 TEST_FIELD_OFFSET(CABINETSTATE, fMenuEnumFilter, 8)
3186}
3187
3188static void test_pack_CIDA(void)
3189{
3190 /* CIDA (pack 1) */
3191 TEST_TYPE_SIZE (CIDA, 8)
3193 TEST_FIELD_SIZE (CIDA, cidl, 4)
3194 TEST_FIELD_ALIGN (CIDA, cidl, 1)
3195 TEST_FIELD_OFFSET(CIDA, cidl, 0)
3196 TEST_FIELD_SIZE (CIDA, aoffset, 4)
3197 TEST_FIELD_ALIGN (CIDA, aoffset, 1)
3198 TEST_FIELD_OFFSET(CIDA, aoffset, 4)
3199}
3200
3201static void test_pack_CSFV(void)
3202{
3203 /* CSFV (pack 8) */
3204 TEST_FIELD_SIZE (CSFV, cbSize, 4)
3205 TEST_FIELD_ALIGN (CSFV, cbSize, 4)
3206 TEST_FIELD_OFFSET(CSFV, cbSize, 0)
3207 TEST_FIELD_SIZE (CSFV, pshf, 4)
3208 TEST_FIELD_ALIGN (CSFV, pshf, 4)
3209 TEST_FIELD_OFFSET(CSFV, pshf, 4)
3210 TEST_FIELD_SIZE (CSFV, psvOuter, 4)
3211 TEST_FIELD_ALIGN (CSFV, psvOuter, 4)
3212 TEST_FIELD_OFFSET(CSFV, psvOuter, 8)
3213 TEST_FIELD_SIZE (CSFV, pidl, 4)
3214 TEST_FIELD_ALIGN (CSFV, pidl, 4)
3215 TEST_FIELD_OFFSET(CSFV, pidl, 12)
3216 TEST_FIELD_SIZE (CSFV, lEvents, 4)
3217 TEST_FIELD_ALIGN (CSFV, lEvents, 4)
3218 TEST_FIELD_OFFSET(CSFV, lEvents, 16)
3219 TEST_FIELD_SIZE (CSFV, pfnCallback, 4)
3220 TEST_FIELD_ALIGN (CSFV, pfnCallback, 4)
3221 TEST_FIELD_OFFSET(CSFV, pfnCallback, 20)
3222}
3223
3224static void test_pack_DROPFILES(void)
3225{
3226 /* DROPFILES (pack 1) */
3229 TEST_FIELD_SIZE (DROPFILES, pFiles, 4)
3230 TEST_FIELD_ALIGN (DROPFILES, pFiles, 1)
3231 TEST_FIELD_OFFSET(DROPFILES, pFiles, 0)
3235 TEST_FIELD_SIZE (DROPFILES, fNC, 4)
3236 TEST_FIELD_ALIGN (DROPFILES, fNC, 1)
3238 TEST_FIELD_SIZE (DROPFILES, fWide, 4)
3239 TEST_FIELD_ALIGN (DROPFILES, fWide, 1)
3240 TEST_FIELD_OFFSET(DROPFILES, fWide, 16)
3241}
3242
3244{
3245 /* FILEDESCRIPTORA (pack 1) */
3257 TEST_FIELD_SIZE (FILEDESCRIPTORA, pointl, 8)
3263 TEST_FIELD_SIZE (FILEDESCRIPTORA, ftCreationTime, 8)
3264 TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftCreationTime, 1)
3265 TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftCreationTime, 40)
3266 TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastAccessTime, 8)
3267 TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastAccessTime, 1)
3268 TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastAccessTime, 48)
3269 TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastWriteTime, 8)
3270 TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastWriteTime, 1)
3271 TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastWriteTime, 56)
3272 TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeHigh, 4)
3273 TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeHigh, 1)
3274 TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeHigh, 64)
3275 TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeLow, 4)
3276 TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeLow, 1)
3277 TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeLow, 68)
3278 TEST_FIELD_SIZE (FILEDESCRIPTORA, cFileName, 260)
3279 TEST_FIELD_ALIGN (FILEDESCRIPTORA, cFileName, 1)
3280 TEST_FIELD_OFFSET(FILEDESCRIPTORA, cFileName, 72)
3281}
3282
3284{
3285 /* FILEDESCRIPTORW (pack 1) */
3297 TEST_FIELD_SIZE (FILEDESCRIPTORW, pointl, 8)
3303 TEST_FIELD_SIZE (FILEDESCRIPTORW, ftCreationTime, 8)
3304 TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftCreationTime, 1)
3305 TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftCreationTime, 40)
3306 TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastAccessTime, 8)
3307 TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastAccessTime, 1)
3308 TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastAccessTime, 48)
3309 TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastWriteTime, 8)
3310 TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastWriteTime, 1)
3311 TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastWriteTime, 56)
3312 TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeHigh, 4)
3313 TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeHigh, 1)
3314 TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeHigh, 64)
3315 TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeLow, 4)
3316 TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeLow, 1)
3317 TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeLow, 68)
3318 TEST_FIELD_SIZE (FILEDESCRIPTORW, cFileName, 520)
3319 TEST_FIELD_ALIGN (FILEDESCRIPTORW, cFileName, 1)
3320 TEST_FIELD_OFFSET(FILEDESCRIPTORW, cFileName, 72)
3321}
3322
3324{
3325 /* FILEGROUPDESCRIPTORA (pack 1) */
3334}
3335
3337{
3338 /* FILEGROUPDESCRIPTORW (pack 1) */
3347}
3348
3349static void test_pack_ITEMSPACING(void)
3350{
3351 /* ITEMSPACING (pack 8) */
3354 TEST_FIELD_SIZE (ITEMSPACING, cxSmall, 4)
3355 TEST_FIELD_ALIGN (ITEMSPACING, cxSmall, 4)
3356 TEST_FIELD_OFFSET(ITEMSPACING, cxSmall, 0)
3357 TEST_FIELD_SIZE (ITEMSPACING, cySmall, 4)
3358 TEST_FIELD_ALIGN (ITEMSPACING, cySmall, 4)
3359 TEST_FIELD_OFFSET(ITEMSPACING, cySmall, 4)
3360 TEST_FIELD_SIZE (ITEMSPACING, cxLarge, 4)
3361 TEST_FIELD_ALIGN (ITEMSPACING, cxLarge, 4)
3362 TEST_FIELD_OFFSET(ITEMSPACING, cxLarge, 8)
3363 TEST_FIELD_SIZE (ITEMSPACING, cyLarge, 4)
3364 TEST_FIELD_ALIGN (ITEMSPACING, cyLarge, 4)
3365 TEST_FIELD_OFFSET(ITEMSPACING, cyLarge, 12)
3366}
3367
3369{
3370 /* LPBROWSEINFOA */
3375}
3376
3378{
3379 /* LPBROWSEINFOW */
3384}
3385
3387{
3388 /* LPCABINETSTATE */
3393}
3394
3395static void test_pack_LPCSFV(void)
3396{
3397 /* LPCSFV */
3400}
3401
3402static void test_pack_LPDROPFILES(void)
3403{
3404 /* LPDROPFILES */
3409}
3410
3412{
3413 /* LPFILEDESCRIPTORA */
3418}
3419
3421{
3422 /* LPFILEDESCRIPTORW */
3427}
3428
3430{
3431 /* LPFILEGROUPDESCRIPTORA */
3436}
3437
3439{
3440 /* LPFILEGROUPDESCRIPTORW */
3445}
3446
3448{
3449 /* LPFNVIEWCALLBACK */
3452}
3453
3454static void test_pack_LPIDA(void)
3455{
3456 /* LPIDA */
3461}
3462
3463static void test_pack_LPQCMINFO(void)
3464{
3465 /* LPQCMINFO */
3470}
3471
3473{
3474 /* LPSHChangeDWORDAsIDList */
3479}
3480
3482{
3483 /* LPSHChangeProductKeyAsIDList */
3488}
3489
3491{
3492 /* LPSHDESCRIPTIONID */
3497}
3498
3500{
3501 /* LPSHELLFLAGSTATE */
3506}
3507
3508static void test_pack_LPSHELLSTATE(void)
3509{
3510 /* LPSHELLSTATE */
3515}
3516
3517static void test_pack_LPTBINFO(void)
3518{
3519 /* LPTBINFO */
3524}
3525
3526static void test_pack_PBROWSEINFOA(void)
3527{
3528 /* PBROWSEINFOA */
3533}
3534
3535static void test_pack_PBROWSEINFOW(void)
3536{
3537 /* PBROWSEINFOW */
3542}
3543
3544static void test_pack_QCMINFO(void)
3545{
3546 /* QCMINFO (pack 8) */
3552 TEST_FIELD_SIZE (QCMINFO, indexMenu, 4)
3553 TEST_FIELD_ALIGN (QCMINFO, indexMenu, 4)
3554 TEST_FIELD_OFFSET(QCMINFO, indexMenu, 4)
3555 TEST_FIELD_SIZE (QCMINFO, idCmdFirst, 4)
3556 TEST_FIELD_ALIGN (QCMINFO, idCmdFirst, 4)
3557 TEST_FIELD_OFFSET(QCMINFO, idCmdFirst, 8)
3558 TEST_FIELD_SIZE (QCMINFO, idCmdLast, 4)
3559 TEST_FIELD_ALIGN (QCMINFO, idCmdLast, 4)
3560 TEST_FIELD_OFFSET(QCMINFO, idCmdLast, 12)
3561 TEST_FIELD_SIZE (QCMINFO, pIdMap, 4)
3562 TEST_FIELD_ALIGN (QCMINFO, pIdMap, 4)
3563 TEST_FIELD_OFFSET(QCMINFO, pIdMap, 16)
3564}
3565
3567{
3568 /* QCMINFO_IDMAP (pack 8) */
3571 TEST_FIELD_SIZE (QCMINFO_IDMAP, nMaxIds, 4)
3572 TEST_FIELD_ALIGN (QCMINFO_IDMAP, nMaxIds, 4)
3573 TEST_FIELD_OFFSET(QCMINFO_IDMAP, nMaxIds, 0)
3574 TEST_FIELD_SIZE (QCMINFO_IDMAP, pIdList, 8)
3575 TEST_FIELD_ALIGN (QCMINFO_IDMAP, pIdList, 4)
3576 TEST_FIELD_OFFSET(QCMINFO_IDMAP, pIdList, 4)
3577}
3578
3580{
3581 /* QCMINFO_IDMAP_PLACEMENT (pack 8) */
3590}
3591
3592static void test_pack_SFV_CREATE(void)
3593{
3594 /* SFV_CREATE (pack 8) */
3597 TEST_FIELD_SIZE (SFV_CREATE, cbSize, 4)
3598 TEST_FIELD_ALIGN (SFV_CREATE, cbSize, 4)
3599 TEST_FIELD_OFFSET(SFV_CREATE, cbSize, 0)
3600 TEST_FIELD_SIZE (SFV_CREATE, pshf, 4)
3601 TEST_FIELD_ALIGN (SFV_CREATE, pshf, 4)
3603 TEST_FIELD_SIZE (SFV_CREATE, psvOuter, 4)
3604 TEST_FIELD_ALIGN (SFV_CREATE, psvOuter, 4)
3605 TEST_FIELD_OFFSET(SFV_CREATE, psvOuter, 8)
3606 TEST_FIELD_SIZE (SFV_CREATE, psfvcb, 4)
3607 TEST_FIELD_ALIGN (SFV_CREATE, psfvcb, 4)
3608 TEST_FIELD_OFFSET(SFV_CREATE, psfvcb, 12)
3609}
3610
3612{
3613 /* SHChangeDWORDAsIDList (pack 1) */
3628}
3629
3631{
3632 /* SHChangeNotifyEntry (pack 1) */
3638 TEST_FIELD_SIZE (SHChangeNotifyEntry, fRecursive, 4)
3639 TEST_FIELD_ALIGN (SHChangeNotifyEntry, fRecursive, 1)
3641}
3642
3644{
3645 /* SHChangeProductKeyAsIDList (pack 1) */
3651 TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, wszProductKey, 78)
3657}
3658
3660{
3661 /* SHDESCRIPTIONID (pack 8) */
3664 TEST_FIELD_SIZE (SHDESCRIPTIONID, dwDescriptionId, 4)
3665 TEST_FIELD_ALIGN (SHDESCRIPTIONID, dwDescriptionId, 4)
3666 TEST_FIELD_OFFSET(SHDESCRIPTIONID, dwDescriptionId, 0)
3670}
3671
3673{
3674 /* SHELLFLAGSTATE (pack 1) */
3677}
3678
3679static void test_pack_SHELLSTATE(void)
3680{
3681 /* SHELLSTATE (pack 1) */
3684 TEST_FIELD_SIZE (SHELLSTATE, dwWin95Unused, 4)
3685 TEST_FIELD_ALIGN (SHELLSTATE, dwWin95Unused, 1)
3686 TEST_FIELD_OFFSET(SHELLSTATE, dwWin95Unused, 4)
3687 TEST_FIELD_SIZE (SHELLSTATE, uWin95Unused, 4)
3688 TEST_FIELD_ALIGN (SHELLSTATE, uWin95Unused, 1)
3689 TEST_FIELD_OFFSET(SHELLSTATE, uWin95Unused, 8)
3690 TEST_FIELD_SIZE (SHELLSTATE, lParamSort, 4)
3691 TEST_FIELD_ALIGN (SHELLSTATE, lParamSort, 1)
3692 TEST_FIELD_OFFSET(SHELLSTATE, lParamSort, 12)
3693 TEST_FIELD_SIZE (SHELLSTATE, iSortDirection, 4)
3694 TEST_FIELD_ALIGN (SHELLSTATE, iSortDirection, 1)
3695 TEST_FIELD_OFFSET(SHELLSTATE, iSortDirection, 16)
3699 TEST_FIELD_SIZE (SHELLSTATE, uNotUsed, 4)
3700 TEST_FIELD_ALIGN (SHELLSTATE, uNotUsed, 1)
3701 TEST_FIELD_OFFSET(SHELLSTATE, uNotUsed, 24)
3702}
3703
3704static void test_pack_TBINFO(void)
3705{
3706 /* TBINFO (pack 8) */
3709 TEST_FIELD_SIZE (TBINFO, cbuttons, 4)
3710 TEST_FIELD_ALIGN (TBINFO, cbuttons, 4)
3711 TEST_FIELD_OFFSET(TBINFO, cbuttons, 0)
3715}
3716
3717#endif /* _WIN64 */
3718
3719static void test_pack(void)
3720{
3755 test_pack_IID();
3858}
3859
3860START_TEST(generated)
3861{
3862 test_pack();
3863}
DWORD dwFileAttributes
#define START_TEST(x)
Definition: atltest.h:75
HWND hWnd
Definition: settings.c:17
LPARAM lParam
Definition: combotst.c:139
UINT uFlags
Definition: api.c:59
double DATE
Definition: compat.h:2253
WCHAR OLECHAR
Definition: compat.h:2292
OLECHAR * BSTR
Definition: compat.h:2293
unsigned short VARTYPE
Definition: compat.h:2254
short VARIANT_BOOL
Definition: compat.h:2290
LONG SCODE
Definition: compat.h:2252
static const WCHAR version[]
Definition: asmname.c:66
#define pt(x, y)
Definition: drawing.c:79
#define TEST_TARGET_SIZE(type, size)
Definition: generated.c:68
#define TEST_FIELD_OFFSET(type, field, offset)
Definition: generated.c:66
#define TEST_TARGET_ALIGN(type, align)
Definition: generated.c:62
static void test_pack(void)
Definition: generated.c:13122
#define TEST_TYPE_SIZE(type, size)
Definition: generated.c:50
#define TEST_FIELD_SIZE(type, field, size)
Definition: generated.c:69
#define TEST_TYPE_ALIGN(type, align)
Definition: generated.c:55
#define TEST_FIELD_ALIGN(type, field, align)
Definition: generated.c:63
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
static HMODULE MODULEINFO DWORD cb
Definition: module.c:33
static LPOLESTR
Definition: stg_prop.c:27
static const CLSID IPropertyStorage UINT *static const PROPSPEC PROPVARIANT *static UINT const PROPSPEC PROPVARIANT PROPID
Definition: shellole.c:78
HICON hIcon
Definition: msconfig.c:44
REFCLSID clsid
Definition: msctf.c:82
#define TEST_TYPE_UNSIGNED(type)
Definition: generated.c:71
#define TEST_TYPE_SIGNED(type)
Definition: generated.c:70
PVOID pBuffer
static void test_pack_RemHPALETTE(void)
Definition: generated.c:2254
static void test_pack_userHBITMAP(void)
Definition: generated.c:2388
static void test_pack_SHELLEXECUTEINFOA(void)
Definition: generated.c:2761
static void test_pack_LPSHFILEOPSTRUCTW(void)
Definition: generated.c:2633
static void test_pack_LPFILEGROUPDESCRIPTORW(void)
Definition: generated.c:3438
static void test_pack_SHNAMEMAPPINGW(void)
Definition: generated.c:2974
static void test_pack_RemHMETAFILEPICT(void)
Definition: generated.c:2232
static void test_pack_SHFILEOPSTRUCTA(void)
Definition: generated.c:2893
static void test_pack_LPSHNAMEMAPPINGW(void)
Definition: generated.c:2651
static void test_pack_SHFILEOPSTRUCTW(void)
Definition: generated.c:2924
static void test_pack_SHChangeProductKeyAsIDList(void)
Definition: generated.c:3643
static void test_pack_LPSHELLDETAILS(void)
Definition: generated.c:3028
static void test_pack_BSTRBLOB(void)
Definition: generated.c:1923
static void test_pack_LPSHChangeDWORDAsIDList(void)
Definition: generated.c:3472
static void test_pack_wireHMETAFILE(void)
Definition: generated.c:2473
static void test_pack_LPFNVIEWCALLBACK(void)
Definition: generated.c:3447
static void test_pack_LPBLOB(void)
Definition: generated.c:2121
static void test_pack_LPSHITEMID(void)
Definition: generated.c:3035
static void test_pack_DRAGINFOW(void)
Definition: generated.c:2562
static void test_pack_UP_FLAGGED_BYTE_BLOB(void)
Definition: generated.c:2283
static void test_pack_userHENHMETAFILE(void)
Definition: generated.c:2396
static void test_pack_userCLIPFORMAT(void)
Definition: generated.c:2380
static void test_pack_OLECHAR(void)
Definition: generated.c:2176
static void test_pack_DROPFILES(void)
Definition: generated.c:3224
static void test_pack_LPFILEDESCRIPTORW(void)
Definition: generated.c:3420
static void test_pack_DWORD_SIZEDARR(void)
Definition: generated.c:2056
static void test_pack_STRRET(void)
Definition: generated.c:3073
static void test_pack_SHFILEINFOW(void)
Definition: generated.c:2871
static void test_pack_QCMINFO_IDMAP(void)
Definition: generated.c:3566
static void test_pack_CLIPFORMAT(void)
Definition: generated.c:1978
static void test_pack_LPFILEGROUPDESCRIPTORA(void)
Definition: generated.c:3429
static void test_pack_NOTIFYICONDATAA(void)
Definition: generated.c:2660
static void test_pack_UP_FLAGGED_WORD_BLOB(void)
Definition: generated.c:2292
static void test_pack_PRINTEROP_FLAGS(void)
Definition: generated.c:2753
static void test_pack_wireCLIPFORMAT(void)
Definition: generated.c:2445
static void test_pack_LPCITEMIDLIST(void)
Definition: generated.c:3003
static void test_pack_LPCSHITEMID(void)
Definition: generated.c:3012
static void test_pack_LPSHELLSTATE(void)
Definition: generated.c:3508
static void test_pack_SHChangeDWORDAsIDList(void)
Definition: generated.c:3611
static void test_pack_CLSID(void)
Definition: generated.c:2494
static void test_pack_FILEDESCRIPTORW(void)
Definition: generated.c:3283
static void test_pack_wireHENHMETAFILE(void)
Definition: generated.c:2459
static void test_pack_SHELLSTATE(void)
Definition: generated.c:3679
static void test_pack_LPBSTRBLOB(void)
Definition: generated.c:2137
static void test_pack_FMTID(void)
Definition: generated.c:2501
static void test_pack_HYPER_SIZEDARR(void)
Definition: generated.c:2108
static void test_pack_WORD_SIZEDARR(void)
Definition: generated.c:2317
static void test_pack_RemHBITMAP(void)
Definition: generated.c:2190
static void test_pack_LPCSFV(void)
Definition: generated.c:3395
static void test_pack_LPSHELLEXECUTEINFOA(void)
Definition: generated.c:2610
static void test_pack_LPSHFILEOPSTRUCTA(void)
Definition: generated.c:2624
static void test_pack_PBROWSEINFOA(void)
Definition: generated.c:3526
static void test_pack_ITEMSPACING(void)
Definition: generated.c:3349
static void test_pack_VARIANT_BOOL(void)
Definition: generated.c:2301
static void test_pack_LPBROWSEINFOA(void)
Definition: generated.c:3368
static void test_pack_SFV_CREATE(void)
Definition: generated.c:3592
static void test_pack_userHGLOBAL(void)
Definition: generated.c:2404
static void test_pack_NOTIFYICONDATAW(void)
Definition: generated.c:2695
static void test_pack_LPSHELLEXECUTEINFOW(void)
Definition: generated.c:2617
static void test_pack_FLAGGED_BYTE_BLOB(void)
Definition: generated.c:2069
static void test_pack_LPBSTR(void)
Definition: generated.c:2128
static void test_pack_AUTO_SCROLL_DATA(void)
Definition: generated.c:3081
static void test_pack_PROPID(void)
Definition: generated.c:2183
static void test_pack_FLAGGED_WORD_BLOB(void)
Definition: generated.c:2085
static void test_pack_BYTE_BLOB(void)
Definition: generated.c:1936
static void test_pack_FILEOP_FLAGS(void)
Definition: generated.c:2584
static void test_pack_DATE(void)
Definition: generated.c:2042
static void test_pack_LPTBINFO(void)
Definition: generated.c:3517
static void test_pack_userHPALETTE(void)
Definition: generated.c:2428
static void test_pack_wireBSTR(void)
Definition: generated.c:2436
static void test_pack_PAPPBARDATA(void)
Definition: generated.c:2730
static void test_pack_LPCOLESTR(void)
Definition: generated.c:2144
static void test_pack_LPFILEDESCRIPTORA(void)
Definition: generated.c:3411
static void test_pack_wireHBITMAP(void)
Definition: generated.c:2452
static void test_pack_UP_BYTE_BLOB(void)
Definition: generated.c:2274
static void test_pack_LPBROWSEINFOW(void)
Definition: generated.c:3377
static void test_pack_userBITMAP(void)
Definition: generated.c:2349
static void test_pack_CSFV(void)
Definition: generated.c:3201
static void test_pack_SHITEMID(void)
Definition: generated.c:3060
static void test_pack_userHMETAFILEPICT(void)
Definition: generated.c:2420
static void test_pack_SHELLFLAGSTATE(void)
Definition: generated.c:3672
static void test_pack_SHNAMEMAPPINGA(void)
Definition: generated.c:2955
static void test_pack_remoteMETAFILEPICT(void)
Definition: generated.c:2330
static void test_pack_SHChangeNotifyEntry(void)
Definition: generated.c:3630
static void test_pack_wireHGLOBAL(void)
Definition: generated.c:2466
static void test_pack_QCMINFO(void)
Definition: generated.c:3544
static void test_pack_LPSTRRET(void)
Definition: generated.c:3042
static void test_pack_BYTE_SIZEDARR(void)
Definition: generated.c:1949
static void test_pack_PNOTIFYICONDATAW(void)
Definition: generated.c:2746
static void test_pack_LPDRAGINFOA(void)
Definition: generated.c:2592
static void test_pack_LPDROPFILES(void)
Definition: generated.c:3402
static void test_pack_LPSHELLFLAGSTATE(void)
Definition: generated.c:3499
static void test_pack_SHFILEINFOA(void)
Definition: generated.c:2849
static void test_pack_wireHMETAFILEPICT(void)
Definition: generated.c:2480
static void test_pack_LPCABINETSTATE(void)
Definition: generated.c:3386
static void test_pack_LPIDA(void)
Definition: generated.c:3454
static void test_pack_DRAGINFOA(void)
Definition: generated.c:2540
static void test_pack_DOUBLE(void)
Definition: generated.c:2049
static void test_pack_LPITEMIDLIST(void)
Definition: generated.c:3021
static void test_pack_SHDESCRIPTIONID(void)
Definition: generated.c:3659
static void test_pack_APPBARDATA(void)
Definition: generated.c:2515
static void test_pack_PNOTIFYICONDATAA(void)
Definition: generated.c:2739
static void test_pack_RemHENHMETAFILE(void)
Definition: generated.c:2203
static void test_pack_LPSHChangeProductKeyAsIDList(void)
Definition: generated.c:3481
static void test_pack_wireHPALETTE(void)
Definition: generated.c:2487
static void test_pack_LPQCMINFO(void)
Definition: generated.c:3463
static void test_pack_FILEDESCRIPTORA(void)
Definition: generated.c:3243
static void test_pack_userHMETAFILE(void)
Definition: generated.c:2412
static void test_pack_IID(void)
Definition: generated.c:2508
static void test_pack_QCMINFO_IDMAP_PLACEMENT(void)
Definition: generated.c:3579
static void test_pack_BROWSEINFOW(void)
Definition: generated.c:3141
static void test_pack_COAUTHIDENTITY(void)
Definition: generated.c:1986
static void test_pack_BLOB(void)
Definition: generated.c:1901
static void test_pack_RemHGLOBAL(void)
Definition: generated.c:2216
static void test_pack_BROWSEINFOA(void)
Definition: generated.c:3110
static void test_pack_CIDA(void)
Definition: generated.c:3188
static void test_pack_COAUTHINFO(void)
Definition: generated.c:2014
static void test_pack_LPOLESTR(void)
Definition: generated.c:2167
static void test_pack_ITEMIDLIST(void)
Definition: generated.c:2993
static void test_pack_CLIPDATA(void)
Definition: generated.c:1962
static void test_pack_SCODE(void)
Definition: generated.c:2267
static void test_pack_LPSHDESCRIPTIONID(void)
Definition: generated.c:3490
static void test_pack_PBROWSEINFOW(void)
Definition: generated.c:3535
static void test_pack_FILEGROUPDESCRIPTORW(void)
Definition: generated.c:3336
static void test_pack_FILEGROUPDESCRIPTORA(void)
Definition: generated.c:3323
static void test_pack_SHELLDETAILS(void)
Definition: generated.c:3049
static void test_pack_LPDECIMAL(void)
Definition: generated.c:2160
static void test_pack_HMETAFILEPICT(void)
Definition: generated.c:2101
static void test_pack_LPCY(void)
Definition: generated.c:2153
static void test_pack_LPDRAGINFOW(void)
Definition: generated.c:2601
static void test_pack_SHELLEXECUTEINFOW(void)
Definition: generated.c:2805
static void test_pack_TBINFO(void)
Definition: generated.c:3704
static void test_pack_BFFCALLBACK(void)
Definition: generated.c:3103
static void test_pack_LPSHNAMEMAPPINGA(void)
Definition: generated.c:2642
static void test_pack_BSTR(void)
Definition: generated.c:1914
static void test_pack_VARTYPE(void)
Definition: generated.c:2309
static void test_pack_CABINETSTATE(void)
Definition: generated.c:3172
WORD PRINTEROP_FLAGS
Definition: shellapi.h:214
_In_opt_ LPCSTR lpDirectory
Definition: shellapi.h:484
WORD FILEOP_FLAGS
Definition: shellapi.h:213
HRESULT(CALLBACK * LPFNVIEWCALLBACK)(_In_ IShellView *dwUser, _In_ IShellFolder *pshf, _In_ HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: shlobj.h:1257
INT(CALLBACK * BFFCALLBACK)(HWND, UINT, LPARAM, LPARAM)
Definition: shlobj.h:1177
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
Definition: shlobj.h:565
Definition: nspapi.h:57
Definition: shlobj.h:1268
Definition: dsound.c:943
@ Password
Definition: telnetd.h:65
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
Definition: twain.h:1830
double DOUBLE
Definition: typedefs.h:70
DWORD dwAttributes
Definition: vdmdbg.h:34
static HMENU hmenu
Definition: win.c:66
_Reserved_ DWORD _In_ DWORD _Out_ DWORD _Out_writes_bytes_to_opt_ pcbTypeName LPSTR szTypeName
Definition: wincrypt.h:4283
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1176
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170