Module: wine Branch: refs/heads/master Commit: 5ca8bbd20cdab6956e6f749bac23295e6ef4ba88 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=5ca8bbd20cdab6956e6f749b...
Author: Paul Vriens Paul.Vriens@xs4all.nl Date: Thu Jun 22 17:14:18 2006 +0200
uxtheme/tests: Added a bit more functional tests to OpenThemeData.
---
dlls/uxtheme/tests/system.c | 39 +++++++++++++++++++++++++++++++++++++-- 1 files changed, 37 insertions(+), 2 deletions(-)
diff --git a/dlls/uxtheme/tests/system.c b/dlls/uxtheme/tests/system.c index 9a1c558..e2f0edd 100644 --- a/dlls/uxtheme/tests/system.c +++ b/dlls/uxtheme/tests/system.c @@ -166,9 +166,10 @@ static void test_SetWindowTheme(void)
static void test_OpenThemeData(void) { - HTHEME hTheme; + HTHEME hTheme, hTheme2; HWND hWnd; BOOL bThemeActive; + HRESULT hRes; BOOL bDestroyed;
WCHAR szInvalidClassList[] = {'D','E','A','D','B','E','E','F', 0 }; @@ -275,6 +276,40 @@ static void test_OpenThemeData(void) "Expected ERROR_SUCCESS, got 0x%08lx\n", GetLastError());
+ /* GetWindowTheme should return the last handle opened by OpenThemeData */ + SetLastError(0xdeadbeef); + hTheme2 = pGetWindowTheme(hWnd); + ok( hTheme == hTheme2, "Expected the same HTHEME handle (%p<->%p)\n", + hTheme, hTheme2); + ok( GetLastError() == 0xdeadbeef, + "Expected 0xdeadbeef, got 0x%08lx\n", + GetLastError()); + + SetLastError(0xdeadbeef); + hRes = pCloseThemeData(hTheme); + ok( hRes == S_OK, "Expected S_OK, got 0x%08lx\n", hRes); + ok( GetLastError() == 0xdeadbeef, + "Expected 0xdeadbeef, got 0x%08lx\n", + GetLastError()); + + /* Close a second time */ + SetLastError(0xdeadbeef); + hRes = pCloseThemeData(hTheme); + ok( hRes == S_OK, "Expected S_OK, got 0x%08lx\n", hRes); + ok( GetLastError() == 0xdeadbeef, + "Expected 0xdeadbeef, got 0x%08lx\n", + GetLastError()); + + /* See if closing makes a difference for GetWindowTheme */ + SetLastError(0xdeadbeef); + hTheme2 = NULL; + hTheme2 = pGetWindowTheme(hWnd); + ok( hTheme == hTheme2, "Expected the same HTHEME handle (%p<->%p)\n", + hTheme, hTheme2); + ok( GetLastError() == 0xdeadbeef, + "Expected 0xdeadbeef, got 0x%08lx\n", + GetLastError()); + bDestroyed = DestroyWindow(hWnd); if (!bDestroyed) trace("Window %p couldn't be destroyed : 0x%08lx\n", @@ -314,7 +349,7 @@ START_TEST(system) trace("Starting test_SetWindowTheme()\n"); test_SetWindowTheme();
- /* OpenThemeData */ + /* OpenThemeData, a bit more functional now */ trace("Starting test_OpenThemeData()\n"); test_OpenThemeData();