windows.media.speech/tests: Add a test for IAsyncOperation_get_Completed.

This one actually retrieves a handler.

Signed-off-by: Bernhard Kölbl <besentv@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Bernhard Kölbl 2022-04-27 19:12:46 +02:00 committed by Alexandre Julliard
parent 44cee36ca9
commit 0636cf5808
1 changed files with 11 additions and 1 deletions

View File

@ -860,7 +860,7 @@ static void test_SpeechRecognizer(void)
HANDLE put_thread;
HRESULT hr, error_code;
UINT32 id;
LONG ref;
LONG ref, old_ref;
hr = RoInitialize(RO_INIT_MULTITHREADED);
ok(hr == S_OK, "RoInitialize failed, hr %#lx.\n", hr);
@ -1137,6 +1137,16 @@ static void test_SpeechRecognizer(void)
todo_wine ok(compilation_handler.ref == 3, "Got unexpected ref %lu.\n", compilation_handler.ref);
todo_wine check_refcount(operation, 3);
handler = (void*)0xdeadbeef;
old_ref = compilation_handler.ref;
hr = IAsyncOperation_SpeechRecognitionCompilationResult_get_Completed(operation, &handler);
ok(hr == S_OK, "IAsyncOperation_SpeechRecognitionCompilationResult_get_Completed failed, hr %#lx.\n", hr);
todo_wine ok(handler == &compilation_handler.IAsyncHandler_Compilation_iface, "Handler was %p.\n", handler);
ref = compilation_handler.ref - old_ref;
todo_wine ok(ref == 1, "The ref was increased by %lu.\n", ref);
if (handler) IAsyncOperationCompletedHandler_SpeechRecognitionCompilationResult_Release(handler);
hr = IAsyncOperation_SpeechRecognitionCompilationResult_QueryInterface(operation, &IID_IAsyncInfo, (void **)&info);
ok(hr == S_OK, "Got unexpected hr %#lx.\n", hr);