Francois Gouget : user32/tests: Fix the ChangeDisplaySettingsEx()
test so it succeeds on NT4.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Feb 23 05:28:16 CST 2007
Module: wine
Branch: master
Commit: 3bf42961a826b7bc8060f1bcc9a5ce00c7b443d5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=3bf42961a826b7bc8060f1bcc9a5ce00c7b443d5
Author: Francois Gouget <fgouget at codeweavers.com>
Date: Thu Feb 22 12:43:06 2007 +0100
user32/tests: Fix the ChangeDisplaySettingsEx() test so it succeeds on NT4.
---
dlls/user32/tests/monitor.c | 39 +++++++++++++++++++++------------------
1 files changed, 21 insertions(+), 18 deletions(-)
diff --git a/dlls/user32/tests/monitor.c b/dlls/user32/tests/monitor.c
index a4ea8ec..edb881a 100644
--- a/dlls/user32/tests/monitor.c
+++ b/dlls/user32/tests/monitor.c
@@ -104,26 +104,26 @@ static void test_enumdisplaydevices(void)
struct vid_mode
{
DWORD w, h, bpp, freq, fields;
- LONG res;
+ LONG success;
};
static struct vid_mode vid_modes_test[] = {
- {640, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL | DM_DISPLAYFREQUENCY, DISP_CHANGE_SUCCESSFUL},
- {640, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT | DM_DISPLAYFREQUENCY, DISP_CHANGE_SUCCESSFUL},
- {640, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL , DISP_CHANGE_SUCCESSFUL},
- {640, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT , DISP_CHANGE_SUCCESSFUL},
- {640, 480, 0, 0, DM_BITSPERPEL , DISP_CHANGE_SUCCESSFUL},
- {640, 480, 0, 0, DM_DISPLAYFREQUENCY, DISP_CHANGE_SUCCESSFUL},
-
- {0, 0, 0, 0, DM_PELSWIDTH, DISP_CHANGE_SUCCESSFUL},
- {0, 0, 0, 0, DM_PELSHEIGHT, DISP_CHANGE_SUCCESSFUL},
-
- {640, 480, 0, 0, DM_PELSWIDTH, DISP_CHANGE_BADMODE},
- {640, 480, 0, 0, DM_PELSHEIGHT, DISP_CHANGE_BADMODE},
- { 0, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT, DISP_CHANGE_BADMODE},
- {640, 0, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT, DISP_CHANGE_BADMODE},
-
- {0, 0, 0, 10, DM_DISPLAYFREQUENCY, DISP_CHANGE_BADMODE},
+ {640, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL | DM_DISPLAYFREQUENCY, 1},
+ {640, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT | DM_DISPLAYFREQUENCY, 1},
+ {640, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL , 1},
+ {640, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT , 1},
+ {640, 480, 0, 0, DM_BITSPERPEL , 1},
+ {640, 480, 0, 0, DM_DISPLAYFREQUENCY, 1},
+
+ {0, 0, 0, 0, DM_PELSWIDTH, 1},
+ {0, 0, 0, 0, DM_PELSHEIGHT, 1},
+
+ {640, 480, 0, 0, DM_PELSWIDTH, 0},
+ {640, 480, 0, 0, DM_PELSHEIGHT, 0},
+ { 0, 480, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT, 0},
+ {640, 0, 0, 0, DM_PELSWIDTH | DM_PELSHEIGHT, 0},
+
+ {0, 0, 0, 0, DM_DISPLAYFREQUENCY, 0},
};
#define vid_modes_cnt (sizeof(vid_modes_test) / sizeof(vid_modes_test[0]))
@@ -144,7 +144,10 @@ static void test_ChangeDisplaySettingsEx(void)
dm.dmDisplayFrequency = vid_modes_test[i].freq;
dm.dmFields = vid_modes_test[i].fields;
res = ChangeDisplaySettingsEx(NULL, &dm, NULL, CDS_FULLSCREEN, NULL);
- ok(res == vid_modes_test[i].res, "Failed to change resolution[%d]: %d\n", i, res);
+ ok(vid_modes_test[i].success ?
+ (res == DISP_CHANGE_SUCCESSFUL) :
+ (res == DISP_CHANGE_BADMODE || res == DISP_CHANGE_BADPARAM),
+ "Unexpected ChangeDisplaySettingsEx() return code for resolution[%d]: %d\n", i, res);
if (res == DISP_CHANGE_SUCCESSFUL)
{
More information about the wine-cvs
mailing list