Alistair Leslie-Hughes : dpnet/tests: Add tests to show IDirectPlay8ThreadPool is a singleton object.
Alexandre Julliard
julliard at winehq.org
Thu Feb 16 15:12:29 CST 2017
Module: wine
Branch: master
Commit: 1f788c0314390620ae5f8dbcbee22ba8dfc055fd
URL: http://source.winehq.org/git/wine.git/?a=commit;h=1f788c0314390620ae5f8dbcbee22ba8dfc055fd
Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Thu Feb 16 06:36:02 2017 +0000
dpnet/tests: Add tests to show IDirectPlay8ThreadPool is a singleton object.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/dpnet/tests/thread.c | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/dlls/dpnet/tests/thread.c b/dlls/dpnet/tests/thread.c
index 37c226f..7129739 100644
--- a/dlls/dpnet/tests/thread.c
+++ b/dlls/dpnet/tests/thread.c
@@ -209,6 +209,34 @@ static void test_enum_hosts(void)
CloseHandle(enumevent);
}
+static void test_singleton(void)
+{
+ HRESULT hr;
+ IDirectPlay8ThreadPool *pool1, *pool2;
+
+ hr = CoCreateInstance( &CLSID_DirectPlay8ThreadPool, NULL, CLSCTX_ALL, &IID_IDirectPlay8ThreadPool, (void**)&pool1);
+ ok(hr == S_OK, "got 0x%08x\n", hr);
+
+ hr = CoCreateInstance( &CLSID_DirectPlay8ThreadPool, NULL, CLSCTX_ALL, &IID_IDirectPlay8ThreadPool, (void**)&pool2);
+ ok(hr == S_OK, "got 0x%08x\n", hr);
+ ok(pool1 != pool2, "same pointer returned.\n");
+
+ hr = IDirectPlay8ThreadPool_Initialize(pool1, NULL, &DirectPlayThreadHandler, 0);
+ ok(hr == S_OK, "got 0x%08x\n", hr);
+
+ hr = IDirectPlay8ThreadPool_Initialize(pool2, NULL, &DirectPlayThreadHandler, 0);
+ todo_wine ok(hr == DPNERR_ALREADYINITIALIZED, "got 0x%08x\n", hr);
+
+ hr = IDirectPlay8ThreadPool_Close(pool1, 0);
+ ok(hr == S_OK, "got 0x%08x\n", hr);
+
+ hr = IDirectPlay8ThreadPool_Close(pool2, 0);
+ todo_wine ok(hr == DPNERR_UNINITIALIZED, "got 0x%08x\n", hr);
+
+ IDirectPlay8ThreadPool_Release(pool1);
+ IDirectPlay8ThreadPool_Release(pool2);
+}
+
START_TEST(thread)
{
HRESULT hr;
@@ -251,6 +279,7 @@ START_TEST(thread)
create_threadpool();
test_enum_hosts();
+ test_singleton();
CoUninitialize();
}
More information about the wine-cvs
mailing list