Module: wine Branch: master Commit: 8ae5352a72508eddb01a7f0b62503981942a6e01 URL: https://source.winehq.org/git/wine.git/?a=commit;h=8ae5352a72508eddb01a7f0b6...
Author: Daniel Lehman dlehman@esri.com Date: Tue Jul 17 16:23:37 2018 -0700
msvcr110/tests: Add GetNumberOfVirtualProcessors tests.
Signed-off-by: Daniel Lehman dlehman@esri.com Signed-off-by: Piotr Caban piotr@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
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 c0a182f..423b5d2 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(); }