Commit 25088379 authored by Francois Gouget's avatar Francois Gouget Committed by Alexandre Julliard

pdh/tests: Some tests require that the user interface be in English.

parent 77053701
......@@ -37,6 +37,30 @@ static PDH_STATUS (WINAPI *pPdhValidatePathExW)(PDH_HLOG, LPCWSTR);
#define GETFUNCPTR(func) p##func = (void *)GetProcAddress( pdh, #func );
/* Returns true if the user interface is in English. Note that this does not
* presume of the formatting of dates, numbers, etc.
*/
static BOOL is_lang_english(void)
{
static HMODULE hkernel32 = NULL;
static LANGID (WINAPI *pGetThreadUILanguage)(void) = NULL;
static LANGID (WINAPI *pGetUserDefaultUILanguage)(void) = NULL;
if (!hkernel32)
{
hkernel32 = GetModuleHandleA("kernel32.dll");
pGetThreadUILanguage = (void*)GetProcAddress(hkernel32, "GetThreadUILanguage");
pGetUserDefaultUILanguage = (void*)GetProcAddress(hkernel32, "GetUserDefaultUILanguage");
}
if (pGetThreadUILanguage)
return PRIMARYLANGID(pGetThreadUILanguage()) == LANG_ENGLISH;
if (pGetUserDefaultUILanguage)
return PRIMARYLANGID(pGetUserDefaultUILanguage()) == LANG_ENGLISH;
return PRIMARYLANGID(GetUserDefaultLangID()) == LANG_ENGLISH;
}
static void init_function_ptrs( void )
{
pdh = GetModuleHandle( "pdh" );
......@@ -962,9 +986,9 @@ static void test_PdhGetDllVersion(void)
START_TEST(pdh)
{
if (PRIMARYLANGID(LANGIDFROMLCID(GetThreadLocale())) != LANG_ENGLISH)
if (!is_lang_english())
{
skip("non-english locale\n");
skip("An English UI is needed for the pdh tests\n");
return;
}
init_function_ptrs();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment