[try3 1/5] user32/tests: Capture tests should not require no active window.

Florian Köberle florian at fkoeberle.de
Wed Nov 19 04:06:59 CST 2008


The tests test_caputre_1 and test_capture_2 failed, when other tests like test_SetFocus or test_SetActiveWindow got executed first.
This patch let the capture tests pass even when another window is active.
---
 dlls/user32/tests/win.c |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/dlls/user32/tests/win.c b/dlls/user32/tests/win.c
index f0e143a..63eeb25 100644
--- a/dlls/user32/tests/win.c
+++ b/dlls/user32/tests/win.c
@@ -2458,7 +2458,10 @@ static LRESULT WINAPI button_hook_proc(HWND button, UINT msg, WPARAM wparam, LPA
 
 static void test_capture_1(void)
 {
-    HWND button, capture;
+    HWND button, capture, oldFocus, oldActive;
+
+    oldFocus = GetFocus();
+    oldActive = GetActiveWindow();
 
     capture = GetCapture();
     ok(capture == 0, "GetCapture() = %p\n", capture);
@@ -2476,14 +2479,16 @@ static void test_capture_1(void)
     check_wnd_state(button, 0, button, button);
 
     DestroyWindow(button);
-    check_wnd_state(0, 0, 0, 0);
+    check_wnd_state(oldActive, 0, oldFocus, 0);
 }
 
 static void test_capture_2(void)
 {
-    HWND button, hwnd, capture;
+    HWND button, hwnd, capture, oldFocus, oldActive;
 
-    check_wnd_state(0, 0, 0, 0);
+    oldFocus = GetFocus();
+    oldActive = GetActiveWindow();
+    check_wnd_state(oldActive, 0, oldFocus, 0);
 
     button = CreateWindowExA(0, "button", NULL, WS_POPUP | WS_VISIBLE, 0, 0, 10, 10, 0, 0, 0, NULL);
     assert(button);
@@ -2533,7 +2538,7 @@ static void test_capture_2(void)
     check_wnd_state(button, button, button, 0);
 
     DestroyWindow(button);
-    check_wnd_state(0, 0, 0, 0);
+    check_wnd_state(oldActive, 0, oldFocus, 0);
 }
 
 static void test_capture_3(HWND hwnd1, HWND hwnd2)
-- 
1.6.0.4




More information about the wine-patches mailing list