dmscript/tests: Build without -DWINE_NO_LONG_TYPES.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
7a2bead026
commit
be2553768f
|
@ -1,4 +1,3 @@
|
|||
EXTRADEFS = -DWINE_NO_LONG_TYPES
|
||||
TESTDLL = dmscript.dll
|
||||
IMPORTS = ole32
|
||||
|
||||
|
|
|
@ -94,37 +94,37 @@ static void test_COM(void)
|
|||
hr = CoCreateInstance(&CLSID_DirectMusicScript, &unk_obj.IUnknown_iface, CLSCTX_INPROC_SERVER,
|
||||
&IID_IUnknown, (void**)&unk_obj.inner_unk);
|
||||
ok(hr == CLASS_E_NOAGGREGATION,
|
||||
"DirectMusicScript create failed: %08x, expected CLASS_E_NOAGGREGATION\n", hr);
|
||||
"DirectMusicScript create failed: %#lx, expected CLASS_E_NOAGGREGATION\n", hr);
|
||||
ok(!unk_obj.inner_unk, "unk_obj.inner_unk = %p\n", unk_obj.inner_unk);
|
||||
|
||||
/* Invalid RIID */
|
||||
hr = CoCreateInstance(&CLSID_DirectMusicScript, NULL, CLSCTX_INPROC_SERVER, &IID_IClassFactory,
|
||||
(void**)&dms);
|
||||
ok(hr == E_NOINTERFACE, "DirectMusicScript create failed: %08x, expected E_NOINTERFACE\n", hr);
|
||||
ok(hr == E_NOINTERFACE, "DirectMusicScript create failed: %#lx, expected E_NOINTERFACE\n", hr);
|
||||
|
||||
/* Same refcount for all DirectMusicScript interfaces */
|
||||
hr = CoCreateInstance(&CLSID_DirectMusicScript, NULL, CLSCTX_INPROC_SERVER,
|
||||
&IID_IDirectMusicScript, (void**)&dms);
|
||||
ok(hr == S_OK, "DirectMusicScript create failed: %08x, expected S_OK\n", hr);
|
||||
ok(hr == S_OK, "DirectMusicScript create failed: %#lx, expected S_OK\n", hr);
|
||||
refcount = IDirectMusicScript_AddRef(dms);
|
||||
ok(refcount == 2, "refcount == %u, expected 2\n", refcount);
|
||||
ok(refcount == 2, "refcount == %lu, expected 2\n", refcount);
|
||||
|
||||
hr = IDirectMusicScript_QueryInterface(dms, &IID_IDirectMusicObject, (void**)&dmo);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IDirectMusicObject failed: %08x\n", hr);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IDirectMusicObject failed: %#lx\n", hr);
|
||||
refcount = IDirectMusicObject_AddRef(dmo);
|
||||
ok(refcount == 4, "refcount == %u, expected 4\n", refcount);
|
||||
ok(refcount == 4, "refcount == %lu, expected 4\n", refcount);
|
||||
refcount = IDirectMusicObject_Release(dmo);
|
||||
|
||||
hr = IDirectMusicScript_QueryInterface(dms, &IID_IPersistStream, (void**)&ps);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IPersistStream failed: %08x\n", hr);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IPersistStream failed: %#lx\n", hr);
|
||||
refcount = IPersistStream_AddRef(ps);
|
||||
ok(refcount == 5, "refcount == %u, expected 5\n", refcount);
|
||||
ok(refcount == 5, "refcount == %lu, expected 5\n", refcount);
|
||||
refcount = IPersistStream_Release(ps);
|
||||
|
||||
hr = IDirectMusicScript_QueryInterface(dms, &IID_IUnknown, (void**)&unk);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08x\n", hr);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %#lx\n", hr);
|
||||
refcount = IUnknown_AddRef(unk);
|
||||
ok(refcount == 6, "refcount == %u, expected 6\n", refcount);
|
||||
ok(refcount == 6, "refcount == %lu, expected 6\n", refcount);
|
||||
refcount = IUnknown_Release(unk);
|
||||
|
||||
while (IDirectMusicScript_Release(dms));
|
||||
|
@ -143,32 +143,31 @@ static void test_COM_scripttrack(void)
|
|||
hr = CoCreateInstance(&CLSID_DirectMusicScriptTrack, &unk_obj.IUnknown_iface,
|
||||
CLSCTX_INPROC_SERVER, &IID_IUnknown, (void**)&unk_obj.inner_unk);
|
||||
ok(hr == CLASS_E_NOAGGREGATION,
|
||||
"DirectMusicScriptTrack create failed: %08x, expected CLASS_E_NOAGGREGATION\n", hr);
|
||||
"DirectMusicScriptTrack create failed: %#lx, expected CLASS_E_NOAGGREGATION\n", hr);
|
||||
ok(!unk_obj.inner_unk, "unk_obj.inner_unk = %p\n", unk_obj.inner_unk);
|
||||
|
||||
/* Invalid RIID */
|
||||
hr = CoCreateInstance(&CLSID_DirectMusicScriptTrack, NULL, CLSCTX_INPROC_SERVER,
|
||||
&IID_IDirectMusicObject, (void**)&dmt);
|
||||
ok(hr == E_NOINTERFACE, "DirectMusicScriptTrack create failed: %08x, expected E_NOINTERFACE\n",
|
||||
hr);
|
||||
ok(hr == E_NOINTERFACE, "DirectMusicScriptTrack create failed: %#lx, expected E_NOINTERFACE\n", hr);
|
||||
|
||||
/* Same refcount for all DirectMusicScriptTrack interfaces */
|
||||
hr = CoCreateInstance(&CLSID_DirectMusicScriptTrack, NULL, CLSCTX_INPROC_SERVER,
|
||||
&IID_IDirectMusicTrack, (void**)&dmt);
|
||||
ok(hr == S_OK, "DirectMusicScriptTrack create failed: %08x, expected S_OK\n", hr);
|
||||
ok(hr == S_OK, "DirectMusicScriptTrack create failed: %#lx, expected S_OK\n", hr);
|
||||
refcount = IDirectMusicTrack_AddRef(dmt);
|
||||
ok(refcount == 2, "refcount == %u, expected 2\n", refcount);
|
||||
ok(refcount == 2, "refcount == %lu, expected 2\n", refcount);
|
||||
|
||||
hr = IDirectMusicTrack_QueryInterface(dmt, &IID_IPersistStream, (void**)&ps);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IPersistStream failed: %08x\n", hr);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IPersistStream failed: %#lx\n", hr);
|
||||
refcount = IPersistStream_AddRef(ps);
|
||||
ok(refcount == 4, "refcount == %u, expected 4\n", refcount);
|
||||
ok(refcount == 4, "refcount == %lu, expected 4\n", refcount);
|
||||
IPersistStream_Release(ps);
|
||||
|
||||
hr = IDirectMusicTrack_QueryInterface(dmt, &IID_IUnknown, (void**)&unk);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %08x\n", hr);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IUnknown failed: %#lx\n", hr);
|
||||
refcount = IUnknown_AddRef(unk);
|
||||
ok(refcount == 5, "refcount == %u, expected 5\n", refcount);
|
||||
ok(refcount == 5, "refcount == %lu, expected 5\n", refcount);
|
||||
refcount = IUnknown_Release(unk);
|
||||
|
||||
while (IDirectMusicTrack_Release(dmt));
|
||||
|
@ -184,19 +183,19 @@ static void test_dmscript(void)
|
|||
|
||||
hr = CoCreateInstance(&CLSID_DirectMusicScript, NULL, CLSCTX_INPROC_SERVER,
|
||||
&IID_IDirectMusicScript, (void**)&dms);
|
||||
ok(hr == S_OK, "DirectMusicScript create failed: %08x, expected S_OK\n", hr);
|
||||
ok(hr == S_OK, "DirectMusicScript create failed: %#lx, expected S_OK\n", hr);
|
||||
|
||||
/* Unimplemented IPersistStream methods */
|
||||
hr = IDirectMusicScript_QueryInterface(dms, &IID_IPersistStream, (void**)&ps);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IPersistStream failed: %08x\n", hr);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IPersistStream failed: %#lx\n", hr);
|
||||
hr = IPersistStream_GetClassID(ps, &class);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_GetClassID failed: %08x\n", hr);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_GetClassID failed: %#lx\n", hr);
|
||||
hr = IPersistStream_IsDirty(ps);
|
||||
ok(hr == S_FALSE, "IPersistStream_IsDirty failed: %08x\n", hr);
|
||||
ok(hr == S_FALSE, "IPersistStream_IsDirty failed: %#lx\n", hr);
|
||||
hr = IPersistStream_GetSizeMax(ps, &size);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_GetSizeMax failed: %08x\n", hr);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_GetSizeMax failed: %#lx\n", hr);
|
||||
hr = IPersistStream_Save(ps, NULL, TRUE);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_Save failed: %08x\n", hr);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_Save failed: %#lx\n", hr);
|
||||
|
||||
while (IDirectMusicScript_Release(dms));
|
||||
}
|
||||
|
@ -249,67 +248,67 @@ static void test_scripttrack(void)
|
|||
|
||||
hr = CoCreateInstance(&CLSID_DirectMusicScriptTrack, NULL, CLSCTX_INPROC_SERVER,
|
||||
&IID_IDirectMusicTrack8, (void**)&dmt);
|
||||
ok(hr == S_OK, "DirectMusicScriptTrack create failed: %08x, expected S_OK\n", hr);
|
||||
ok(hr == S_OK, "DirectMusicScriptTrack create failed: %#lx, expected S_OK\n", hr);
|
||||
|
||||
/* IDirectMusicTrack8 */
|
||||
todo_wine {
|
||||
hr = IDirectMusicTrack8_Init(dmt, NULL);
|
||||
ok(hr == E_POINTER, "IDirectMusicTrack8_Init failed: %08x\n", hr);
|
||||
ok(hr == E_POINTER, "IDirectMusicTrack8_Init failed: %#lx\n", hr);
|
||||
hr = IDirectMusicTrack8_InitPlay(dmt, NULL, NULL, NULL, 0, 0);
|
||||
ok(hr == E_POINTER, "IDirectMusicTrack8_InitPlay failed: %08x\n", hr);
|
||||
ok(hr == E_POINTER, "IDirectMusicTrack8_InitPlay failed: %#lx\n", hr);
|
||||
hr = IDirectMusicTrack8_EndPlay(dmt, NULL);
|
||||
ok(hr == E_POINTER, "IDirectMusicTrack8_EndPlay failed: %08x\n", hr);
|
||||
ok(hr == E_POINTER, "IDirectMusicTrack8_EndPlay failed: %#lx\n", hr);
|
||||
hr = IDirectMusicTrack8_Play(dmt, NULL, 0, 0, 0, 0, NULL, NULL, 0);
|
||||
ok(hr == E_POINTER, "IDirectMusicTrack8_Play failed: %08x\n", hr);
|
||||
ok(hr == E_POINTER, "IDirectMusicTrack8_Play failed: %#lx\n", hr);
|
||||
}
|
||||
hr = IDirectMusicTrack8_GetParam(dmt, NULL, 0, NULL, NULL);
|
||||
ok(hr == DMUS_E_GET_UNSUPPORTED, "IDirectMusicTrack8_GetParam failed: %08x\n", hr);
|
||||
ok(hr == DMUS_E_GET_UNSUPPORTED, "IDirectMusicTrack8_GetParam failed: %#lx\n", hr);
|
||||
for (i = 0; i < ARRAY_SIZE(unsupported); i++) {
|
||||
hr = IDirectMusicTrack8_IsParamSupported(dmt, unsupported[i].type);
|
||||
ok(hr == DMUS_E_TYPE_UNSUPPORTED,
|
||||
"IsParamSupported(%s) failed: %08x, expected DMUS_E_TYPE_UNSUPPORTED\n",
|
||||
"IsParamSupported(%s) failed: %#lx, expected DMUS_E_TYPE_UNSUPPORTED\n",
|
||||
unsupported[i].name, hr);
|
||||
hr = IDirectMusicTrack8_GetParam(dmt, unsupported[i].type, 0, NULL, buf);
|
||||
ok(hr == DMUS_E_GET_UNSUPPORTED,
|
||||
"GetParam(%s) failed: %08x, expected DMUS_E_GET_UNSUPPORTED\n",
|
||||
"GetParam(%s) failed: %#lx, expected DMUS_E_GET_UNSUPPORTED\n",
|
||||
unsupported[i].name, hr);
|
||||
hr = IDirectMusicTrack8_SetParam(dmt, unsupported[i].type, 0, buf);
|
||||
ok(hr == DMUS_E_SET_UNSUPPORTED,
|
||||
"SetParam(%s) failed: %08x, expected DMUS_E_SET_UNSUPPORTED\n",
|
||||
"SetParam(%s) failed: %#lx, expected DMUS_E_SET_UNSUPPORTED\n",
|
||||
unsupported[i].name, hr);
|
||||
}
|
||||
hr = IDirectMusicTrack8_AddNotificationType(dmt, NULL);
|
||||
ok(hr == E_NOTIMPL, "IDirectMusicTrack8_AddNotificationType failed: %08x\n", hr);
|
||||
ok(hr == E_NOTIMPL, "IDirectMusicTrack8_AddNotificationType failed: %#lx\n", hr);
|
||||
hr = IDirectMusicTrack8_RemoveNotificationType(dmt, NULL);
|
||||
ok(hr == E_NOTIMPL, "IDirectMusicTrack8_RemoveNotificationType failed: %08x\n", hr);
|
||||
ok(hr == E_NOTIMPL, "IDirectMusicTrack8_RemoveNotificationType failed: %#lx\n", hr);
|
||||
hr = IDirectMusicTrack8_Clone(dmt, 0, 0, NULL);
|
||||
todo_wine ok(hr == E_POINTER, "IDirectMusicTrack8_Clone failed: %08x\n", hr);
|
||||
todo_wine ok(hr == E_POINTER, "IDirectMusicTrack8_Clone failed: %#lx\n", hr);
|
||||
hr = IDirectMusicTrack8_PlayEx(dmt, NULL, 0, 0, 0, 0, NULL, NULL, 0);
|
||||
todo_wine ok(hr == E_POINTER, "IDirectMusicTrack8_PlayEx failed: %08x\n", hr);
|
||||
todo_wine ok(hr == E_POINTER, "IDirectMusicTrack8_PlayEx failed: %#lx\n", hr);
|
||||
hr = IDirectMusicTrack8_Compose(dmt, NULL, 0, NULL);
|
||||
ok(hr == E_NOTIMPL, "IDirectMusicTrack8_Compose failed: %08x\n", hr);
|
||||
ok(hr == E_NOTIMPL, "IDirectMusicTrack8_Compose failed: %#lx\n", hr);
|
||||
hr = IDirectMusicTrack8_Join(dmt, NULL, 0, NULL, 0, NULL);
|
||||
ok(hr == E_NOTIMPL, "IDirectMusicTrack8_Join failed: %08x\n", hr);
|
||||
ok(hr == E_NOTIMPL, "IDirectMusicTrack8_Join failed: %#lx\n", hr);
|
||||
|
||||
/* IPersistStream */
|
||||
hr = IDirectMusicTrack8_QueryInterface(dmt, &IID_IPersistStream, (void**)&ps);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IPersistStream failed: %08x\n", hr);
|
||||
ok(hr == S_OK, "QueryInterface for IID_IPersistStream failed: %#lx\n", hr);
|
||||
|
||||
hr = IPersistStream_GetClassID(ps, NULL);
|
||||
ok(hr == E_POINTER, "got 0x%08x\n", hr);
|
||||
ok(hr == E_POINTER, "got %#lx\n", hr);
|
||||
|
||||
hr = IPersistStream_GetClassID(ps, &class);
|
||||
ok(hr == S_OK, "IPersistStream_GetClassID failed: %08x\n", hr);
|
||||
ok(hr == S_OK, "IPersistStream_GetClassID failed: %#lx\n", hr);
|
||||
ok(IsEqualGUID(&class, &CLSID_DirectMusicScriptTrack),
|
||||
"Expected class CLSID_DirectMusicScriptTrack got %s\n", wine_dbgstr_guid(&class));
|
||||
|
||||
/* Unimplemented IPersistStream methods */
|
||||
hr = IPersistStream_IsDirty(ps);
|
||||
ok(hr == S_FALSE, "IPersistStream_IsDirty failed: %08x\n", hr);
|
||||
ok(hr == S_FALSE, "IPersistStream_IsDirty failed: %#lx\n", hr);
|
||||
hr = IPersistStream_GetSizeMax(ps, &size);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_GetSizeMax failed: %08x\n", hr);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_GetSizeMax failed: %#lx\n", hr);
|
||||
hr = IPersistStream_Save(ps, NULL, TRUE);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_Save failed: %08x\n", hr);
|
||||
ok(hr == E_NOTIMPL, "IPersistStream_Save failed: %#lx\n", hr);
|
||||
|
||||
while (IDirectMusicTrack8_Release(dmt));
|
||||
}
|
||||
|
@ -370,41 +369,41 @@ static void test_parsedescriptor(void)
|
|||
|
||||
hr = CoCreateInstance(&CLSID_DirectMusicScript, NULL, CLSCTX_INPROC_SERVER,
|
||||
&IID_IDirectMusicObject, (void **)&dmo);
|
||||
ok(hr == S_OK, "DirectMusicScript create failed: %08x, expected S_OK\n", hr);
|
||||
ok(hr == S_OK, "DirectMusicScript create failed: %#lx, expected S_OK\n", hr);
|
||||
|
||||
/* Nothing loaded */
|
||||
hr = IDirectMusicObject_GetDescriptor(dmo, &desc);
|
||||
ok(hr == S_OK, "GetDescriptor failed: %08x, expected S_OK\n", hr);
|
||||
ok(hr == S_OK, "GetDescriptor failed: %#lx, expected S_OK\n", hr);
|
||||
todo_wine ok(desc.dwValidData == (DMUS_OBJ_CLASS | DMUS_OBJ_VERSION),
|
||||
"Got valid data %#x, expected DMUS_OBJ_OBJECT | DMUS_OBJ_VERSION\n", desc.dwValidData);
|
||||
"Got valid data %#lx, expected DMUS_OBJ_OBJECT | DMUS_OBJ_VERSION\n", desc.dwValidData);
|
||||
ok(IsEqualGUID(&desc.guidClass, &CLSID_DirectMusicScript),
|
||||
"Got class guid %s, expected CLSID_DirectMusicScript\n",
|
||||
wine_dbgstr_guid(&desc.guidClass));
|
||||
ok(!desc.vVersion.dwVersionMS && !desc.vVersion.dwVersionLS,
|
||||
"Got DMUS_VERSION %u.%u, expected 0.0\n", desc.vVersion.dwVersionMS,
|
||||
"Got DMUS_VERSION %lu.%lu, expected 0.0\n", desc.vVersion.dwVersionMS,
|
||||
desc.vVersion.dwVersionLS);
|
||||
|
||||
/* Empty RIFF stream */
|
||||
stream = gen_riff_stream(empty);
|
||||
memset(&desc, 0, sizeof(desc));
|
||||
hr = IDirectMusicObject_ParseDescriptor(dmo, stream, &desc);
|
||||
ok(hr == S_OK, "ParseDescriptor failed: %08x, expected S_OK\n", hr);
|
||||
ok(!desc.dwValidData, "Got valid data %#x, expected 0\n", desc.dwValidData);
|
||||
ok(hr == S_OK, "ParseDescriptor failed: %#lx, expected S_OK\n", hr);
|
||||
ok(!desc.dwValidData, "Got valid data %#lx, expected 0\n", desc.dwValidData);
|
||||
IStream_Release(stream);
|
||||
|
||||
/* NULL pointers */
|
||||
memset(&desc, 0, sizeof(desc));
|
||||
hr = IDirectMusicObject_ParseDescriptor(dmo, NULL, &desc);
|
||||
ok(hr == E_POINTER, "ParseDescriptor failed: %08x, expected E_POINTER\n", hr);
|
||||
ok(hr == E_POINTER, "ParseDescriptor failed: %#lx, expected E_POINTER\n", hr);
|
||||
hr = IDirectMusicObject_ParseDescriptor(dmo, stream, NULL);
|
||||
ok(hr == E_POINTER, "ParseDescriptor failed: %08x, expected E_POINTER\n", hr);
|
||||
ok(hr == E_POINTER, "ParseDescriptor failed: %#lx, expected E_POINTER\n", hr);
|
||||
|
||||
/* Wrong form */
|
||||
empty[1] = DMUS_FOURCC_CONTAINER_FORM;
|
||||
stream = gen_riff_stream(empty);
|
||||
hr = IDirectMusicObject_ParseDescriptor(dmo, stream, &desc);
|
||||
ok(hr == DMUS_E_SCRIPT_INVALID_FILE,
|
||||
"ParseDescriptor failed: %08x, expected DMUS_E_SCRIPT_INVALID_FILE\n", hr);
|
||||
"ParseDescriptor failed: %#lx, expected DMUS_E_SCRIPT_INVALID_FILE\n", hr);
|
||||
IStream_Release(stream);
|
||||
|
||||
IDirectMusicObject_Release(dmo);
|
||||
|
|
Loading…
Reference in New Issue