From 590b1d9768f433238dd8bb2058356667403c6827 Mon Sep 17 00:00:00 2001 From: Daniel Lehman Date: Tue, 17 Jul 2018 16:23:37 -0700 Subject: [PATCH 1/2] msvcr110/tests: Add GetNumberOfVirtualProcessors tests. Signed-off-by: Daniel Lehman --- dlls/msvcr110/tests/msvcr110.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/dlls/msvcr110/tests/msvcr110.c b/dlls/msvcr110/tests/msvcr110.c index c0a182f546b..423b5d24995 100644 --- a/dlls/msvcr110/tests/msvcr110.c +++ b/dlls/msvcr110/tests/msvcr110.c @@ -33,6 +33,9 @@ static char* (CDECL *p_setlocale)(int category, const char* locale); +static unsigned int (CDECL *p_CurrentScheduler_GetNumberOfVirtualProcessors)(void); +static unsigned int (CDECL *p__CurrentScheduler__GetNumberOfVirtualProcessors)(void); + static BOOL init(void) { HMODULE module; @@ -45,9 +48,30 @@ static BOOL init(void) } p_setlocale = (void*)GetProcAddress(module, "setlocale"); + p_CurrentScheduler_GetNumberOfVirtualProcessors = (void*)GetProcAddress(module, "?GetNumberOfVirtualProcessors@CurrentScheduler@Concurrency@@SAIXZ"); + p__CurrentScheduler__GetNumberOfVirtualProcessors = (void*)GetProcAddress(module, "?_GetNumberOfVirtualProcessors@_CurrentScheduler@details@Concurrency@@SAIXZ"); + return TRUE; } +static void test_CurrentScheduler(void) +{ + unsigned int ncpus; + unsigned int expect; + SYSTEM_INFO si; + + expect = ~0; + ncpus = p_CurrentScheduler_GetNumberOfVirtualProcessors(); + ok(ncpus == expect, "expected %x, got %x\n", expect, ncpus); + + GetSystemInfo(&si); + expect = si.dwNumberOfProcessors; + ncpus = p__CurrentScheduler__GetNumberOfVirtualProcessors(); + todo_wine ok(ncpus == expect, "expected %u, got %u\n", expect, ncpus); + ncpus = p_CurrentScheduler_GetNumberOfVirtualProcessors(); + todo_wine ok(ncpus == expect, "expected %u, got %u\n", expect, ncpus); +} + static void test_setlocale(void) { int i; @@ -76,5 +100,6 @@ static void test_setlocale(void) START_TEST(msvcr110) { if (!init()) return; + test_CurrentScheduler(); /* MUST be first (at least among Concurrency tests) */ test_setlocale(); } -- 2.17.0