winapi_test: The tests don't support WIN64 yet so disable them there.
[wine] / dlls / wininet / tests / generated.c
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 WINVER 0x0501
9 #define _WIN32_IE 0x0501
10 #define _WIN32_WINNT 0x0501
11
12 #define WINE_NOWINSOCK
13
14 #include <stdarg.h>
15 #include "windef.h"
16 #include "winbase.h"
17 #include "wininet.h"
18 #include "wininet_test.h"
19
20 #include "wine/test.h"
21
22 /***********************************************************************
23  * Compatibility macros
24  */
25
26 #define DWORD_PTR UINT_PTR
27 #define LONG_PTR INT_PTR
28 #define ULONG_PTR UINT_PTR
29
30 /***********************************************************************
31  * Windows API extension
32  */
33
34 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
35 # define _TYPE_ALIGNMENT(type) __alignof(type)
36 #elif defined(__GNUC__)
37 # define _TYPE_ALIGNMENT(type) __alignof__(type)
38 #else
39 /*
40  * FIXME: May not be possible without a compiler extension
41  *        (if type is not just a name that is, otherwise the normal
42  *         TYPE_ALIGNMENT can be used)
43  */
44 #endif
45
46 #if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
47 #pragma warning(disable:4116)
48 #endif
49
50 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
51 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
52 #endif
53
54 /***********************************************************************
55  * Test helper macros
56  */
57
58 #ifdef _WIN64
59
60 # define TEST_TYPE_SIZE(type, size)
61 # define TEST_TYPE_ALIGN(type, align)
62 # define TEST_TARGET_ALIGN(type, align)
63 # define TEST_FIELD_ALIGN(type, field, align)
64 # define TEST_FIELD_OFFSET(type, field, offset)
65
66 #else
67
68 # define TEST_TYPE_SIZE(type, size)             C_ASSERT(sizeof(type) == size);
69
70 # ifdef TYPE_ALIGNMENT
71 #  define TEST_TYPE_ALIGN(type, align)          C_ASSERT(TYPE_ALIGNMENT(type) == align);
72 # else
73 #  define TEST_TYPE_ALIGN(type, align)
74 # endif
75
76 # ifdef _TYPE_ALIGNMENT
77 #  define TEST_TARGET_ALIGN(type, align)        C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
78 #  define TEST_FIELD_ALIGN(type, field, align)  C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
79 # else
80 #  define TEST_TARGET_ALIGN(type, align)
81 #  define TEST_FIELD_ALIGN(type, field, align)
82 # endif
83
84 # define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
85
86 #endif
87
88 #define TEST_TARGET_SIZE(type, size)            TEST_TYPE_SIZE(*(type)0, size)
89 #define TEST_FIELD_SIZE(type, field, size)      TEST_TYPE_SIZE((((type*)0)->field), size)
90 #define TEST_TYPE_SIGNED(type)                  C_ASSERT((type) -1 < 0);
91 #define TEST_TYPE_UNSIGNED(type)                C_ASSERT((type) -1 > 0);
92
93
94 static void test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEA(void)
95 {
96     /* GOPHER_ABSTRACT_ATTRIBUTE_TYPEA (pack 4) */
97     TEST_TYPE_SIZE   (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 8)
98     TEST_TYPE_ALIGN  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 4)
99     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, ShortAbstract, 4)
100     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, ShortAbstract, 4)
101     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, ShortAbstract, 0)
102     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, AbstractFile, 4)
103     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, AbstractFile, 4)
104     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, AbstractFile, 4)
105 }
106
107 static void test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEW(void)
108 {
109     /* GOPHER_ABSTRACT_ATTRIBUTE_TYPEW (pack 4) */
110     TEST_TYPE_SIZE   (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 8)
111     TEST_TYPE_ALIGN  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 4)
112     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, ShortAbstract, 4)
113     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, ShortAbstract, 4)
114     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, ShortAbstract, 0)
115     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, AbstractFile, 4)
116     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, AbstractFile, 4)
117     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, AbstractFile, 4)
118 }
119
120 static void test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEA(void)
121 {
122     /* GOPHER_ADMIN_ATTRIBUTE_TYPEA (pack 4) */
123     TEST_TYPE_SIZE   (GOPHER_ADMIN_ATTRIBUTE_TYPEA, 8)
124     TEST_TYPE_ALIGN  (GOPHER_ADMIN_ATTRIBUTE_TYPEA, 4)
125     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEA, Comment, 4)
126     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEA, Comment, 4)
127     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEA, Comment, 0)
128     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEA, EmailAddress, 4)
129     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEA, EmailAddress, 4)
130     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEA, EmailAddress, 4)
131 }
132
133 static void test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEW(void)
134 {
135     /* GOPHER_ADMIN_ATTRIBUTE_TYPEW (pack 4) */
136     TEST_TYPE_SIZE   (GOPHER_ADMIN_ATTRIBUTE_TYPEW, 8)
137     TEST_TYPE_ALIGN  (GOPHER_ADMIN_ATTRIBUTE_TYPEW, 4)
138     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEW, Comment, 4)
139     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEW, Comment, 4)
140     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEW, Comment, 0)
141     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEW, EmailAddress, 4)
142     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEW, EmailAddress, 4)
143     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEW, EmailAddress, 4)
144 }
145
146 static void test_pack_GOPHER_ASK_ATTRIBUTE_TYPEA(void)
147 {
148     /* GOPHER_ASK_ATTRIBUTE_TYPEA (pack 4) */
149     TEST_TYPE_SIZE   (GOPHER_ASK_ATTRIBUTE_TYPEA, 8)
150     TEST_TYPE_ALIGN  (GOPHER_ASK_ATTRIBUTE_TYPEA, 4)
151     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionType, 4)
152     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionType, 4)
153     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionType, 0)
154     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionText, 4)
155     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionText, 4)
156     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionText, 4)
157 }
158
159 static void test_pack_GOPHER_ASK_ATTRIBUTE_TYPEW(void)
160 {
161     /* GOPHER_ASK_ATTRIBUTE_TYPEW (pack 4) */
162     TEST_TYPE_SIZE   (GOPHER_ASK_ATTRIBUTE_TYPEW, 8)
163     TEST_TYPE_ALIGN  (GOPHER_ASK_ATTRIBUTE_TYPEW, 4)
164     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionType, 4)
165     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionType, 4)
166     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionType, 0)
167     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionText, 4)
168     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionText, 4)
169     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionText, 4)
170 }
171
172 static void test_pack_GOPHER_ATTRIBUTE_ENUMERATORA(void)
173 {
174     /* GOPHER_ATTRIBUTE_ENUMERATORA */
175     TEST_TYPE_SIZE   (GOPHER_ATTRIBUTE_ENUMERATORA, 4)
176     TEST_TYPE_ALIGN  (GOPHER_ATTRIBUTE_ENUMERATORA, 4)
177 }
178
179 static void test_pack_GOPHER_ATTRIBUTE_ENUMERATORW(void)
180 {
181     /* GOPHER_ATTRIBUTE_ENUMERATORW */
182     TEST_TYPE_SIZE   (GOPHER_ATTRIBUTE_ENUMERATORW, 4)
183     TEST_TYPE_ALIGN  (GOPHER_ATTRIBUTE_ENUMERATORW, 4)
184 }
185
186 static void test_pack_GOPHER_ATTRIBUTE_TYPEA(void)
187 {
188     /* GOPHER_ATTRIBUTE_TYPEA (pack 4) */
189     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEA, CategoryId, 4)
190     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEA, CategoryId, 4)
191     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEA, CategoryId, 0)
192     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEA, AttributeId, 4)
193     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEA, AttributeId, 4)
194     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEA, AttributeId, 4)
195 }
196
197 static void test_pack_GOPHER_ATTRIBUTE_TYPEW(void)
198 {
199     /* GOPHER_ATTRIBUTE_TYPEW (pack 4) */
200     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEW, CategoryId, 4)
201     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEW, CategoryId, 4)
202     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEW, CategoryId, 0)
203     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEW, AttributeId, 4)
204     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEW, AttributeId, 4)
205     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEW, AttributeId, 4)
206 }
207
208 static void test_pack_GOPHER_FIND_DATAA(void)
209 {
210     /* GOPHER_FIND_DATAA (pack 4) */
211     TEST_TYPE_SIZE   (GOPHER_FIND_DATAA, 808)
212     TEST_TYPE_ALIGN  (GOPHER_FIND_DATAA, 4)
213     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, DisplayString, 129)
214     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, DisplayString, 1)
215     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, DisplayString, 0)
216     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, GopherType, 4)
217     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, GopherType, 4)
218     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, GopherType, 132)
219     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, SizeLow, 4)
220     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, SizeLow, 4)
221     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, SizeLow, 136)
222     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, SizeHigh, 4)
223     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, SizeHigh, 4)
224     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, SizeHigh, 140)
225     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, LastModificationTime, 8)
226     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, LastModificationTime, 4)
227     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, LastModificationTime, 144)
228     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, Locator, 654)
229     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, Locator, 1)
230     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, Locator, 152)
231 }
232
233 static void test_pack_GOPHER_FIND_DATAW(void)
234 {
235     /* GOPHER_FIND_DATAW (pack 4) */
236     TEST_TYPE_SIZE   (GOPHER_FIND_DATAW, 1588)
237     TEST_TYPE_ALIGN  (GOPHER_FIND_DATAW, 4)
238     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, DisplayString, 258)
239     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, DisplayString, 2)
240     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, DisplayString, 0)
241     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, GopherType, 4)
242     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, GopherType, 4)
243     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, GopherType, 260)
244     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, SizeLow, 4)
245     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, SizeLow, 4)
246     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, SizeLow, 264)
247     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, SizeHigh, 4)
248     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, SizeHigh, 4)
249     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, SizeHigh, 268)
250     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, LastModificationTime, 8)
251     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, LastModificationTime, 4)
252     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, LastModificationTime, 272)
253     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, Locator, 1308)
254     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, Locator, 2)
255     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, Locator, 280)
256 }
257
258 static void test_pack_GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE(void)
259 {
260     /* GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE (pack 4) */
261     TEST_TYPE_SIZE   (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 24)
262     TEST_TYPE_ALIGN  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
263     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesNorth, 4)
264     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesNorth, 4)
265     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesNorth, 0)
266     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesNorth, 4)
267     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesNorth, 4)
268     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesNorth, 4)
269     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsNorth, 4)
270     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsNorth, 4)
271     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsNorth, 8)
272     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesEast, 4)
273     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesEast, 4)
274     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesEast, 12)
275     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesEast, 4)
276     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesEast, 4)
277     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesEast, 16)
278     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsEast, 4)
279     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsEast, 4)
280     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsEast, 20)
281 }
282
283 static void test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEA(void)
284 {
285     /* GOPHER_LOCATION_ATTRIBUTE_TYPEA (pack 4) */
286     TEST_TYPE_SIZE   (GOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
287     TEST_TYPE_ALIGN  (GOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
288     TEST_FIELD_SIZE  (GOPHER_LOCATION_ATTRIBUTE_TYPEA, Location, 4)
289     TEST_FIELD_ALIGN (GOPHER_LOCATION_ATTRIBUTE_TYPEA, Location, 4)
290     TEST_FIELD_OFFSET(GOPHER_LOCATION_ATTRIBUTE_TYPEA, Location, 0)
291 }
292
293 static void test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEW(void)
294 {
295     /* GOPHER_LOCATION_ATTRIBUTE_TYPEW (pack 4) */
296     TEST_TYPE_SIZE   (GOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
297     TEST_TYPE_ALIGN  (GOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
298     TEST_FIELD_SIZE  (GOPHER_LOCATION_ATTRIBUTE_TYPEW, Location, 4)
299     TEST_FIELD_ALIGN (GOPHER_LOCATION_ATTRIBUTE_TYPEW, Location, 4)
300     TEST_FIELD_OFFSET(GOPHER_LOCATION_ATTRIBUTE_TYPEW, Location, 0)
301 }
302
303 static void test_pack_GOPHER_MOD_DATE_ATTRIBUTE_TYPE(void)
304 {
305     /* GOPHER_MOD_DATE_ATTRIBUTE_TYPE (pack 4) */
306     TEST_TYPE_SIZE   (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, 8)
307     TEST_TYPE_ALIGN  (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
308     TEST_FIELD_SIZE  (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, DateAndTime, 8)
309     TEST_FIELD_ALIGN (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, DateAndTime, 4)
310     TEST_FIELD_OFFSET(GOPHER_MOD_DATE_ATTRIBUTE_TYPE, DateAndTime, 0)
311 }
312
313 static void test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA(void)
314 {
315     /* GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA (pack 4) */
316     TEST_TYPE_SIZE   (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
317     TEST_TYPE_ALIGN  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
318     TEST_FIELD_SIZE  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, Organization, 4)
319     TEST_FIELD_ALIGN (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, Organization, 4)
320     TEST_FIELD_OFFSET(GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, Organization, 0)
321 }
322
323 static void test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW(void)
324 {
325     /* GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW (pack 4) */
326     TEST_TYPE_SIZE   (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
327     TEST_TYPE_ALIGN  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
328     TEST_FIELD_SIZE  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, Organization, 4)
329     TEST_FIELD_ALIGN (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, Organization, 4)
330     TEST_FIELD_OFFSET(GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, Organization, 0)
331 }
332
333 static void test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEA(void)
334 {
335     /* GOPHER_PROVIDER_ATTRIBUTE_TYPEA (pack 4) */
336     TEST_TYPE_SIZE   (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
337     TEST_TYPE_ALIGN  (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
338     TEST_FIELD_SIZE  (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, Provider, 4)
339     TEST_FIELD_ALIGN (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, Provider, 4)
340     TEST_FIELD_OFFSET(GOPHER_PROVIDER_ATTRIBUTE_TYPEA, Provider, 0)
341 }
342
343 static void test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEW(void)
344 {
345     /* GOPHER_PROVIDER_ATTRIBUTE_TYPEW (pack 4) */
346     TEST_TYPE_SIZE   (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
347     TEST_TYPE_ALIGN  (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
348     TEST_FIELD_SIZE  (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, Provider, 4)
349     TEST_FIELD_ALIGN (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, Provider, 4)
350     TEST_FIELD_OFFSET(GOPHER_PROVIDER_ATTRIBUTE_TYPEW, Provider, 0)
351 }
352
353 static void test_pack_GOPHER_SCORE_ATTRIBUTE_TYPE(void)
354 {
355     /* GOPHER_SCORE_ATTRIBUTE_TYPE (pack 4) */
356     TEST_TYPE_SIZE   (GOPHER_SCORE_ATTRIBUTE_TYPE, 4)
357     TEST_TYPE_ALIGN  (GOPHER_SCORE_ATTRIBUTE_TYPE, 4)
358     TEST_FIELD_SIZE  (GOPHER_SCORE_ATTRIBUTE_TYPE, Score, 4)
359     TEST_FIELD_ALIGN (GOPHER_SCORE_ATTRIBUTE_TYPE, Score, 4)
360     TEST_FIELD_OFFSET(GOPHER_SCORE_ATTRIBUTE_TYPE, Score, 0)
361 }
362
363 static void test_pack_GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE(void)
364 {
365     /* GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE (pack 4) */
366     TEST_TYPE_SIZE   (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 8)
367     TEST_TYPE_ALIGN  (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
368     TEST_FIELD_SIZE  (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, LowerBound, 4)
369     TEST_FIELD_ALIGN (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, LowerBound, 4)
370     TEST_FIELD_OFFSET(GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, LowerBound, 0)
371     TEST_FIELD_SIZE  (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, UpperBound, 4)
372     TEST_FIELD_ALIGN (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, UpperBound, 4)
373     TEST_FIELD_OFFSET(GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, UpperBound, 4)
374 }
375
376 static void test_pack_GOPHER_SITE_ATTRIBUTE_TYPEA(void)
377 {
378     /* GOPHER_SITE_ATTRIBUTE_TYPEA (pack 4) */
379     TEST_TYPE_SIZE   (GOPHER_SITE_ATTRIBUTE_TYPEA, 4)
380     TEST_TYPE_ALIGN  (GOPHER_SITE_ATTRIBUTE_TYPEA, 4)
381     TEST_FIELD_SIZE  (GOPHER_SITE_ATTRIBUTE_TYPEA, Site, 4)
382     TEST_FIELD_ALIGN (GOPHER_SITE_ATTRIBUTE_TYPEA, Site, 4)
383     TEST_FIELD_OFFSET(GOPHER_SITE_ATTRIBUTE_TYPEA, Site, 0)
384 }
385
386 static void test_pack_GOPHER_SITE_ATTRIBUTE_TYPEW(void)
387 {
388     /* GOPHER_SITE_ATTRIBUTE_TYPEW (pack 4) */
389     TEST_TYPE_SIZE   (GOPHER_SITE_ATTRIBUTE_TYPEW, 4)
390     TEST_TYPE_ALIGN  (GOPHER_SITE_ATTRIBUTE_TYPEW, 4)
391     TEST_FIELD_SIZE  (GOPHER_SITE_ATTRIBUTE_TYPEW, Site, 4)
392     TEST_FIELD_ALIGN (GOPHER_SITE_ATTRIBUTE_TYPEW, Site, 4)
393     TEST_FIELD_OFFSET(GOPHER_SITE_ATTRIBUTE_TYPEW, Site, 0)
394 }
395
396 static void test_pack_GOPHER_TIMEZONE_ATTRIBUTE_TYPE(void)
397 {
398     /* GOPHER_TIMEZONE_ATTRIBUTE_TYPE (pack 4) */
399     TEST_TYPE_SIZE   (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
400     TEST_TYPE_ALIGN  (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
401     TEST_FIELD_SIZE  (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, Zone, 4)
402     TEST_FIELD_ALIGN (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, Zone, 4)
403     TEST_FIELD_OFFSET(GOPHER_TIMEZONE_ATTRIBUTE_TYPE, Zone, 0)
404 }
405
406 static void test_pack_GOPHER_TTL_ATTRIBUTE_TYPE(void)
407 {
408     /* GOPHER_TTL_ATTRIBUTE_TYPE (pack 4) */
409     TEST_TYPE_SIZE   (GOPHER_TTL_ATTRIBUTE_TYPE, 4)
410     TEST_TYPE_ALIGN  (GOPHER_TTL_ATTRIBUTE_TYPE, 4)
411     TEST_FIELD_SIZE  (GOPHER_TTL_ATTRIBUTE_TYPE, Ttl, 4)
412     TEST_FIELD_ALIGN (GOPHER_TTL_ATTRIBUTE_TYPE, Ttl, 4)
413     TEST_FIELD_OFFSET(GOPHER_TTL_ATTRIBUTE_TYPE, Ttl, 0)
414 }
415
416 static void test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEA(void)
417 {
418     /* GOPHER_UNKNOWN_ATTRIBUTE_TYPEA (pack 4) */
419     TEST_TYPE_SIZE   (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
420     TEST_TYPE_ALIGN  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
421     TEST_FIELD_SIZE  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, Text, 4)
422     TEST_FIELD_ALIGN (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, Text, 4)
423     TEST_FIELD_OFFSET(GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, Text, 0)
424 }
425
426 static void test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEW(void)
427 {
428     /* GOPHER_UNKNOWN_ATTRIBUTE_TYPEW (pack 4) */
429     TEST_TYPE_SIZE   (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
430     TEST_TYPE_ALIGN  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
431     TEST_FIELD_SIZE  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, Text, 4)
432     TEST_FIELD_ALIGN (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, Text, 4)
433     TEST_FIELD_OFFSET(GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, Text, 0)
434 }
435
436 static void test_pack_GOPHER_VERONICA_ATTRIBUTE_TYPE(void)
437 {
438     /* GOPHER_VERONICA_ATTRIBUTE_TYPE (pack 4) */
439     TEST_TYPE_SIZE   (GOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
440     TEST_TYPE_ALIGN  (GOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
441     TEST_FIELD_SIZE  (GOPHER_VERONICA_ATTRIBUTE_TYPE, TreeWalk, 4)
442     TEST_FIELD_ALIGN (GOPHER_VERONICA_ATTRIBUTE_TYPE, TreeWalk, 4)
443     TEST_FIELD_OFFSET(GOPHER_VERONICA_ATTRIBUTE_TYPE, TreeWalk, 0)
444 }
445
446 static void test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEA(void)
447 {
448     /* GOPHER_VERSION_ATTRIBUTE_TYPEA (pack 4) */
449     TEST_TYPE_SIZE   (GOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
450     TEST_TYPE_ALIGN  (GOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
451     TEST_FIELD_SIZE  (GOPHER_VERSION_ATTRIBUTE_TYPEA, Version, 4)
452     TEST_FIELD_ALIGN (GOPHER_VERSION_ATTRIBUTE_TYPEA, Version, 4)
453     TEST_FIELD_OFFSET(GOPHER_VERSION_ATTRIBUTE_TYPEA, Version, 0)
454 }
455
456 static void test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEW(void)
457 {
458     /* GOPHER_VERSION_ATTRIBUTE_TYPEW (pack 4) */
459     TEST_TYPE_SIZE   (GOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
460     TEST_TYPE_ALIGN  (GOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
461     TEST_FIELD_SIZE  (GOPHER_VERSION_ATTRIBUTE_TYPEW, Version, 4)
462     TEST_FIELD_ALIGN (GOPHER_VERSION_ATTRIBUTE_TYPEW, Version, 4)
463     TEST_FIELD_OFFSET(GOPHER_VERSION_ATTRIBUTE_TYPEW, Version, 0)
464 }
465
466 static void test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEA(void)
467 {
468     /* GOPHER_VIEW_ATTRIBUTE_TYPEA (pack 4) */
469     TEST_TYPE_SIZE   (GOPHER_VIEW_ATTRIBUTE_TYPEA, 12)
470     TEST_TYPE_ALIGN  (GOPHER_VIEW_ATTRIBUTE_TYPEA, 4)
471     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEA, ContentType, 4)
472     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEA, ContentType, 4)
473     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEA, ContentType, 0)
474     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEA, Language, 4)
475     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEA, Language, 4)
476     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEA, Language, 4)
477     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEA, Size, 4)
478     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEA, Size, 4)
479     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEA, Size, 8)
480 }
481
482 static void test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEW(void)
483 {
484     /* GOPHER_VIEW_ATTRIBUTE_TYPEW (pack 4) */
485     TEST_TYPE_SIZE   (GOPHER_VIEW_ATTRIBUTE_TYPEW, 12)
486     TEST_TYPE_ALIGN  (GOPHER_VIEW_ATTRIBUTE_TYPEW, 4)
487     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEW, ContentType, 4)
488     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEW, ContentType, 4)
489     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEW, ContentType, 0)
490     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEW, Language, 4)
491     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEW, Language, 4)
492     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEW, Language, 4)
493     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEW, Size, 4)
494     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEW, Size, 4)
495     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEW, Size, 8)
496 }
497
498 static void test_pack_GROUPID(void)
499 {
500     /* GROUPID */
501     TEST_TYPE_SIZE   (GROUPID, 8)
502     TEST_TYPE_ALIGN  (GROUPID, 8)
503     TEST_TYPE_SIGNED(GROUPID)
504 }
505
506 static void test_pack_HINTERNET(void)
507 {
508     /* HINTERNET */
509     TEST_TYPE_SIZE   (HINTERNET, 4)
510     TEST_TYPE_ALIGN  (HINTERNET, 4)
511 }
512
513 static void test_pack_HTTP_VERSION_INFO(void)
514 {
515     /* HTTP_VERSION_INFO (pack 4) */
516     TEST_TYPE_SIZE   (HTTP_VERSION_INFO, 8)
517     TEST_TYPE_ALIGN  (HTTP_VERSION_INFO, 4)
518     TEST_FIELD_SIZE  (HTTP_VERSION_INFO, dwMajorVersion, 4)
519     TEST_FIELD_ALIGN (HTTP_VERSION_INFO, dwMajorVersion, 4)
520     TEST_FIELD_OFFSET(HTTP_VERSION_INFO, dwMajorVersion, 0)
521     TEST_FIELD_SIZE  (HTTP_VERSION_INFO, dwMinorVersion, 4)
522     TEST_FIELD_ALIGN (HTTP_VERSION_INFO, dwMinorVersion, 4)
523     TEST_FIELD_OFFSET(HTTP_VERSION_INFO, dwMinorVersion, 4)
524 }
525
526 static void test_pack_INTERNET_ASYNC_RESULT(void)
527 {
528     /* INTERNET_ASYNC_RESULT (pack 4) */
529     TEST_TYPE_SIZE   (INTERNET_ASYNC_RESULT, 8)
530     TEST_TYPE_ALIGN  (INTERNET_ASYNC_RESULT, 4)
531     TEST_FIELD_SIZE  (INTERNET_ASYNC_RESULT, dwResult, 4)
532     TEST_FIELD_ALIGN (INTERNET_ASYNC_RESULT, dwResult, 4)
533     TEST_FIELD_OFFSET(INTERNET_ASYNC_RESULT, dwResult, 0)
534     TEST_FIELD_SIZE  (INTERNET_ASYNC_RESULT, dwError, 4)
535     TEST_FIELD_ALIGN (INTERNET_ASYNC_RESULT, dwError, 4)
536     TEST_FIELD_OFFSET(INTERNET_ASYNC_RESULT, dwError, 4)
537 }
538
539 static void test_pack_INTERNET_AUTH_NOTIFY_DATA(void)
540 {
541     /* INTERNET_AUTH_NOTIFY_DATA (pack 4) */
542     TEST_TYPE_SIZE   (INTERNET_AUTH_NOTIFY_DATA, 16)
543     TEST_TYPE_ALIGN  (INTERNET_AUTH_NOTIFY_DATA, 4)
544     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, cbStruct, 4)
545     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, cbStruct, 4)
546     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, cbStruct, 0)
547     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, dwOptions, 4)
548     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, dwOptions, 4)
549     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, dwOptions, 4)
550     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, pfnNotify, 4)
551     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, pfnNotify, 4)
552     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, pfnNotify, 8)
553     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, dwContext, 4)
554     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, dwContext, 4)
555     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, dwContext, 12)
556 }
557
558 static void test_pack_INTERNET_BUFFERSA(void)
559 {
560     /* INTERNET_BUFFERSA (pack 4) */
561     TEST_TYPE_SIZE   (INTERNET_BUFFERSA, 40)
562     TEST_TYPE_ALIGN  (INTERNET_BUFFERSA, 4)
563     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwStructSize, 4)
564     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwStructSize, 4)
565     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwStructSize, 0)
566     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, Next, 4)
567     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, Next, 4)
568     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, Next, 4)
569     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, lpcszHeader, 4)
570     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, lpcszHeader, 4)
571     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, lpcszHeader, 8)
572     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwHeadersLength, 4)
573     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwHeadersLength, 4)
574     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwHeadersLength, 12)
575     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwHeadersTotal, 4)
576     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwHeadersTotal, 4)
577     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwHeadersTotal, 16)
578     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, lpvBuffer, 4)
579     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, lpvBuffer, 4)
580     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, lpvBuffer, 20)
581     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwBufferLength, 4)
582     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwBufferLength, 4)
583     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwBufferLength, 24)
584     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwBufferTotal, 4)
585     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwBufferTotal, 4)
586     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwBufferTotal, 28)
587     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwOffsetLow, 4)
588     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwOffsetLow, 4)
589     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwOffsetLow, 32)
590     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwOffsetHigh, 4)
591     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwOffsetHigh, 4)
592     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwOffsetHigh, 36)
593 }
594
595 static void test_pack_INTERNET_BUFFERSW(void)
596 {
597     /* INTERNET_BUFFERSW (pack 4) */
598     TEST_TYPE_SIZE   (INTERNET_BUFFERSW, 40)
599     TEST_TYPE_ALIGN  (INTERNET_BUFFERSW, 4)
600     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwStructSize, 4)
601     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwStructSize, 4)
602     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwStructSize, 0)
603     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, Next, 4)
604     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, Next, 4)
605     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, Next, 4)
606     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, lpcszHeader, 4)
607     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, lpcszHeader, 4)
608     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, lpcszHeader, 8)
609     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwHeadersLength, 4)
610     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwHeadersLength, 4)
611     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwHeadersLength, 12)
612     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwHeadersTotal, 4)
613     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwHeadersTotal, 4)
614     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwHeadersTotal, 16)
615     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, lpvBuffer, 4)
616     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, lpvBuffer, 4)
617     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, lpvBuffer, 20)
618     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwBufferLength, 4)
619     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwBufferLength, 4)
620     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwBufferLength, 24)
621     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwBufferTotal, 4)
622     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwBufferTotal, 4)
623     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwBufferTotal, 28)
624     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwOffsetLow, 4)
625     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwOffsetLow, 4)
626     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwOffsetLow, 32)
627     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwOffsetHigh, 4)
628     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwOffsetHigh, 4)
629     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwOffsetHigh, 36)
630 }
631
632 static void test_pack_INTERNET_CACHE_ENTRY_INFOA(void)
633 {
634     /* INTERNET_CACHE_ENTRY_INFOA (pack 4) */
635     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwStructSize, 4)
636     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwStructSize, 4)
637     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwStructSize, 0)
638     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpszSourceUrlName, 4)
639     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpszSourceUrlName, 4)
640     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpszSourceUrlName, 4)
641     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpszLocalFileName, 4)
642     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpszLocalFileName, 4)
643     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpszLocalFileName, 8)
644     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, CacheEntryType, 4)
645     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, CacheEntryType, 4)
646     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, CacheEntryType, 12)
647     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwUseCount, 4)
648     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwUseCount, 4)
649     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwUseCount, 16)
650     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwHitRate, 4)
651     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwHitRate, 4)
652     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwHitRate, 20)
653     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwSizeLow, 4)
654     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwSizeLow, 4)
655     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwSizeLow, 24)
656     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwSizeHigh, 4)
657     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwSizeHigh, 4)
658     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwSizeHigh, 28)
659     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, LastModifiedTime, 8)
660     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, LastModifiedTime, 4)
661     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, LastModifiedTime, 32)
662     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, ExpireTime, 8)
663     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, ExpireTime, 4)
664     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, ExpireTime, 40)
665     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, LastAccessTime, 8)
666     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, LastAccessTime, 4)
667     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, LastAccessTime, 48)
668     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, LastSyncTime, 8)
669     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, LastSyncTime, 4)
670     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, LastSyncTime, 56)
671     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpHeaderInfo, 4)
672     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpHeaderInfo, 4)
673     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpHeaderInfo, 64)
674     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwHeaderInfoSize, 4)
675     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwHeaderInfoSize, 4)
676     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwHeaderInfoSize, 68)
677     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpszFileExtension, 4)
678     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpszFileExtension, 4)
679     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpszFileExtension, 72)
680 }
681
682 static void test_pack_INTERNET_CACHE_ENTRY_INFOW(void)
683 {
684     /* INTERNET_CACHE_ENTRY_INFOW (pack 4) */
685     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwStructSize, 4)
686     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwStructSize, 4)
687     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwStructSize, 0)
688     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpszSourceUrlName, 4)
689     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpszSourceUrlName, 4)
690     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpszSourceUrlName, 4)
691     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpszLocalFileName, 4)
692     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpszLocalFileName, 4)
693     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpszLocalFileName, 8)
694     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, CacheEntryType, 4)
695     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, CacheEntryType, 4)
696     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, CacheEntryType, 12)
697     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwUseCount, 4)
698     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwUseCount, 4)
699     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwUseCount, 16)
700     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwHitRate, 4)
701     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwHitRate, 4)
702     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwHitRate, 20)
703     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwSizeLow, 4)
704     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwSizeLow, 4)
705     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwSizeLow, 24)
706     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwSizeHigh, 4)
707     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwSizeHigh, 4)
708     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwSizeHigh, 28)
709     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, LastModifiedTime, 8)
710     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, LastModifiedTime, 4)
711     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, LastModifiedTime, 32)
712     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, ExpireTime, 8)
713     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, ExpireTime, 4)
714     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, ExpireTime, 40)
715     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, LastAccessTime, 8)
716     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, LastAccessTime, 4)
717     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, LastAccessTime, 48)
718     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, LastSyncTime, 8)
719     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, LastSyncTime, 4)
720     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, LastSyncTime, 56)
721     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpHeaderInfo, 4)
722     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpHeaderInfo, 4)
723     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpHeaderInfo, 64)
724     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwHeaderInfoSize, 4)
725     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwHeaderInfoSize, 4)
726     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwHeaderInfoSize, 68)
727     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpszFileExtension, 4)
728     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpszFileExtension, 4)
729     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpszFileExtension, 72)
730 }
731
732 static void test_pack_INTERNET_CERTIFICATE_INFOA(void)
733 {
734     /* INTERNET_CERTIFICATE_INFOA (pack 4) */
735     TEST_TYPE_SIZE   (INTERNET_CERTIFICATE_INFOA, 40)
736     TEST_TYPE_ALIGN  (INTERNET_CERTIFICATE_INFOA, 4)
737     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, ftExpiry, 8)
738     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, ftExpiry, 4)
739     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, ftExpiry, 0)
740     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, ftStart, 8)
741     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, ftStart, 4)
742     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, ftStart, 8)
743     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszSubjectInfo, 4)
744     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszSubjectInfo, 4)
745     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszSubjectInfo, 16)
746     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszIssuerInfo, 4)
747     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszIssuerInfo, 4)
748     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszIssuerInfo, 20)
749     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszProtocolName, 4)
750     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszProtocolName, 4)
751     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszProtocolName, 24)
752     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszSignatureAlgName, 4)
753     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszSignatureAlgName, 4)
754     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszSignatureAlgName, 28)
755     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszEncryptionAlgName, 4)
756     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszEncryptionAlgName, 4)
757     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszEncryptionAlgName, 32)
758     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, dwKeySize, 4)
759     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, dwKeySize, 4)
760     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, dwKeySize, 36)
761 }
762
763 static void test_pack_INTERNET_CERTIFICATE_INFOW(void)
764 {
765     /* INTERNET_CERTIFICATE_INFOW (pack 4) */
766     TEST_TYPE_SIZE   (INTERNET_CERTIFICATE_INFOW, 40)
767     TEST_TYPE_ALIGN  (INTERNET_CERTIFICATE_INFOW, 4)
768     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, ftExpiry, 8)
769     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, ftExpiry, 4)
770     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, ftExpiry, 0)
771     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, ftStart, 8)
772     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, ftStart, 4)
773     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, ftStart, 8)
774     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszSubjectInfo, 4)
775     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszSubjectInfo, 4)
776     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszSubjectInfo, 16)
777     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszIssuerInfo, 4)
778     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszIssuerInfo, 4)
779     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszIssuerInfo, 20)
780     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszProtocolName, 4)
781     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszProtocolName, 4)
782     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszProtocolName, 24)
783     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszSignatureAlgName, 4)
784     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszSignatureAlgName, 4)
785     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszSignatureAlgName, 28)
786     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszEncryptionAlgName, 4)
787     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszEncryptionAlgName, 4)
788     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszEncryptionAlgName, 32)
789     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, dwKeySize, 4)
790     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, dwKeySize, 4)
791     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, dwKeySize, 36)
792 }
793
794 static void test_pack_INTERNET_CONNECTED_INFO(void)
795 {
796     /* INTERNET_CONNECTED_INFO (pack 4) */
797     TEST_TYPE_SIZE   (INTERNET_CONNECTED_INFO, 8)
798     TEST_TYPE_ALIGN  (INTERNET_CONNECTED_INFO, 4)
799     TEST_FIELD_SIZE  (INTERNET_CONNECTED_INFO, dwConnectedState, 4)
800     TEST_FIELD_ALIGN (INTERNET_CONNECTED_INFO, dwConnectedState, 4)
801     TEST_FIELD_OFFSET(INTERNET_CONNECTED_INFO, dwConnectedState, 0)
802     TEST_FIELD_SIZE  (INTERNET_CONNECTED_INFO, dwFlags, 4)
803     TEST_FIELD_ALIGN (INTERNET_CONNECTED_INFO, dwFlags, 4)
804     TEST_FIELD_OFFSET(INTERNET_CONNECTED_INFO, dwFlags, 4)
805 }
806
807 static void test_pack_INTERNET_PORT(void)
808 {
809     /* INTERNET_PORT */
810     TEST_TYPE_SIZE   (INTERNET_PORT, 2)
811     TEST_TYPE_ALIGN  (INTERNET_PORT, 2)
812     TEST_TYPE_UNSIGNED(INTERNET_PORT)
813 }
814
815 static void test_pack_INTERNET_PROXY_INFOA(void)
816 {
817     /* INTERNET_PROXY_INFOA (pack 4) */
818     TEST_TYPE_SIZE   (INTERNET_PROXY_INFOA, 12)
819     TEST_TYPE_ALIGN  (INTERNET_PROXY_INFOA, 4)
820     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOA, dwAccessType, 4)
821     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOA, dwAccessType, 4)
822     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOA, dwAccessType, 0)
823     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOA, lpszProxy, 4)
824     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOA, lpszProxy, 4)
825     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOA, lpszProxy, 4)
826     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOA, lpszProxyBypass, 4)
827     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOA, lpszProxyBypass, 4)
828     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOA, lpszProxyBypass, 8)
829 }
830
831 static void test_pack_INTERNET_PROXY_INFOW(void)
832 {
833     /* INTERNET_PROXY_INFOW (pack 4) */
834     TEST_TYPE_SIZE   (INTERNET_PROXY_INFOW, 12)
835     TEST_TYPE_ALIGN  (INTERNET_PROXY_INFOW, 4)
836     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOW, dwAccessType, 4)
837     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOW, dwAccessType, 4)
838     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOW, dwAccessType, 0)
839     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOW, lpszProxy, 4)
840     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOW, lpszProxy, 4)
841     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOW, lpszProxy, 4)
842     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOW, lpszProxyBypass, 4)
843     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOW, lpszProxyBypass, 4)
844     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOW, lpszProxyBypass, 8)
845 }
846
847 static void test_pack_INTERNET_STATUS_CALLBACK(void)
848 {
849     /* INTERNET_STATUS_CALLBACK */
850     TEST_TYPE_SIZE   (INTERNET_STATUS_CALLBACK, 4)
851     TEST_TYPE_ALIGN  (INTERNET_STATUS_CALLBACK, 4)
852 }
853
854 static void test_pack_INTERNET_VERSION_INFO(void)
855 {
856     /* INTERNET_VERSION_INFO (pack 4) */
857     TEST_TYPE_SIZE   (INTERNET_VERSION_INFO, 8)
858     TEST_TYPE_ALIGN  (INTERNET_VERSION_INFO, 4)
859     TEST_FIELD_SIZE  (INTERNET_VERSION_INFO, dwMajorVersion, 4)
860     TEST_FIELD_ALIGN (INTERNET_VERSION_INFO, dwMajorVersion, 4)
861     TEST_FIELD_OFFSET(INTERNET_VERSION_INFO, dwMajorVersion, 0)
862     TEST_FIELD_SIZE  (INTERNET_VERSION_INFO, dwMinorVersion, 4)
863     TEST_FIELD_ALIGN (INTERNET_VERSION_INFO, dwMinorVersion, 4)
864     TEST_FIELD_OFFSET(INTERNET_VERSION_INFO, dwMinorVersion, 4)
865 }
866
867 static void test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA(void)
868 {
869     /* LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA */
870     TEST_TYPE_SIZE   (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 4)
871     TEST_TYPE_ALIGN  (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 4)
872     TEST_TARGET_SIZE (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 8)
873     TEST_TARGET_ALIGN(LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 4)
874 }
875
876 static void test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW(void)
877 {
878     /* LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW */
879     TEST_TYPE_SIZE   (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 4)
880     TEST_TYPE_ALIGN  (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 4)
881     TEST_TARGET_SIZE (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 8)
882     TEST_TARGET_ALIGN(LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 4)
883 }
884
885 static void test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEA(void)
886 {
887     /* LPGOPHER_ADMIN_ATTRIBUTE_TYPEA */
888     TEST_TYPE_SIZE   (LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 4)
889     TEST_TYPE_ALIGN  (LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 4)
890     TEST_TARGET_SIZE (LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 8)
891     TEST_TARGET_ALIGN(LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 4)
892 }
893
894 static void test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEW(void)
895 {
896     /* LPGOPHER_ADMIN_ATTRIBUTE_TYPEW */
897     TEST_TYPE_SIZE   (LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 4)
898     TEST_TYPE_ALIGN  (LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 4)
899     TEST_TARGET_SIZE (LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 8)
900     TEST_TARGET_ALIGN(LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 4)
901 }
902
903 static void test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEA(void)
904 {
905     /* LPGOPHER_ASK_ATTRIBUTE_TYPEA */
906     TEST_TYPE_SIZE   (LPGOPHER_ASK_ATTRIBUTE_TYPEA, 4)
907     TEST_TYPE_ALIGN  (LPGOPHER_ASK_ATTRIBUTE_TYPEA, 4)
908     TEST_TARGET_SIZE (LPGOPHER_ASK_ATTRIBUTE_TYPEA, 8)
909     TEST_TARGET_ALIGN(LPGOPHER_ASK_ATTRIBUTE_TYPEA, 4)
910 }
911
912 static void test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEW(void)
913 {
914     /* LPGOPHER_ASK_ATTRIBUTE_TYPEW */
915     TEST_TYPE_SIZE   (LPGOPHER_ASK_ATTRIBUTE_TYPEW, 4)
916     TEST_TYPE_ALIGN  (LPGOPHER_ASK_ATTRIBUTE_TYPEW, 4)
917     TEST_TARGET_SIZE (LPGOPHER_ASK_ATTRIBUTE_TYPEW, 8)
918     TEST_TARGET_ALIGN(LPGOPHER_ASK_ATTRIBUTE_TYPEW, 4)
919 }
920
921 static void test_pack_LPGOPHER_ATTRIBUTE_TYPEA(void)
922 {
923     /* LPGOPHER_ATTRIBUTE_TYPEA */
924     TEST_TYPE_SIZE   (LPGOPHER_ATTRIBUTE_TYPEA, 4)
925     TEST_TYPE_ALIGN  (LPGOPHER_ATTRIBUTE_TYPEA, 4)
926 }
927
928 static void test_pack_LPGOPHER_ATTRIBUTE_TYPEW(void)
929 {
930     /* LPGOPHER_ATTRIBUTE_TYPEW */
931     TEST_TYPE_SIZE   (LPGOPHER_ATTRIBUTE_TYPEW, 4)
932     TEST_TYPE_ALIGN  (LPGOPHER_ATTRIBUTE_TYPEW, 4)
933 }
934
935 static void test_pack_LPGOPHER_FIND_DATAA(void)
936 {
937     /* LPGOPHER_FIND_DATAA */
938     TEST_TYPE_SIZE   (LPGOPHER_FIND_DATAA, 4)
939     TEST_TYPE_ALIGN  (LPGOPHER_FIND_DATAA, 4)
940     TEST_TARGET_SIZE (LPGOPHER_FIND_DATAA, 808)
941     TEST_TARGET_ALIGN(LPGOPHER_FIND_DATAA, 4)
942 }
943
944 static void test_pack_LPGOPHER_FIND_DATAW(void)
945 {
946     /* LPGOPHER_FIND_DATAW */
947     TEST_TYPE_SIZE   (LPGOPHER_FIND_DATAW, 4)
948     TEST_TYPE_ALIGN  (LPGOPHER_FIND_DATAW, 4)
949     TEST_TARGET_SIZE (LPGOPHER_FIND_DATAW, 1588)
950     TEST_TARGET_ALIGN(LPGOPHER_FIND_DATAW, 4)
951 }
952
953 static void test_pack_LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE(void)
954 {
955     /* LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE */
956     TEST_TYPE_SIZE   (LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
957     TEST_TYPE_ALIGN  (LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
958     TEST_TARGET_SIZE (LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 24)
959     TEST_TARGET_ALIGN(LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
960 }
961
962 static void test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEA(void)
963 {
964     /* LPGOPHER_LOCATION_ATTRIBUTE_TYPEA */
965     TEST_TYPE_SIZE   (LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
966     TEST_TYPE_ALIGN  (LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
967     TEST_TARGET_SIZE (LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
968     TEST_TARGET_ALIGN(LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
969 }
970
971 static void test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEW(void)
972 {
973     /* LPGOPHER_LOCATION_ATTRIBUTE_TYPEW */
974     TEST_TYPE_SIZE   (LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
975     TEST_TYPE_ALIGN  (LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
976     TEST_TARGET_SIZE (LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
977     TEST_TARGET_ALIGN(LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
978 }
979
980 static void test_pack_LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE(void)
981 {
982     /* LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE */
983     TEST_TYPE_SIZE   (LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
984     TEST_TYPE_ALIGN  (LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
985     TEST_TARGET_SIZE (LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 8)
986     TEST_TARGET_ALIGN(LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
987 }
988
989 static void test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA(void)
990 {
991     /* LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA */
992     TEST_TYPE_SIZE   (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
993     TEST_TYPE_ALIGN  (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
994     TEST_TARGET_SIZE (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
995     TEST_TARGET_ALIGN(LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
996 }
997
998 static void test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW(void)
999 {
1000     /* LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW */
1001     TEST_TYPE_SIZE   (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
1002     TEST_TYPE_ALIGN  (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
1003     TEST_TARGET_SIZE (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
1004     TEST_TARGET_ALIGN(LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
1005 }
1006
1007 static void test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA(void)
1008 {
1009     /* LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA */
1010     TEST_TYPE_SIZE   (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
1011     TEST_TYPE_ALIGN  (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
1012     TEST_TARGET_SIZE (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
1013     TEST_TARGET_ALIGN(LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
1014 }
1015
1016 static void test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW(void)
1017 {
1018     /* LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW */
1019     TEST_TYPE_SIZE   (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
1020     TEST_TYPE_ALIGN  (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
1021     TEST_TARGET_SIZE (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
1022     TEST_TARGET_ALIGN(LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
1023 }
1024
1025 static void test_pack_LPGOPHER_SCORE_ATTRIBUTE_TYPE(void)
1026 {
1027     /* LPGOPHER_SCORE_ATTRIBUTE_TYPE */
1028     TEST_TYPE_SIZE   (LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
1029     TEST_TYPE_ALIGN  (LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
1030     TEST_TARGET_SIZE (LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
1031     TEST_TARGET_ALIGN(LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
1032 }
1033
1034 static void test_pack_LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE(void)
1035 {
1036     /* LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE */
1037     TEST_TYPE_SIZE   (LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
1038     TEST_TYPE_ALIGN  (LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
1039     TEST_TARGET_SIZE (LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 8)
1040     TEST_TARGET_ALIGN(LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
1041 }
1042
1043 static void test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEA(void)
1044 {
1045     /* LPGOPHER_SITE_ATTRIBUTE_TYPEA */
1046     TEST_TYPE_SIZE   (LPGOPHER_SITE_ATTRIBUTE_TYPEA, 4)
1047     TEST_TYPE_ALIGN  (LPGOPHER_SITE_ATTRIBUTE_TYPEA, 4)
1048     TEST_TARGET_SIZE (LPGOPHER_SITE_ATTRIBUTE_TYPEA, 4)
1049     TEST_TARGET_ALIGN(LPGOPHER_SITE_ATTRIBUTE_TYPEA, 4)
1050 }
1051
1052 static void test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEW(void)
1053 {
1054     /* LPGOPHER_SITE_ATTRIBUTE_TYPEW */
1055     TEST_TYPE_SIZE   (LPGOPHER_SITE_ATTRIBUTE_TYPEW, 4)
1056     TEST_TYPE_ALIGN  (LPGOPHER_SITE_ATTRIBUTE_TYPEW, 4)
1057     TEST_TARGET_SIZE (LPGOPHER_SITE_ATTRIBUTE_TYPEW, 4)
1058     TEST_TARGET_ALIGN(LPGOPHER_SITE_ATTRIBUTE_TYPEW, 4)
1059 }
1060
1061 static void test_pack_LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE(void)
1062 {
1063     /* LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE */
1064     TEST_TYPE_SIZE   (LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
1065     TEST_TYPE_ALIGN  (LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
1066     TEST_TARGET_SIZE (LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
1067     TEST_TARGET_ALIGN(LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
1068 }
1069
1070 static void test_pack_LPGOPHER_TTL_ATTRIBUTE_TYPE(void)
1071 {
1072     /* LPGOPHER_TTL_ATTRIBUTE_TYPE */
1073     TEST_TYPE_SIZE   (LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
1074     TEST_TYPE_ALIGN  (LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
1075     TEST_TARGET_SIZE (LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
1076     TEST_TARGET_ALIGN(LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
1077 }
1078
1079 static void test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA(void)
1080 {
1081     /* LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA */
1082     TEST_TYPE_SIZE   (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
1083     TEST_TYPE_ALIGN  (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
1084     TEST_TARGET_SIZE (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
1085     TEST_TARGET_ALIGN(LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
1086 }
1087
1088 static void test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW(void)
1089 {
1090     /* LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW */
1091     TEST_TYPE_SIZE   (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
1092     TEST_TYPE_ALIGN  (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
1093     TEST_TARGET_SIZE (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
1094     TEST_TARGET_ALIGN(LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
1095 }
1096
1097 static void test_pack_LPGOPHER_VERONICA_ATTRIBUTE_TYPE(void)
1098 {
1099     /* LPGOPHER_VERONICA_ATTRIBUTE_TYPE */
1100     TEST_TYPE_SIZE   (LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
1101     TEST_TYPE_ALIGN  (LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
1102     TEST_TARGET_SIZE (LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
1103     TEST_TARGET_ALIGN(LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
1104 }
1105
1106 static void test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEA(void)
1107 {
1108     /* LPGOPHER_VERSION_ATTRIBUTE_TYPEA */
1109     TEST_TYPE_SIZE   (LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
1110     TEST_TYPE_ALIGN  (LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
1111     TEST_TARGET_SIZE (LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
1112     TEST_TARGET_ALIGN(LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
1113 }
1114
1115 static void test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEW(void)
1116 {
1117     /* LPGOPHER_VERSION_ATTRIBUTE_TYPEW */
1118     TEST_TYPE_SIZE   (LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
1119     TEST_TYPE_ALIGN  (LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
1120     TEST_TARGET_SIZE (LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
1121     TEST_TARGET_ALIGN(LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
1122 }
1123
1124 static void test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEA(void)
1125 {
1126     /* LPGOPHER_VIEW_ATTRIBUTE_TYPEA */
1127     TEST_TYPE_SIZE   (LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 4)
1128     TEST_TYPE_ALIGN  (LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 4)
1129     TEST_TARGET_SIZE (LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 12)
1130     TEST_TARGET_ALIGN(LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 4)
1131 }
1132
1133 static void test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEW(void)
1134 {
1135     /* LPGOPHER_VIEW_ATTRIBUTE_TYPEW */
1136     TEST_TYPE_SIZE   (LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 4)
1137     TEST_TYPE_ALIGN  (LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 4)
1138     TEST_TARGET_SIZE (LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 12)
1139     TEST_TARGET_ALIGN(LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 4)
1140 }
1141
1142 static void test_pack_LPHINTERNET(void)
1143 {
1144     /* LPHINTERNET */
1145     TEST_TYPE_SIZE   (LPHINTERNET, 4)
1146     TEST_TYPE_ALIGN  (LPHINTERNET, 4)
1147     TEST_TARGET_SIZE (LPHINTERNET, 4)
1148     TEST_TARGET_ALIGN(LPHINTERNET, 4)
1149 }
1150
1151 static void test_pack_LPHTTP_VERSION_INFO(void)
1152 {
1153     /* LPHTTP_VERSION_INFO */
1154     TEST_TYPE_SIZE   (LPHTTP_VERSION_INFO, 4)
1155     TEST_TYPE_ALIGN  (LPHTTP_VERSION_INFO, 4)
1156     TEST_TARGET_SIZE (LPHTTP_VERSION_INFO, 8)
1157     TEST_TARGET_ALIGN(LPHTTP_VERSION_INFO, 4)
1158 }
1159
1160 static void test_pack_LPINTERNET_ASYNC_RESULT(void)
1161 {
1162     /* LPINTERNET_ASYNC_RESULT */
1163     TEST_TYPE_SIZE   (LPINTERNET_ASYNC_RESULT, 4)
1164     TEST_TYPE_ALIGN  (LPINTERNET_ASYNC_RESULT, 4)
1165     TEST_TARGET_SIZE (LPINTERNET_ASYNC_RESULT, 8)
1166     TEST_TARGET_ALIGN(LPINTERNET_ASYNC_RESULT, 4)
1167 }
1168
1169 static void test_pack_LPINTERNET_BUFFERSA(void)
1170 {
1171     /* LPINTERNET_BUFFERSA */
1172     TEST_TYPE_SIZE   (LPINTERNET_BUFFERSA, 4)
1173     TEST_TYPE_ALIGN  (LPINTERNET_BUFFERSA, 4)
1174     TEST_TARGET_SIZE (LPINTERNET_BUFFERSA, 40)
1175     TEST_TARGET_ALIGN(LPINTERNET_BUFFERSA, 4)
1176 }
1177
1178 static void test_pack_LPINTERNET_BUFFERSW(void)
1179 {
1180     /* LPINTERNET_BUFFERSW */
1181     TEST_TYPE_SIZE   (LPINTERNET_BUFFERSW, 4)
1182     TEST_TYPE_ALIGN  (LPINTERNET_BUFFERSW, 4)
1183     TEST_TARGET_SIZE (LPINTERNET_BUFFERSW, 40)
1184     TEST_TARGET_ALIGN(LPINTERNET_BUFFERSW, 4)
1185 }
1186
1187 static void test_pack_LPINTERNET_CACHE_ENTRY_INFOA(void)
1188 {
1189     /* LPINTERNET_CACHE_ENTRY_INFOA */
1190     TEST_TYPE_SIZE   (LPINTERNET_CACHE_ENTRY_INFOA, 4)
1191     TEST_TYPE_ALIGN  (LPINTERNET_CACHE_ENTRY_INFOA, 4)
1192 }
1193
1194 static void test_pack_LPINTERNET_CACHE_ENTRY_INFOW(void)
1195 {
1196     /* LPINTERNET_CACHE_ENTRY_INFOW */
1197     TEST_TYPE_SIZE   (LPINTERNET_CACHE_ENTRY_INFOW, 4)
1198     TEST_TYPE_ALIGN  (LPINTERNET_CACHE_ENTRY_INFOW, 4)
1199 }
1200
1201 static void test_pack_LPINTERNET_CERTIFICATE_INFOA(void)
1202 {
1203     /* LPINTERNET_CERTIFICATE_INFOA */
1204     TEST_TYPE_SIZE   (LPINTERNET_CERTIFICATE_INFOA, 4)
1205     TEST_TYPE_ALIGN  (LPINTERNET_CERTIFICATE_INFOA, 4)
1206     TEST_TARGET_SIZE (LPINTERNET_CERTIFICATE_INFOA, 40)
1207     TEST_TARGET_ALIGN(LPINTERNET_CERTIFICATE_INFOA, 4)
1208 }
1209
1210 static void test_pack_LPINTERNET_CERTIFICATE_INFOW(void)
1211 {
1212     /* LPINTERNET_CERTIFICATE_INFOW */
1213     TEST_TYPE_SIZE   (LPINTERNET_CERTIFICATE_INFOW, 4)
1214     TEST_TYPE_ALIGN  (LPINTERNET_CERTIFICATE_INFOW, 4)
1215     TEST_TARGET_SIZE (LPINTERNET_CERTIFICATE_INFOW, 40)
1216     TEST_TARGET_ALIGN(LPINTERNET_CERTIFICATE_INFOW, 4)
1217 }
1218
1219 static void test_pack_LPINTERNET_CONNECTED_INFO(void)
1220 {
1221     /* LPINTERNET_CONNECTED_INFO */
1222     TEST_TYPE_SIZE   (LPINTERNET_CONNECTED_INFO, 4)
1223     TEST_TYPE_ALIGN  (LPINTERNET_CONNECTED_INFO, 4)
1224     TEST_TARGET_SIZE (LPINTERNET_CONNECTED_INFO, 8)
1225     TEST_TARGET_ALIGN(LPINTERNET_CONNECTED_INFO, 4)
1226 }
1227
1228 static void test_pack_LPINTERNET_PORT(void)
1229 {
1230     /* LPINTERNET_PORT */
1231     TEST_TYPE_SIZE   (LPINTERNET_PORT, 4)
1232     TEST_TYPE_ALIGN  (LPINTERNET_PORT, 4)
1233     TEST_TARGET_SIZE (LPINTERNET_PORT, 2)
1234     TEST_TARGET_ALIGN(LPINTERNET_PORT, 2)
1235 }
1236
1237 static void test_pack_LPINTERNET_PROXY_INFOA(void)
1238 {
1239     /* LPINTERNET_PROXY_INFOA */
1240     TEST_TYPE_SIZE   (LPINTERNET_PROXY_INFOA, 4)
1241     TEST_TYPE_ALIGN  (LPINTERNET_PROXY_INFOA, 4)
1242     TEST_TARGET_SIZE (LPINTERNET_PROXY_INFOA, 12)
1243     TEST_TARGET_ALIGN(LPINTERNET_PROXY_INFOA, 4)
1244 }
1245
1246 static void test_pack_LPINTERNET_PROXY_INFOW(void)
1247 {
1248     /* LPINTERNET_PROXY_INFOW */
1249     TEST_TYPE_SIZE   (LPINTERNET_PROXY_INFOW, 4)
1250     TEST_TYPE_ALIGN  (LPINTERNET_PROXY_INFOW, 4)
1251     TEST_TARGET_SIZE (LPINTERNET_PROXY_INFOW, 12)
1252     TEST_TARGET_ALIGN(LPINTERNET_PROXY_INFOW, 4)
1253 }
1254
1255 static void test_pack_LPINTERNET_STATUS_CALLBACK(void)
1256 {
1257     /* LPINTERNET_STATUS_CALLBACK */
1258     TEST_TYPE_SIZE   (LPINTERNET_STATUS_CALLBACK, 4)
1259     TEST_TYPE_ALIGN  (LPINTERNET_STATUS_CALLBACK, 4)
1260     TEST_TARGET_SIZE (LPINTERNET_STATUS_CALLBACK, 4)
1261     TEST_TARGET_ALIGN(LPINTERNET_STATUS_CALLBACK, 4)
1262 }
1263
1264 static void test_pack_LPINTERNET_VERSION_INFO(void)
1265 {
1266     /* LPINTERNET_VERSION_INFO */
1267     TEST_TYPE_SIZE   (LPINTERNET_VERSION_INFO, 4)
1268     TEST_TYPE_ALIGN  (LPINTERNET_VERSION_INFO, 4)
1269     TEST_TARGET_SIZE (LPINTERNET_VERSION_INFO, 8)
1270     TEST_TARGET_ALIGN(LPINTERNET_VERSION_INFO, 4)
1271 }
1272
1273 static void test_pack_LPURL_COMPONENTSA(void)
1274 {
1275     /* LPURL_COMPONENTSA */
1276     TEST_TYPE_SIZE   (LPURL_COMPONENTSA, 4)
1277     TEST_TYPE_ALIGN  (LPURL_COMPONENTSA, 4)
1278 }
1279
1280 static void test_pack_LPURL_COMPONENTSW(void)
1281 {
1282     /* LPURL_COMPONENTSW */
1283     TEST_TYPE_SIZE   (LPURL_COMPONENTSW, 4)
1284     TEST_TYPE_ALIGN  (LPURL_COMPONENTSW, 4)
1285 }
1286
1287 static void test_pack_PFN_AUTH_NOTIFY(void)
1288 {
1289     /* PFN_AUTH_NOTIFY */
1290     TEST_TYPE_SIZE   (PFN_AUTH_NOTIFY, 4)
1291     TEST_TYPE_ALIGN  (PFN_AUTH_NOTIFY, 4)
1292 }
1293
1294 static void test_pack_PFN_DIAL_HANDLER(void)
1295 {
1296     /* PFN_DIAL_HANDLER */
1297     TEST_TYPE_SIZE   (PFN_DIAL_HANDLER, 4)
1298     TEST_TYPE_ALIGN  (PFN_DIAL_HANDLER, 4)
1299 }
1300
1301 static void test_pack_URL_COMPONENTSA(void)
1302 {
1303     /* URL_COMPONENTSA (pack 4) */
1304     TEST_FIELD_SIZE  (URL_COMPONENTSA, dwStructSize, 4)
1305     TEST_FIELD_ALIGN (URL_COMPONENTSA, dwStructSize, 4)
1306     TEST_FIELD_OFFSET(URL_COMPONENTSA, dwStructSize, 0)
1307     TEST_FIELD_SIZE  (URL_COMPONENTSA, lpszScheme, 4)
1308     TEST_FIELD_ALIGN (URL_COMPONENTSA, lpszScheme, 4)
1309     TEST_FIELD_OFFSET(URL_COMPONENTSA, lpszScheme, 4)
1310     TEST_FIELD_SIZE  (URL_COMPONENTSA, dwSchemeLength, 4)
1311     TEST_FIELD_ALIGN (URL_COMPONENTSA, dwSchemeLength, 4)
1312     TEST_FIELD_OFFSET(URL_COMPONENTSA, dwSchemeLength, 8)
1313 }
1314
1315 static void test_pack_URL_COMPONENTSW(void)
1316 {
1317     /* URL_COMPONENTSW (pack 4) */
1318     TEST_FIELD_SIZE  (URL_COMPONENTSW, dwStructSize, 4)
1319     TEST_FIELD_ALIGN (URL_COMPONENTSW, dwStructSize, 4)
1320     TEST_FIELD_OFFSET(URL_COMPONENTSW, dwStructSize, 0)
1321     TEST_FIELD_SIZE  (URL_COMPONENTSW, lpszScheme, 4)
1322     TEST_FIELD_ALIGN (URL_COMPONENTSW, lpszScheme, 4)
1323     TEST_FIELD_OFFSET(URL_COMPONENTSW, lpszScheme, 4)
1324     TEST_FIELD_SIZE  (URL_COMPONENTSW, dwSchemeLength, 4)
1325     TEST_FIELD_ALIGN (URL_COMPONENTSW, dwSchemeLength, 4)
1326     TEST_FIELD_OFFSET(URL_COMPONENTSW, dwSchemeLength, 8)
1327 }
1328
1329 static void test_pack(void)
1330 {
1331     test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEA();
1332     test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEW();
1333     test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEA();
1334     test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEW();
1335     test_pack_GOPHER_ASK_ATTRIBUTE_TYPEA();
1336     test_pack_GOPHER_ASK_ATTRIBUTE_TYPEW();
1337     test_pack_GOPHER_ATTRIBUTE_ENUMERATORA();
1338     test_pack_GOPHER_ATTRIBUTE_ENUMERATORW();
1339     test_pack_GOPHER_ATTRIBUTE_TYPEA();
1340     test_pack_GOPHER_ATTRIBUTE_TYPEW();
1341     test_pack_GOPHER_FIND_DATAA();
1342     test_pack_GOPHER_FIND_DATAW();
1343     test_pack_GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE();
1344     test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEA();
1345     test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEW();
1346     test_pack_GOPHER_MOD_DATE_ATTRIBUTE_TYPE();
1347     test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA();
1348     test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW();
1349     test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEA();
1350     test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEW();
1351     test_pack_GOPHER_SCORE_ATTRIBUTE_TYPE();
1352     test_pack_GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE();
1353     test_pack_GOPHER_SITE_ATTRIBUTE_TYPEA();
1354     test_pack_GOPHER_SITE_ATTRIBUTE_TYPEW();
1355     test_pack_GOPHER_TIMEZONE_ATTRIBUTE_TYPE();
1356     test_pack_GOPHER_TTL_ATTRIBUTE_TYPE();
1357     test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEA();
1358     test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEW();
1359     test_pack_GOPHER_VERONICA_ATTRIBUTE_TYPE();
1360     test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEA();
1361     test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEW();
1362     test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEA();
1363     test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEW();
1364     test_pack_GROUPID();
1365     test_pack_HINTERNET();
1366     test_pack_HTTP_VERSION_INFO();
1367     test_pack_INTERNET_ASYNC_RESULT();
1368     test_pack_INTERNET_AUTH_NOTIFY_DATA();
1369     test_pack_INTERNET_BUFFERSA();
1370     test_pack_INTERNET_BUFFERSW();
1371     test_pack_INTERNET_CACHE_ENTRY_INFOA();
1372     test_pack_INTERNET_CACHE_ENTRY_INFOW();
1373     test_pack_INTERNET_CERTIFICATE_INFOA();
1374     test_pack_INTERNET_CERTIFICATE_INFOW();
1375     test_pack_INTERNET_CONNECTED_INFO();
1376     test_pack_INTERNET_PORT();
1377     test_pack_INTERNET_PROXY_INFOA();
1378     test_pack_INTERNET_PROXY_INFOW();
1379     test_pack_INTERNET_STATUS_CALLBACK();
1380     test_pack_INTERNET_VERSION_INFO();
1381     test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA();
1382     test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW();
1383     test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEA();
1384     test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEW();
1385     test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEA();
1386     test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEW();
1387     test_pack_LPGOPHER_ATTRIBUTE_TYPEA();
1388     test_pack_LPGOPHER_ATTRIBUTE_TYPEW();
1389     test_pack_LPGOPHER_FIND_DATAA();
1390     test_pack_LPGOPHER_FIND_DATAW();
1391     test_pack_LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE();
1392     test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEA();
1393     test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEW();
1394     test_pack_LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE();
1395     test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA();
1396     test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW();
1397     test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA();
1398     test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW();
1399     test_pack_LPGOPHER_SCORE_ATTRIBUTE_TYPE();
1400     test_pack_LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE();
1401     test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEA();
1402     test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEW();
1403     test_pack_LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE();
1404     test_pack_LPGOPHER_TTL_ATTRIBUTE_TYPE();
1405     test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA();
1406     test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW();
1407     test_pack_LPGOPHER_VERONICA_ATTRIBUTE_TYPE();
1408     test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEA();
1409     test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEW();
1410     test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEA();
1411     test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEW();
1412     test_pack_LPHINTERNET();
1413     test_pack_LPHTTP_VERSION_INFO();
1414     test_pack_LPINTERNET_ASYNC_RESULT();
1415     test_pack_LPINTERNET_BUFFERSA();
1416     test_pack_LPINTERNET_BUFFERSW();
1417     test_pack_LPINTERNET_CACHE_ENTRY_INFOA();
1418     test_pack_LPINTERNET_CACHE_ENTRY_INFOW();
1419     test_pack_LPINTERNET_CERTIFICATE_INFOA();
1420     test_pack_LPINTERNET_CERTIFICATE_INFOW();
1421     test_pack_LPINTERNET_CONNECTED_INFO();
1422     test_pack_LPINTERNET_PORT();
1423     test_pack_LPINTERNET_PROXY_INFOA();
1424     test_pack_LPINTERNET_PROXY_INFOW();
1425     test_pack_LPINTERNET_STATUS_CALLBACK();
1426     test_pack_LPINTERNET_VERSION_INFO();
1427     test_pack_LPURL_COMPONENTSA();
1428     test_pack_LPURL_COMPONENTSW();
1429     test_pack_PFN_AUTH_NOTIFY();
1430     test_pack_PFN_DIAL_HANDLER();
1431     test_pack_URL_COMPONENTSA();
1432     test_pack_URL_COMPONENTSW();
1433 }
1434
1435 START_TEST(generated)
1436 {
1437 #ifdef _WIN64
1438     ok(0, "The type size / alignment tests don't support Win64 yet\n");
1439 #else
1440     test_pack();
1441 #endif
1442 }