Commit 2af11b6e authored by Mohamad Al-Jaf's avatar Mohamad Al-Jaf Committed by Alexandre Julliard

pdh/tests: Add PdhVbGetDoubleCounterValue() tests.

parent e1c59cc5
...@@ -34,6 +34,7 @@ static PDH_STATUS (WINAPI *pPdhAddEnglishCounterW)(PDH_HQUERY, LPCWSTR, DWORD_ ...@@ -34,6 +34,7 @@ static PDH_STATUS (WINAPI *pPdhAddEnglishCounterW)(PDH_HQUERY, LPCWSTR, DWORD_
static PDH_STATUS (WINAPI *pPdhCollectQueryDataWithTime)(PDH_HQUERY, LONGLONG *); static PDH_STATUS (WINAPI *pPdhCollectQueryDataWithTime)(PDH_HQUERY, LONGLONG *);
static PDH_STATUS (WINAPI *pPdhValidatePathExA)(PDH_HLOG, LPCSTR); static PDH_STATUS (WINAPI *pPdhValidatePathExA)(PDH_HLOG, LPCSTR);
static PDH_STATUS (WINAPI *pPdhValidatePathExW)(PDH_HLOG, LPCWSTR); static PDH_STATUS (WINAPI *pPdhValidatePathExW)(PDH_HLOG, LPCWSTR);
static double (WINAPI *pPdhVbGetDoubleCounterValue)(PDH_HCOUNTER, PDH_STATUS *);
#define GETFUNCPTR(func) p##func = (void *)GetProcAddress( pdh, #func ); #define GETFUNCPTR(func) p##func = (void *)GetProcAddress( pdh, #func );
...@@ -69,6 +70,7 @@ static void init_function_ptrs( void ) ...@@ -69,6 +70,7 @@ static void init_function_ptrs( void )
GETFUNCPTR( PdhCollectQueryDataWithTime ) GETFUNCPTR( PdhCollectQueryDataWithTime )
GETFUNCPTR( PdhValidatePathExA ) GETFUNCPTR( PdhValidatePathExA )
GETFUNCPTR( PdhValidatePathExW ) GETFUNCPTR( PdhValidatePathExW )
GETFUNCPTR( PdhVbGetDoubleCounterValue )
} }
static const WCHAR processor_time[] = L"% Processor Time"; static const WCHAR processor_time[] = L"% Processor Time";
...@@ -424,6 +426,46 @@ static void test_PdhGetRawCounterValue( void ) ...@@ -424,6 +426,46 @@ static void test_PdhGetRawCounterValue( void )
ok(ret == ERROR_SUCCESS, "PdhCloseQuery failed 0x%08lx\n", ret); ok(ret == ERROR_SUCCESS, "PdhCloseQuery failed 0x%08lx\n", ret);
} }
static void test_PdhVbGetDoubleCounterValue(void)
{
PDH_FMT_COUNTERVALUE value;
PDH_HCOUNTER counter;
PDH_STATUS status;
PDH_HQUERY query;
double ret;
status = PdhOpenQueryA( NULL, 0, &query );
ok(status == ERROR_SUCCESS, "PdhOpenQueryA failed 0x%08lx\n", status);
status = PdhAddCounterA( query, "\\System\\System Up Time", 0, &counter );
ok(status == ERROR_SUCCESS, "PdhAddCounterA failed 0x%08lx\n", status);
status = PdhCollectQueryData(query);
ok(status == ERROR_SUCCESS, "PdhCollectQueryData failed 0x%08lx\n", status);
status = PdhGetFormattedCounterValue( counter, PDH_FMT_DOUBLE, NULL, &value );
ok(status == ERROR_SUCCESS, "PdhGetFormattedCounterValue failed 0x%08lx\n", status);
ret = pPdhVbGetDoubleCounterValue( NULL, NULL );
ok(ret == 0.0, "Unexpected value %f\n", ret);
status = PDH_FUNCTION_NOT_FOUND;
ret = pPdhVbGetDoubleCounterValue( NULL, &status );
ok(status == PDH_INVALID_HANDLE, "PdhVbGetDoubleCounterValue failed 0x%08lx\n", status);
ok(ret == 0.0, "Unexpected value %f\n", ret);
ret = pPdhVbGetDoubleCounterValue( counter, NULL );
ok(ret == value.doubleValue, "Unexpected value %f\n", ret);
status = PDH_FUNCTION_NOT_FOUND;
ret = pPdhVbGetDoubleCounterValue( counter, &status );
ok(status == ERROR_SUCCESS, "PdhVbGetDoubleCounterValue failed 0x%08lx\n", status);
ok(ret == value.doubleValue, "Unexpected value %f\n", ret);
status = PdhCloseQuery(query);
ok(status == ERROR_SUCCESS, "PdhCloseQuery failed 0x%08lx\n", status);
}
static void test_PdhSetCounterScaleFactor( void ) static void test_PdhSetCounterScaleFactor( void )
{ {
PDH_STATUS ret; PDH_STATUS ret;
...@@ -998,6 +1040,8 @@ START_TEST(pdh) ...@@ -998,6 +1040,8 @@ START_TEST(pdh)
test_PdhSetCounterScaleFactor(); test_PdhSetCounterScaleFactor();
test_PdhGetCounterTimeBase(); test_PdhGetCounterTimeBase();
test_PdhVbGetDoubleCounterValue();
test_PdhGetCounterInfoA(); test_PdhGetCounterInfoA();
test_PdhGetCounterInfoW(); test_PdhGetCounterInfoW();
......
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