On 11/14/19 7:18 PM, Jactry Zeng wrote:
+static void test_interfaces(void) +{
- ISpeechVoice *speech_voice;
- IDispatch *dispatch;
- IUnknown *unk;
- HRESULT hr;
- hr = CoCreateInstance(&CLSID_SpVoice, NULL, CLSCTX_INPROC_SERVER,
&IID_ISpeechVoice, (void **)&speech_voice);
- ok(hr == S_OK, "Failed to create ISpVoice interface: %#x.\n", hr);
- EXPECT_REF(speech_voice, 1);
- hr = CoCreateInstance(&CLSID_SpVoice, NULL, CLSCTX_INPROC_SERVER,
&IID_IDispatch, (void **)&dispatch);
- ok(hr == S_OK, "Failed to create IDispatch interface: %#x.\n", hr);
- EXPECT_REF(dispatch, 1);
- EXPECT_REF(speech_voice, 1);
- IDispatch_Release(dispatch);
- hr = CoCreateInstance(&CLSID_SpVoice, NULL, CLSCTX_INPROC_SERVER,
&IID_IUnknown, (void **)&unk);
- ok(hr == S_OK, "Failed to create IUnknown interface: %#x.\n", hr);
- EXPECT_REF(unk, 1);
- EXPECT_REF(speech_voice, 1);
- IUnknown_Release(unk);
- ISpeechVoice_Release(speech_voice);
+}
What does this test? Especially refcount parts.