pdh/tests: Some tests require that the user interface be in English.
This commit is contained in:
parent
770537011a
commit
25088379d9
|
@ -37,6 +37,30 @@ static PDH_STATUS (WINAPI *pPdhValidatePathExW)(PDH_HLOG, LPCWSTR);
|
||||||
|
|
||||||
#define GETFUNCPTR(func) p##func = (void *)GetProcAddress( pdh, #func );
|
#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 )
|
static void init_function_ptrs( void )
|
||||||
{
|
{
|
||||||
pdh = GetModuleHandle( "pdh" );
|
pdh = GetModuleHandle( "pdh" );
|
||||||
|
@ -962,9 +986,9 @@ static void test_PdhGetDllVersion(void)
|
||||||
|
|
||||||
START_TEST(pdh)
|
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;
|
return;
|
||||||
}
|
}
|
||||||
init_function_ptrs();
|
init_function_ptrs();
|
||||||
|
|
Loading…
Reference in New Issue