mirror of
https://github.com/reactos/reactos.git
synced 2025-05-25 20:18:22 +00:00
[Wine Tests]
- Update the only two tests that I tested and know that does not have RTL support. The Right To Left support will be another comprehensive change that can be done in a non intrusive way as long no one uses it. svn path=/trunk/; revision=49117
This commit is contained in:
parent
75c09c4aa9
commit
770f1576a5
2 changed files with 107 additions and 7 deletions
|
@ -19,7 +19,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* To get CS_DROPSHADOW with the MSVC headers */
|
/* To get CS_DROPSHADOW with the MSVC headers */
|
||||||
#define _WIN32_WINNT 0x0501
|
//#define _WIN32_WINNT 0x0501
|
||||||
|
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@ -315,6 +315,7 @@ static void check_thread_instance( const char *name, HINSTANCE inst, HINSTANCE i
|
||||||
static void test_instances(void)
|
static void test_instances(void)
|
||||||
{
|
{
|
||||||
WNDCLASSA cls, wc;
|
WNDCLASSA cls, wc;
|
||||||
|
WNDCLASSEXA wcexA;
|
||||||
HWND hwnd, hwnd2;
|
HWND hwnd, hwnd2;
|
||||||
const char *name = "__test__";
|
const char *name = "__test__";
|
||||||
HINSTANCE kernel32 = GetModuleHandleA("kernel32");
|
HINSTANCE kernel32 = GetModuleHandleA("kernel32");
|
||||||
|
@ -348,6 +349,25 @@ static void test_instances(void)
|
||||||
check_thread_instance( name, kernel32, kernel32, kernel32 );
|
check_thread_instance( name, kernel32, kernel32, kernel32 );
|
||||||
ok( UnregisterClassA( name, kernel32 ), "Unregister failed for kernel32\n" );
|
ok( UnregisterClassA( name, kernel32 ), "Unregister failed for kernel32\n" );
|
||||||
|
|
||||||
|
ZeroMemory(&wcexA, sizeof(wcexA));
|
||||||
|
wcexA.lpfnWndProc = DefWindowProcA;
|
||||||
|
wcexA.lpszClassName = "__classex_test__";
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
wcexA.cbSize = sizeof(wcexA) - 1;
|
||||||
|
ok( ((RegisterClassExA( &wcexA ) == 0) && (GetLastError() == ERROR_INVALID_PARAMETER)),
|
||||||
|
"Succeeded with invalid number of cbSize bytes\n");
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
wcexA.cbSize = sizeof(wcexA) + 1;
|
||||||
|
ok( ((RegisterClassExA( &wcexA ) == 0) && (GetLastError() == ERROR_INVALID_PARAMETER)),
|
||||||
|
"Succeeded with invalid number of cbSize bytes\n");
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
wcexA.cbSize = sizeof(wcexA);
|
||||||
|
ok( RegisterClassExA( &wcexA ), "Failed with valid number of cbSize bytes\n");
|
||||||
|
wcexA.cbSize = 0xdeadbeef;
|
||||||
|
ok( GetClassInfoEx(main_module, wcexA.lpszClassName, &wcexA), "GetClassInfoEx failed\n");
|
||||||
|
ok( wcexA.cbSize == 0xdeadbeef, "GetClassInfoEx returned wrong cbSize value %d\n", wcexA.cbSize);
|
||||||
|
UnregisterClassA(wcexA.lpszClassName, main_module);
|
||||||
|
|
||||||
/* Bug 2631 - Supplying an invalid number of bytes fails */
|
/* Bug 2631 - Supplying an invalid number of bytes fails */
|
||||||
cls.cbClsExtra = 0;
|
cls.cbClsExtra = 0;
|
||||||
cls.cbWndExtra = -1;
|
cls.cbWndExtra = -1;
|
||||||
|
@ -880,10 +900,71 @@ static void test_extra_values(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void test_GetClassInfo(void)
|
||||||
|
{
|
||||||
|
static const WCHAR staticW[] = {'s','t','a','t','i','c',0};
|
||||||
|
WNDCLASSA wc;
|
||||||
|
WNDCLASSEXA wcx;
|
||||||
|
BOOL ret;
|
||||||
|
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
ret = GetClassInfoA(0, "static", &wc);
|
||||||
|
ok(ret, "GetClassInfoA() error %d\n", GetLastError());
|
||||||
|
|
||||||
|
if (0) { /* crashes under XP */
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
ret = GetClassInfoA(0, "static", NULL);
|
||||||
|
ok(ret, "GetClassInfoA() error %d\n", GetLastError());
|
||||||
|
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
ret = GetClassInfoW(0, staticW, NULL);
|
||||||
|
ok(ret, "GetClassInfoW() error %d\n", GetLastError());
|
||||||
|
}
|
||||||
|
|
||||||
|
wcx.cbSize = sizeof(wcx);
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
ret = GetClassInfoExA(0, "static", &wcx);
|
||||||
|
ok(ret, "GetClassInfoExA() error %d\n", GetLastError());
|
||||||
|
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
ret = GetClassInfoExA(0, "static", NULL);
|
||||||
|
ok(!ret, "GetClassInfoExA() should fail\n");
|
||||||
|
ok(GetLastError() == ERROR_NOACCESS ||
|
||||||
|
broken(GetLastError() == 0xdeadbeef), /* win9x */
|
||||||
|
"expected ERROR_NOACCESS, got %d\n", GetLastError());
|
||||||
|
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
ret = GetClassInfoExW(0, staticW, NULL);
|
||||||
|
ok(!ret, "GetClassInfoExW() should fail\n");
|
||||||
|
ok(GetLastError() == ERROR_NOACCESS ||
|
||||||
|
broken(GetLastError() == 0xdeadbeef) /* NT4 */ ||
|
||||||
|
broken(GetLastError() == ERROR_CALL_NOT_IMPLEMENTED), /* win9x */
|
||||||
|
"expected ERROR_NOACCESS, got %d\n", GetLastError());
|
||||||
|
|
||||||
|
wcx.cbSize = 0;
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
ret = GetClassInfoExA(0, "static", &wcx);
|
||||||
|
ok(ret, "GetClassInfoExA() error %d\n", GetLastError());
|
||||||
|
ok(wcx.cbSize == 0, "expected 0, got %u\n", wcx.cbSize);
|
||||||
|
|
||||||
|
wcx.cbSize = sizeof(wcx) - 1;
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
ret = GetClassInfoExA(0, "static", &wcx);
|
||||||
|
ok(ret, "GetClassInfoExA() error %d\n", GetLastError());
|
||||||
|
ok(wcx.cbSize == sizeof(wcx) - 1, "expected sizeof(wcx)-1, got %u\n", wcx.cbSize);
|
||||||
|
|
||||||
|
wcx.cbSize = sizeof(wcx) + 1;
|
||||||
|
SetLastError(0xdeadbeef);
|
||||||
|
ret = GetClassInfoExA(0, "static", &wcx);
|
||||||
|
ok(ret, "GetClassInfoExA() error %d\n", GetLastError());
|
||||||
|
ok(wcx.cbSize == sizeof(wcx) + 1, "expected sizeof(wcx)+1, got %u\n", wcx.cbSize);
|
||||||
|
}
|
||||||
|
|
||||||
START_TEST(class)
|
START_TEST(class)
|
||||||
{
|
{
|
||||||
HANDLE hInstance = GetModuleHandleA( NULL );
|
HANDLE hInstance = GetModuleHandleA( NULL );
|
||||||
|
|
||||||
|
test_GetClassInfo();
|
||||||
test_extra_values();
|
test_extra_values();
|
||||||
|
|
||||||
if (!GetModuleHandleW(0))
|
if (!GetModuleHandleW(0))
|
||||||
|
|
|
@ -760,12 +760,7 @@ static INT_PTR CALLBACK focusDlgWinProc (HWND hDlg, UINT uiMsg, WPARAM wParam,
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
case WM_COMMAND:
|
case WM_COMMAND:
|
||||||
if (LOWORD(wParam) == IDCANCEL)
|
if (LOWORD(wParam) == 200)
|
||||||
{
|
|
||||||
EndDialog(hDlg, LOWORD(wParam));
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
else if (LOWORD(wParam) == 200)
|
|
||||||
{
|
{
|
||||||
if (HIWORD(wParam) == EN_SETFOCUS)
|
if (HIWORD(wParam) == EN_SETFOCUS)
|
||||||
g_hwndInitialFocusT1 = (HWND)lParam;
|
g_hwndInitialFocusT1 = (HWND)lParam;
|
||||||
|
@ -1005,6 +1000,28 @@ static INT_PTR CALLBACK TestDefButtonDlgProc (HWND hDlg, UINT uiMsg,
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static INT_PTR CALLBACK TestReturnKeyDlgProc (HWND hDlg, UINT uiMsg,
|
||||||
|
WPARAM wParam, LPARAM lParam)
|
||||||
|
{
|
||||||
|
static int received_idok = 0;
|
||||||
|
switch (uiMsg)
|
||||||
|
{
|
||||||
|
case WM_INITDIALOG:
|
||||||
|
{
|
||||||
|
MSG msg = {hDlg, WM_KEYDOWN, VK_RETURN, 0x011c0001};
|
||||||
|
IsDialogMessage(hDlg, &msg);
|
||||||
|
}
|
||||||
|
ok(received_idok, "WM_COMMAND not received\n");
|
||||||
|
EndDialog(hDlg, 0);
|
||||||
|
return TRUE;
|
||||||
|
case WM_COMMAND:
|
||||||
|
ok(wParam==IDOK, "Expected IDOK\n");
|
||||||
|
received_idok = 1;
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
static void test_DialogBoxParamA(void)
|
static void test_DialogBoxParamA(void)
|
||||||
{
|
{
|
||||||
INT_PTR ret;
|
INT_PTR ret;
|
||||||
|
@ -1049,6 +1066,8 @@ static void test_DialogBoxParamA(void)
|
||||||
|
|
||||||
ret = DialogBoxParamA(GetModuleHandle(NULL), "TEST_EMPTY_DIALOG", 0, TestDefButtonDlgProc, 0);
|
ret = DialogBoxParamA(GetModuleHandle(NULL), "TEST_EMPTY_DIALOG", 0, TestDefButtonDlgProc, 0);
|
||||||
ok(ret == IDOK, "Expected IDOK\n");
|
ok(ret == IDOK, "Expected IDOK\n");
|
||||||
|
|
||||||
|
DialogBoxParamA(GetModuleHandle(NULL), "TEST_EMPTY_DIALOG", 0, TestReturnKeyDlgProc, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void test_DisabledDialogTest(void)
|
static void test_DisabledDialogTest(void)
|
||||||
|
|
Loading…
Reference in a new issue