Zhiyi Zhang : uxtheme/tests: Test SetWindowTheme() with a non-existent subclass.
Module: wine Branch: master Commit: 59f3758ecb627000e8fa845d80190a29131096c9 URL: https://source.winehq.org/git/wine.git/?a=commit;h=59f3758ecb627000e8fa845d8... Author: Zhiyi Zhang <zzhang(a)codeweavers.com> Date: Mon Jun 21 17:14:37 2021 +0800 uxtheme/tests: Test SetWindowTheme() with a non-existent subclass. Signed-off-by: Zhiyi Zhang <zzhang(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/uxtheme/tests/system.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/dlls/uxtheme/tests/system.c b/dlls/uxtheme/tests/system.c index 5b6c91dc481..ae4de902730 100644 --- a/dlls/uxtheme/tests/system.c +++ b/dlls/uxtheme/tests/system.c @@ -102,6 +102,7 @@ static void test_GetWindowTheme(void) static void test_SetWindowTheme(void) { + HTHEME hTheme; HRESULT hRes; HWND hWnd; @@ -110,12 +111,30 @@ todo_wine ok( hRes == E_HANDLE, "Expected E_HANDLE, got 0x%08x\n", hRes); /* Only do the bare minimum to get a valid hwnd */ - hWnd = CreateWindowExA(0, "static", "", WS_POPUP, 0,0,100,100,0, 0, 0, NULL); + hWnd = CreateWindowExA(0, "button", "test", WS_POPUP, 0, 0, 100, 100, 0, 0, 0, NULL); ok(hWnd != NULL, "Failed to create a test window.\n"); hRes = SetWindowTheme(hWnd, NULL, NULL); ok( hRes == S_OK, "Expected S_OK, got 0x%08x\n", hRes); + if (IsThemeActive()) + { + hTheme = OpenThemeData(hWnd, L"Button"); + ok(!!hTheme, "OpenThemeData failed.\n"); + CloseThemeData(hTheme); + + hRes = SetWindowTheme(hWnd, L"deadbeef", NULL); + ok(hRes == S_OK, "Expected S_OK, got 0x%08x.\n", hRes); + + hTheme = OpenThemeData(hWnd, L"Button"); + todo_wine ok(!!hTheme, "OpenThemeData failed.\n"); + CloseThemeData(hTheme); + } + else + { + skip("No active theme, skipping rest of SetWindowTheme tests.\n"); + } + DestroyWindow(hWnd); }
participants (1)
-
Alexandre Julliard