Louis Lenders : kernel32/tests: Add simple test for SetThreadUILanguage.

Alexandre Julliard julliard at winehq.org
Tue Jun 26 04:44:27 CDT 2018


Module: wine
Branch: stable
Commit: 017390a70e9cd8b1087adcb4142f7e39c3fa0678
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=017390a70e9cd8b1087adcb4142f7e39c3fa0678

Author: Louis Lenders <xerox.xerox2000x at gmail.com>
Date:   Sat Mar 31 11:24:53 2018 +0200

kernel32/tests: Add simple test for SetThreadUILanguage.

Signed-off-by: Louis Lenders <xerox.xerox2000x at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
(cherry picked from commit 92fde7f35242206ce3e3d557cad00be237439132)
Conflicts:
	dlls/kernel32/tests/locale.c
Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>

---

 dlls/kernel32/tests/locale.c | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
index ce2f13b..f3b433e 100644
--- a/dlls/kernel32/tests/locale.c
+++ b/dlls/kernel32/tests/locale.c
@@ -103,6 +103,8 @@ static BOOL (WINAPI *pGetThreadPreferredUILanguages)(DWORD, ULONG*, WCHAR*, ULON
 static BOOL (WINAPI *pGetUserPreferredUILanguages)(DWORD, ULONG*, WCHAR*, ULONG*);
 static WCHAR (WINAPI *pRtlUpcaseUnicodeChar)(WCHAR);
 static INT (WINAPI *pGetNumberFormatEx)(LPCWSTR, DWORD, LPCWSTR, const NUMBERFMTW *, LPWSTR, int);
+static LANGID (WINAPI *pSetThreadUILanguage)(LANGID);
+static LANGID (WINAPI *pGetThreadUILanguage)(VOID);
 
 static void InitFunctionPointers(void)
 {
@@ -135,6 +137,8 @@ static void InitFunctionPointers(void)
   X(GetThreadPreferredUILanguages);
   X(GetUserPreferredUILanguages);
   X(GetNumberFormatEx);
+  X(SetThreadUILanguage);
+  X(GetThreadUILanguage);
 
   mod = GetModuleHandleA("ntdll");
   X(RtlUpcaseUnicodeChar);
@@ -5329,6 +5333,28 @@ static void test_GetUserPreferredUILanguages(void)
     HeapFree(GetProcessHeap(), 0, buffer);
 }
 
+static void test_SetThreadUILanguage(void)
+{
+    LANGID res;
+
+    if (!pGetThreadUILanguage)
+    {
+        win_skip("GetThreadUILanguage isn't implemented, skipping SetThreadUILanguage tests for version < Vista\n");
+        return;   /* BTW SetThreadUILanguage is present on winxp/2003 but doesn`t set the LANGID anyway when tested */
+    }
+
+    res = pSetThreadUILanguage(0);
+    todo_wine ok(res == pGetThreadUILanguage(), "expected %d got %d\n", pGetThreadUILanguage(), res);
+
+    res = pSetThreadUILanguage(MAKELANGID(LANG_DUTCH, SUBLANG_DUTCH_BELGIAN));
+    ok(res == MAKELANGID(LANG_DUTCH, SUBLANG_DUTCH_BELGIAN),
+    "expected %d got %d\n", MAKELANGID(LANG_DUTCH, SUBLANG_DUTCH_BELGIAN), res);
+
+    res = pSetThreadUILanguage(0);
+    todo_wine ok(res == MAKELANGID(LANG_DUTCH, SUBLANG_DUTCH_BELGIAN),
+    "expected %d got %d\n", MAKELANGID(LANG_DUTCH, SUBLANG_DUTCH_BELGIAN), res);
+}
+
 START_TEST(locale)
 {
   InitFunctionPointers();
@@ -5375,6 +5401,7 @@ START_TEST(locale)
   test_GetSystemPreferredUILanguages();
   test_GetThreadPreferredUILanguages();
   test_GetUserPreferredUILanguages();
+  test_SetThreadUILanguage();
   /* this requires collation table patch to make it MS compatible */
   if (0) test_sorting();
 }




More information about the wine-cvs mailing list