[HEADERS]
[reactos.git] / rostests / apitests / user32api / tests / GetSystemMetrics.c
1
2 INT
3 Test_GetSystemMetrics(PTESTINFO pti)
4 {
5 INT ret;
6 HDC hDC;
7 BOOL BoolVal;
8 UINT UintVal;
9 RECT rect;
10
11 SetLastError(0);
12 hDC = GetDC(0);
13
14 ret = GetSystemMetrics(0);
15 TEST(ret > 0);
16
17 ret = GetSystemMetrics(64);
18 TEST(ret == 0);
19 ret = GetSystemMetrics(65);
20 TEST(ret == 0);
21 ret = GetSystemMetrics(66);
22 TEST(ret == 0);
23
24
25 ret = GetSystemMetrics(SM_CXSCREEN);
26 TEST(ret == GetDeviceCaps(hDC, HORZRES));
27 TEST(GetLastError() == 0);
28
29 ret = GetSystemMetrics(SM_CYSCREEN);
30 TEST(ret == GetDeviceCaps(hDC, VERTRES));
31 TEST(GetLastError() == 0);
32
33 ret = GetSystemMetrics(SM_CXVSCROLL);
34 // TEST(ret == 0);
35 TEST(GetLastError() == 0);
36
37 ret = GetSystemMetrics(SM_CYHSCROLL);
38 // TEST(ret == 0);
39 TEST(GetLastError() == 0);
40
41 ret = GetSystemMetrics(SM_CYCAPTION);
42 // TEST(ret == 0);
43 TEST(GetLastError() == 0);
44
45 ret = GetSystemMetrics(SM_CXBORDER);
46 SystemParametersInfoW(SPI_GETFOCUSBORDERWIDTH, 0, &UintVal, 0);
47 TEST(ret == UintVal);
48 TEST(GetLastError() == 0);
49
50 ret = GetSystemMetrics(SM_CYBORDER);
51 SystemParametersInfoW(SPI_GETFOCUSBORDERHEIGHT, 0, &UintVal, 0);
52 TEST(ret == UintVal);
53 TEST(GetLastError() == 0);
54
55 ret = GetSystemMetrics(SM_CXDLGFRAME);
56 // TEST(ret == 0);
57 TEST(GetLastError() == 0);
58
59 ret = GetSystemMetrics(SM_CYDLGFRAME);
60 // TEST(ret == 0);
61 TEST(GetLastError() == 0);
62
63 ret = GetSystemMetrics(SM_CYVTHUMB);
64 // TEST(ret == 0);
65 TEST(GetLastError() == 0);
66
67 ret = GetSystemMetrics(SM_CXHTHUMB);
68 // TEST(ret == 0);
69 TEST(GetLastError() == 0);
70
71 ret = GetSystemMetrics(SM_CXICON);
72 // TEST(ret == 0);
73 TEST(GetLastError() == 0);
74
75 ret = GetSystemMetrics(SM_CYICON);
76 // TEST(ret == 0);
77 TEST(GetLastError() == 0);
78
79 ret = GetSystemMetrics(SM_CXCURSOR);
80 // TEST(ret == 0);
81 TEST(GetLastError() == 0);
82
83 ret = GetSystemMetrics(SM_CYCURSOR);
84 // TEST(ret == 0);
85 TEST(GetLastError() == 0);
86
87 ret = GetSystemMetrics(SM_CYMENU);
88 // TEST(ret == 0);
89 TEST(GetLastError() == 0);
90
91 SystemParametersInfoW(SPI_GETWORKAREA, 0, &rect, 0);
92 ret = GetSystemMetrics(SM_CXFULLSCREEN);
93 TEST(ret == rect.right);
94 TEST(GetLastError() == 0);
95
96 ret = GetSystemMetrics(SM_CYFULLSCREEN);
97 TEST(ret == rect.bottom - rect.top - GetSystemMetrics(SM_CYCAPTION));
98 TEST(GetLastError() == 0);
99
100 ret = GetSystemMetrics(SM_CYKANJIWINDOW);
101 // TEST(ret == 0);
102 TEST(GetLastError() == 0);
103
104 ret = GetSystemMetrics(SM_MOUSEPRESENT);
105 TEST(ret == 1);
106 TEST(GetLastError() == 0);
107
108 ret = GetSystemMetrics(SM_CYVSCROLL);
109 // TEST(ret == 0);
110 TEST(GetLastError() == 0);
111
112 ret = GetSystemMetrics(SM_CXHSCROLL);
113 // TEST(ret == 0);
114 TEST(GetLastError() == 0);
115
116 ret = GetSystemMetrics(SM_DEBUG);
117 // TEST(ret == 0);
118 TEST(GetLastError() == 0);
119
120 ret = GetSystemMetrics(SM_SWAPBUTTON);
121 // TEST(ret == 0);
122 TEST(GetLastError() == 0);
123
124 ret = GetSystemMetrics(SM_RESERVED1);
125 // TEST(ret == 0);
126 TEST(GetLastError() == 0);
127
128 ret = GetSystemMetrics(SM_RESERVED2);
129 // TEST(ret == 0);
130 TEST(GetLastError() == 0);
131
132 ret = GetSystemMetrics(SM_RESERVED3);
133 // TEST(ret == 0);
134 TEST(GetLastError() == 0);
135
136 ret = GetSystemMetrics(SM_RESERVED4);
137 // TEST(ret == 0);
138 TEST(GetLastError() == 0);
139
140 ret = GetSystemMetrics(SM_CXMIN);
141 // TEST(ret == 0);
142 TEST(GetLastError() == 0);
143
144 ret = GetSystemMetrics(SM_CYMIN);
145 // TEST(ret == 0);
146 TEST(GetLastError() == 0);
147
148 ret = GetSystemMetrics(SM_CXSIZE);
149 // TEST(ret == 0);
150 TEST(GetLastError() == 0);
151
152 ret = GetSystemMetrics(SM_CYSIZE);
153 // TEST(ret == 0);
154 TEST(GetLastError() == 0);
155
156 ret = GetSystemMetrics(SM_CXFRAME);
157 // TEST(ret == 0);
158 TEST(GetLastError() == 0);
159
160 ret = GetSystemMetrics(SM_CYFRAME);
161 // TEST(ret == 0);
162 TEST(GetLastError() == 0);
163
164 ret = GetSystemMetrics(SM_CXMINTRACK);
165 // TEST(ret == 0);
166 TEST(GetLastError() == 0);
167
168 ret = GetSystemMetrics(SM_CYMINTRACK);
169 // TEST(ret == 0);
170 TEST(GetLastError() == 0);
171
172 ret = GetSystemMetrics(SM_CXDOUBLECLK);
173 // TEST(ret == 0);
174 TEST(GetLastError() == 0);
175
176 ret = GetSystemMetrics(SM_CYDOUBLECLK);
177 // TEST(ret == 0);
178 TEST(GetLastError() == 0);
179
180 ret = GetSystemMetrics(SM_CXICONSPACING);
181 // TEST(ret == 0);
182 TEST(GetLastError() == 0);
183
184 ret = GetSystemMetrics(SM_CYICONSPACING);
185 // TEST(ret == 0);
186 TEST(GetLastError() == 0);
187
188 ret = GetSystemMetrics(SM_MENUDROPALIGNMENT);
189 // TEST(ret == 0);
190 TEST(GetLastError() == 0);
191
192 ret = GetSystemMetrics(SM_PENWINDOWS);
193 // TEST(ret == 0);
194 TEST(GetLastError() == 0);
195
196 ret = GetSystemMetrics(SM_DBCSENABLED);
197 // TEST(ret == 0);
198 TEST(GetLastError() == 0);
199
200 ret = GetSystemMetrics(SM_CMOUSEBUTTONS);
201 // TEST(ret == 0);
202 TEST(GetLastError() == 0);
203
204 #if(WINVER >= 0x0400)
205 ret = GetSystemMetrics(SM_SECURE);
206 // TEST(ret == 0);
207 TEST(GetLastError() == 0);
208
209 ret = GetSystemMetrics(SM_CXEDGE);
210 // TEST(ret == 0);
211 TEST(GetLastError() == 0);
212
213 ret = GetSystemMetrics(SM_CYEDGE);
214 // TEST(ret == 0);
215 TEST(GetLastError() == 0);
216
217 ret = GetSystemMetrics(SM_CXMINSPACING);
218 // TEST(ret == 0);
219 TEST(GetLastError() == 0);
220
221 ret = GetSystemMetrics(SM_CYMINSPACING);
222 // TEST(ret == 0);
223 TEST(GetLastError() == 0);
224
225 ret = GetSystemMetrics(SM_CXSMICON);
226 // TEST(ret == 0);
227 TEST(GetLastError() == 0);
228
229 ret = GetSystemMetrics(SM_CYSMICON);
230 // TEST(ret == 0);
231 TEST(GetLastError() == 0);
232
233 ret = GetSystemMetrics(SM_CYSMCAPTION);
234 // TEST(ret == 0);
235 TEST(GetLastError() == 0);
236
237 ret = GetSystemMetrics(SM_CXSMSIZE);
238 // TEST(ret == 0);
239 TEST(GetLastError() == 0);
240
241 ret = GetSystemMetrics(SM_CYSMSIZE);
242 // TEST(ret == 0);
243 TEST(GetLastError() == 0);
244
245 ret = GetSystemMetrics(SM_CXMENUSIZE);
246 // TEST(ret == 0);
247 TEST(GetLastError() == 0);
248
249 ret = GetSystemMetrics(SM_CYMENUSIZE);
250 // TEST(ret == 0);
251 TEST(GetLastError() == 0);
252
253 ret = GetSystemMetrics(SM_ARRANGE);
254 // TEST(ret == 0);
255 TEST(GetLastError() == 0);
256
257 ret = GetSystemMetrics(SM_CXMINIMIZED);
258 // TEST(ret == 0);
259 TEST(GetLastError() == 0);
260
261 ret = GetSystemMetrics(SM_CYMINIMIZED);
262 // TEST(ret == 0);
263 TEST(GetLastError() == 0);
264
265 ret = GetSystemMetrics(SM_CXMAXTRACK);
266 // TEST(ret == 0);
267 TEST(GetLastError() == 0);
268
269 ret = GetSystemMetrics(SM_CYMAXTRACK);
270 // TEST(ret == 0);
271 TEST(GetLastError() == 0);
272
273 ret = GetSystemMetrics(SM_CXMAXIMIZED);
274 // TEST(ret == 0);
275 TEST(GetLastError() == 0);
276
277 ret = GetSystemMetrics(SM_CYMAXIMIZED);
278 // TEST(ret == 0);
279 TEST(GetLastError() == 0);
280
281 ret = GetSystemMetrics(SM_NETWORK);
282 // TEST(ret == 0);
283 TEST(GetLastError() == 0);
284
285 ret = GetSystemMetrics(SM_CLEANBOOT);
286 // TEST(ret == 0);
287 TEST(GetLastError() == 0);
288
289 ret = GetSystemMetrics(SM_CXDRAG);
290 // TEST(ret == 0);
291 TEST(GetLastError() == 0);
292
293 ret = GetSystemMetrics(SM_CYDRAG);
294 // TEST(ret == 0);
295 TEST(GetLastError() == 0);
296
297 ret = GetSystemMetrics(SM_SHOWSOUNDS);
298 SystemParametersInfoW(SPI_GETSHOWSOUNDS, 0, &BoolVal, 0);
299 TEST(ret == BoolVal);
300 TEST(GetLastError() == 0);
301
302 ret = GetSystemMetrics(SM_CXMENUCHECK);
303 // TEST(ret == 0);
304 TEST(GetLastError() == 0);
305
306 ret = GetSystemMetrics(SM_CYMENUCHECK);
307 // TEST(ret == 0);
308 TEST(GetLastError() == 0);
309
310 ret = GetSystemMetrics(SM_SLOWMACHINE);
311 // TEST(ret == 0);
312 TEST(GetLastError() == 0);
313
314 ret = GetSystemMetrics(SM_MIDEASTENABLED);
315 // TEST(ret == 0);
316 TEST(GetLastError() == 0);
317 #endif
318
319 #if (WINVER >= 0x0500) || (_WIN32_WINNT >= 0x0400)
320 ret = GetSystemMetrics(SM_MOUSEWHEELPRESENT);
321 // TEST(ret == 0);
322 TEST(GetLastError() == 0);
323 #endif
324
325 #if(WINVER >= 0x0500)
326 ret = GetSystemMetrics(SM_XVIRTUALSCREEN);
327 // TEST(ret == 0);
328 TEST(GetLastError() == 0);
329
330 ret = GetSystemMetrics(SM_YVIRTUALSCREEN);
331 // TEST(ret == 0);
332 TEST(GetLastError() == 0);
333
334 ret = GetSystemMetrics(SM_CXVIRTUALSCREEN);
335 // TEST(ret == 0);
336 TEST(GetLastError() == 0);
337
338 ret = GetSystemMetrics(SM_CYVIRTUALSCREEN);
339 // TEST(ret == 0);
340 TEST(GetLastError() == 0);
341
342 ret = GetSystemMetrics(SM_CMONITORS);
343 // TEST(ret == 0);
344 TEST(GetLastError() == 0);
345
346 ret = GetSystemMetrics(SM_SAMEDISPLAYFORMAT);
347 // TEST(ret == 0);
348 TEST(GetLastError() == 0);
349 #endif
350
351 #if(_WIN32_WINNT >= 0x0500)
352 ret = GetSystemMetrics(SM_IMMENABLED);
353 TEST(ret == 0);
354 TEST(GetLastError() == 0);
355 #endif
356
357 #if(_WIN32_WINNT >= 0x0501)
358 ret = GetSystemMetrics(SM_CXFOCUSBORDER);
359 SystemParametersInfoW(SPI_GETFOCUSBORDERWIDTH, 0, &UintVal, 0);
360 TEST(ret == UintVal);
361 TEST(GetLastError() == 0);
362
363 ret = GetSystemMetrics(SM_CYFOCUSBORDER);
364 SystemParametersInfoW(SPI_GETFOCUSBORDERHEIGHT, 0, &UintVal, 0);
365 TEST(ret == UintVal);
366 TEST(GetLastError() == 0);
367
368 ret = GetSystemMetrics(SM_TABLETPC);
369 // TEST(ret == 0);
370 TEST(GetLastError() == 0);
371
372 ret = GetSystemMetrics(SM_MEDIACENTER);
373 // TEST(ret == 0);
374 TEST(GetLastError() == 0);
375
376 ret = GetSystemMetrics(SM_STARTER);
377 // TEST(ret == 0);
378 TEST(GetLastError() == 0);
379
380 ret = GetSystemMetrics(SM_SERVERR2);
381 // TEST(ret == 0);
382 TEST(GetLastError() == 0);
383 #endif
384
385 #if(_WIN32_WINNT >= 0x0600)
386 ret = GetSystemMetrics(SM_MOUSEHORIZONTALWHEELPRESENT);
387 // TEST(ret == 0);
388 TEST(GetLastError() == 0);
389
390 ret = GetSystemMetrics(SM_CXPADDEDBORDER);
391 // TEST(ret == 0);
392 TEST(GetLastError() == 0);
393 #endif
394
395 return APISTATUS_NORMAL;
396 }