Author: gadamopoulos Date: Sun Apr 17 10:35:09 2011 New Revision: 51376
URL: http://svn.reactos.org/svn/reactos?rev=51376&view=rev Log: [user32_apitest] - Some more tests for GetKeyState
Modified: trunk/rostests/apitests/user32/GetKeyState.c
Modified: trunk/rostests/apitests/user32/GetKeyState.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/user32/GetKeyStat... ============================================================================== --- trunk/rostests/apitests/user32/GetKeyState.c [iso-8859-1] (original) +++ trunk/rostests/apitests/user32/GetKeyState.c [iso-8859-1] Sun Apr 17 10:35:09 2011 @@ -21,12 +21,14 @@ if(pressed) { ok(altPressed,"\n"); - ok((GetKeyState(VK_MENU) & 0x8000), "Alt should not be pressed\n"); + ok((GetKeyState(VK_MENU) & 0x8000), "Alt should not be pressed\n");\ + ok((GetKeyState(VK_LMENU) & 0x8000), "Left alt should not be pressed\n");\ } else { ok(!altPressed,"\n"); ok(!(GetKeyState(VK_MENU) & 0x8000), "Alt should be pressed\n"); + ok(!(GetKeyState(VK_LMENU) & 0x8000), "Left alt should be pressed\n"); } return CallNextHookEx(hKbdHook, code, wParam, lParam); @@ -41,12 +43,16 @@ ok(pLLHook->flags & LLKHF_ALTDOWN,"Didn't get LLKHF_ALTDOWN flag\n"); ok((GetAsyncKeyState (VK_MENU) & 0x8000), "Alt should not be pressed in global kbd status\n"); ok(!(GetKeyState(VK_MENU) & 0x8000), "Alt should not be pressed in queue state\n"); + ok(!(GetAsyncKeyState (VK_LMENU) & 0x8000), "Left alt should not be pressed in global kbd status\n"); + ok(!(GetKeyState(VK_LMENU) & 0x8000), "Left alt should not be pressed in queue state\n"); } else if(wParam == WM_SYSKEYUP) { ok(!(pLLHook->flags & LLKHF_ALTDOWN),"got LLKHF_ALTDOWN flag\n"); ok(!(GetAsyncKeyState (VK_MENU) & 0x8000), "Alt should not be pressed in global kbd status\n"); ok((GetKeyState(VK_MENU) & 0x8000), "Alt should be pressed in queue state\n"); + ok(!(GetAsyncKeyState (VK_LMENU) & 0x8000), "Left alt should not be pressed in global kbd status\n"); + ok((GetKeyState(VK_LMENU) & 0x8000), "Left alt should be pressed in queue state\n"); } return CallNextHookEx(hKbdLLHook, nCode, wParam, lParam); @@ -54,6 +60,10 @@
static LRESULT CALLBACK WndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) { + if(msg == WM_SYSKEYDOWN) + { + ok(wParam == VK_MENU, "Got wrong wParam in WM_SYSKEYDOWN (%d instead of %d)\n", wParam, VK_MENU ); + } return DefWindowProcA( hWnd, msg, wParam, lParam ); }
@@ -104,11 +114,11 @@ ok(hKbdHook!=NULL," \n"); ok(hKbdLLHook!=NULL," \n"); - keybd_event(VK_MENU, 0, 0,0); + keybd_event(VK_LMENU, 0, 0,0); while (PeekMessage( &msg, 0, 0, 0, PM_REMOVE )) DispatchMessageA( &msg ); - keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP,0); + keybd_event(VK_LMENU, 0, KEYEVENTF_KEYUP,0); //fixme this hangs the test //while (PeekMessage( &msg, 0, 0, 0, PM_REMOVE|PM_NOYIELD )) DispatchMessageA( &msg );