Alexandre Julliard : user32/tests: Fix a number of test failures on Windows 7.
Alexandre Julliard
julliard at winehq.org
Fri Sep 3 10:07:08 CDT 2010
Module: wine
Branch: master
Commit: cd56299e2f8dee91535c7334bfeebde689877097
URL: http://source.winehq.org/git/wine.git/?a=commit;h=cd56299e2f8dee91535c7334bfeebde689877097
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Sep 3 11:04:33 2010 +0200
user32/tests: Fix a number of test failures on Windows 7.
---
dlls/user32/tests/win.c | 37 ++++++++++++++++++++++++++++---------
1 files changed, 28 insertions(+), 9 deletions(-)
diff --git a/dlls/user32/tests/win.c b/dlls/user32/tests/win.c
index 02d4e7f..eeab8b0 100644
--- a/dlls/user32/tests/win.c
+++ b/dlls/user32/tests/win.c
@@ -678,8 +678,12 @@ static LRESULT WINAPI main_window_procA(HWND hwnd, UINT msg, WPARAM wparam, LPAR
/* Win9x does not fixup cx/xy for WM_WINDOWPOSCHANGING */
if (!(winpos->flags & SWP_NOSIZE) && !is_win9x)
{
- ok(winpos->cx >= 0 && winpos->cx <= 32767, "bad winpos->cx %d\n", winpos->cx);
- ok(winpos->cy >= 0 && winpos->cy <= 32767, "bad winpos->cy %d\n", winpos->cy);
+ ok((winpos->cx >= 0 && winpos->cx <= 32767) ||
+ winpos->cx == 32768, /* win7 doesn't truncate */
+ "bad winpos->cx %d\n", winpos->cx);
+ ok((winpos->cy >= 0 && winpos->cy <= 32767) ||
+ winpos->cy == 40000, /* win7 doesn't truncate */
+ "bad winpos->cy %d\n", winpos->cy);
}
break;
}
@@ -693,8 +697,12 @@ static LRESULT WINAPI main_window_procA(HWND hwnd, UINT msg, WPARAM wparam, LPAR
ok(winpos->x >= -32768 && winpos->x <= 32767, "bad winpos->x %d\n", winpos->x);
ok(winpos->y >= -32768 && winpos->y <= 32767, "bad winpos->y %d\n", winpos->y);
- ok(winpos->cx >= 0 && winpos->cx <= 32767, "bad winpos->cx %d\n", winpos->cx);
- ok(winpos->cy >= 0 && winpos->cy <= 32767, "bad winpos->cy %d\n", winpos->cy);
+ ok((winpos->cx >= 0 && winpos->cx <= 32767) ||
+ winpos->cx == 32768, /* win7 doesn't truncate */
+ "bad winpos->cx %d\n", winpos->cx);
+ ok((winpos->cy >= 0 && winpos->cy <= 32767) ||
+ winpos->cy == 40000, /* win7 doesn't truncate */
+ "bad winpos->cy %d\n", winpos->cy);
GetWindowRect(hwnd, &rc1);
SetRect(&rc2, winpos->x, winpos->y, winpos->x + winpos->cx, winpos->y + winpos->cy);
@@ -4471,6 +4479,8 @@ static LRESULT CALLBACK winsizes_wnd_proc(HWND hwnd, UINT msg, WPARAM wp, LPARAM
"wrong y size %d/%d\n", cs->cy, expected_cy );
ok( (rect.right - rect.left == expected_rect.right - expected_rect.left &&
rect.bottom - rect.top == expected_rect.bottom - expected_rect.top) ||
+ (rect.right - rect.left == min( 65535, expected_rect.right - expected_rect.left ) &&
+ rect.bottom - rect.top == min( 65535, expected_rect.bottom - expected_rect.top )) ||
broken( rect.right - rect.left == broken_rect.right - broken_rect.left &&
rect.bottom - rect.top == broken_rect.bottom - broken_rect.top) ||
broken( rect.right - rect.left == (short)broken_rect.right - (short)broken_rect.left &&
@@ -4772,8 +4782,10 @@ static void test_CreateWindow(void)
hwnd = CreateWindowExA(0, "Sizes_WndClass", NULL, WS_CHILD, 300000, 300000, 200000, 200000, parent, 0, 0, NULL);
ok( hwnd != 0, "creation failed err %u\n", GetLastError());
GetClientRect( hwnd, &rc );
- ok( rc.right == 200000 || broken(rc.right == (short)200000), "invalid rect right %u\n", rc.right );
- ok( rc.bottom == 200000 || broken(rc.bottom == (short)200000), "invalid rect bottom %u\n", rc.bottom );
+ ok( rc.right == 200000 || rc.right == 65535 || broken(rc.right == (short)200000),
+ "invalid rect right %u\n", rc.right );
+ ok( rc.bottom == 200000 || rc.bottom == 65535 || broken(rc.bottom == (short)200000),
+ "invalid rect bottom %u\n", rc.bottom );
DestroyWindow(hwnd);
expected_cx = expected_cy = -10;
@@ -4809,7 +4821,8 @@ static void test_CreateWindow(void)
ok( hwnd != 0, "creation failed err %u\n", GetLastError());
GetClientRect( hwnd, &rc );
ok( rc.right == 100, "invalid rect right %u\n", rc.right );
- ok( rc.bottom == 0x7fffffff - 10 || broken(rc.bottom == 0), "invalid rect bottom %u\n", rc.bottom );
+ ok( rc.bottom == 0x7fffffff - 10 || rc.bottom ==65535 || broken(rc.bottom == 0),
+ "invalid rect bottom %u\n", rc.bottom );
DestroyWindow(hwnd);
expected_cx = 0x7fffffff;
@@ -4819,8 +4832,10 @@ static void test_CreateWindow(void)
hwnd = CreateWindowExA(0, "Sizes_WndClass", NULL, WS_CHILD, 20, 10, 0x7fffffff, 0x7fffffff, parent, 0, 0, NULL);
ok( hwnd != 0, "creation failed err %u\n", GetLastError());
GetClientRect( hwnd, &rc );
- ok( rc.right == 0x7fffffff - 20 || broken(rc.right == 0), "invalid rect right %u\n", rc.right );
- ok( rc.bottom == 0x7fffffff - 10 || broken(rc.bottom == 0), "invalid rect bottom %u\n", rc.bottom );
+ ok( rc.right == 0x7fffffff - 20 || rc.right == 65535 || broken(rc.right == 0),
+ "invalid rect right %u\n", rc.right );
+ ok( rc.bottom == 0x7fffffff - 10 || rc.right == 65535 || broken(rc.bottom == 0),
+ "invalid rect bottom %u\n", rc.bottom );
DestroyWindow(hwnd);
/* top level window */
@@ -4850,6 +4865,10 @@ static void test_CreateWindow(void)
ok( hwnd != 0, "creation failed err %u\n", GetLastError());
expect_ex_style( hwnd, WS_EX_LAYOUTRTL );
DestroyWindow( hwnd );
+ hwnd = CreateWindowExA(0, "static", NULL, WS_POPUP, 0, 0, 20, 20, parent, 0, 0, NULL);
+ ok( hwnd != 0, "creation failed err %u\n", GetLastError());
+ expect_ex_style( hwnd, 0 );
+ DestroyWindow( hwnd );
SetWindowLongW( parent, GWL_EXSTYLE, WS_EX_APPWINDOW | WS_EX_LAYOUTRTL | WS_EX_NOINHERITLAYOUT );
hwnd = CreateWindowExA(0, "static", NULL, WS_CHILD, 0, 0, 20, 20, parent, 0, 0, NULL);
ok( hwnd != 0, "creation failed err %u\n", GetLastError());
More information about the wine-cvs
mailing list