Lei Zhang : user32: Add more edit dialog tests.
Alexandre Julliard
julliard at winehq.org
Thu Apr 3 05:43:49 CDT 2008
Module: wine
Branch: master
Commit: 1d1f1373af9b0210a09add13e2c7013cbe578b40
URL: http://source.winehq.org/git/wine.git/?a=commit;h=1d1f1373af9b0210a09add13e2c7013cbe578b40
Author: Lei Zhang <thestig at google.com>
Date: Wed Apr 2 10:50:09 2008 -0700
user32: Add more edit dialog tests.
---
dlls/user32/tests/edit.c | 34 +++++++++++++++++++++++++++++++++-
1 files changed, 33 insertions(+), 1 deletions(-)
diff --git a/dlls/user32/tests/edit.c b/dlls/user32/tests/edit.c
index 74092be..a40251c 100644
--- a/dlls/user32/tests/edit.c
+++ b/dlls/user32/tests/edit.c
@@ -90,6 +90,19 @@ static INT_PTR CALLBACK edit_dialog_proc(HWND hdlg, UINT msg, WPARAM wparam, LPA
PostMessage(hdlg, WM_USER, 0xdeadbeef, 1);
break;
+ /* multiple tab tests */
+ case 9:
+ PostMessage(hedit, WM_KEYDOWN, VK_TAB, 0xf0001);
+ PostMessage(hedit, WM_KEYDOWN, VK_TAB, 0xf0001);
+ PostMessage(hdlg, WM_USER, 0xdeadbeef, 2);
+ break;
+ case 10:
+ PostMessage(hedit, WM_KEYDOWN, VK_TAB, 0xf0001);
+ PostMessage(hedit, WM_KEYDOWN, VK_TAB, 0xf0001);
+ PostMessage(hedit, WM_KEYDOWN, VK_TAB, 0xf0001);
+ PostMessage(hdlg, WM_USER, 0xdeadbeef, 2);
+ break;
+
default:
break;
}
@@ -119,7 +132,9 @@ static INT_PTR CALLBACK edit_dialog_proc(HWND hdlg, UINT msg, WPARAM wparam, LPA
{
int len;
HWND hok = GetDlgItem(hdlg, IDOK);
+ HWND hcancel = GetDlgItem(hdlg, IDCANCEL);
HWND hedit = GetDlgItem(hdlg, 1000);
+ HWND hfocus = GetFocus();
if (wparam != 0xdeadbeef)
break;
@@ -136,12 +151,23 @@ static INT_PTR CALLBACK edit_dialog_proc(HWND hdlg, UINT msg, WPARAM wparam, LPA
case 1:
len = SendMessage(hedit, WM_GETTEXTLENGTH, 0, 0);
- if ((GetFocus() == hok) && len == 0)
+ if ((hfocus == hok) && len == 0)
EndDialog(hdlg, 444);
else
EndDialog(hdlg, 555);
break;
+ case 2:
+ if (hfocus == hok)
+ EndDialog(hdlg, 11);
+ else if (hfocus == hcancel)
+ EndDialog(hdlg, 22);
+ else if (hfocus == hedit)
+ EndDialog(hdlg, 33);
+ else
+ EndDialog(hdlg, 44);
+ break;
+
default:
EndDialog(hdlg, 555);
}
@@ -1307,6 +1333,12 @@ static void test_edit_dialog(void)
todo_wine ok(444 == r, "Expected %d, got %d\n", 444, r);
r = DialogBoxParam(hinst, "EDIT_DIALOG", NULL, (DLGPROC)edit_dialog_proc, 8);
ok(444 == r, "Expected %d, got %d\n", 444, r);
+
+ /* multiple tab tests */
+ r = DialogBoxParam(hinst, "EDIT_DIALOG", NULL, (DLGPROC)edit_dialog_proc, 9);
+ ok(22 == r, "Expected %d, got %d\n", 22, r);
+ r = DialogBoxParam(hinst, "EDIT_DIALOG", NULL, (DLGPROC)edit_dialog_proc, 10);
+ ok(33 == r, "Expected %d, got %d\n", 33, r);
}
static BOOL RegisterWindowClasses (void)
More information about the wine-cvs
mailing list