dmcompos/tests: Add Chord track GetParam/SetParam tests.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Michael Stefaniuc 2019-12-26 17:21:27 +01:00 committed by Alexandre Julliard
parent eb2e9271a4
commit a3c0a1d571
1 changed files with 19 additions and 0 deletions

View File

@ -267,6 +267,7 @@ static void test_chordmaptrack(void)
{ {
IDirectMusicTrack8 *dmt8; IDirectMusicTrack8 *dmt8;
IPersistStream *ps; IPersistStream *ps;
IDirectMusicChordMap *chordmap;
CLSID class; CLSID class;
ULARGE_INTEGER size; ULARGE_INTEGER size;
HRESULT hr; HRESULT hr;
@ -331,11 +332,29 @@ static void test_chordmaptrack(void)
ok(hr == E_POINTER, "IDirectMusicTrack8_IsParamSupported failed: %08x\n", hr); ok(hr == E_POINTER, "IDirectMusicTrack8_IsParamSupported failed: %08x\n", hr);
hr = IDirectMusicTrack8_IsParamSupported(dmt8, &GUID_IDirectMusicChordMap); hr = IDirectMusicTrack8_IsParamSupported(dmt8, &GUID_IDirectMusicChordMap);
ok(hr == S_OK, "IsParamSupported(GUID_IDirectMusicChordMap) failed: %08x, expected S_OK\n", hr); ok(hr == S_OK, "IsParamSupported(GUID_IDirectMusicChordMap) failed: %08x, expected S_OK\n", hr);
hr = IDirectMusicTrack8_GetParam(dmt8, &GUID_IDirectMusicChordMap, 0, NULL, &chordmap);
todo_wine ok(hr == DMUS_E_NOT_FOUND,
"GetParam(GUID_IDirectMusicChordMap) failed: %08x, expected DMUS_E_NOT_FOUND\n", hr);
hr = CoCreateInstance(&CLSID_DirectMusicChordMap, NULL, CLSCTX_INPROC_SERVER,
&IID_IDirectMusicChordMap, (void **)&chordmap);
ok(hr == S_OK, "DirectMusicChordMap create failed: %08x, expected S_OK\n", hr);
hr = IDirectMusicTrack8_SetParam(dmt8, &GUID_IDirectMusicChordMap, 0, chordmap);
ok(hr == S_OK, "SetParam(GUID_IDirectMusicChordMap) failed: %08x, expected S_OK\n", hr);
IDirectMusicChordMap_Release(chordmap);
for (i = 0; i < ARRAY_SIZE(unsupported); i++) { for (i = 0; i < ARRAY_SIZE(unsupported); i++) {
hr = IDirectMusicTrack8_IsParamSupported(dmt8, unsupported[i].type); hr = IDirectMusicTrack8_IsParamSupported(dmt8, unsupported[i].type);
ok(hr == DMUS_E_TYPE_UNSUPPORTED, ok(hr == DMUS_E_TYPE_UNSUPPORTED,
"IsParamSupported(%s) failed: %08x, expected DMUS_E_TYPE_UNSUPPORTED\n", "IsParamSupported(%s) failed: %08x, expected DMUS_E_TYPE_UNSUPPORTED\n",
unsupported[i].name, hr); unsupported[i].name, hr);
hr = IDirectMusicTrack8_GetParam(dmt8, unsupported[i].type, 0, NULL, &chordmap);
todo_wine ok(hr == DMUS_E_GET_UNSUPPORTED,
"GetParam(%s) failed: %08x, expected DMUS_E_GET_UNSUPPORTED\n",
unsupported[i].name, hr);
hr = IDirectMusicTrack8_SetParam(dmt8, unsupported[i].type, 0, chordmap);
todo_wine ok(hr == DMUS_E_SET_UNSUPPORTED,
"SetParam(%s) failed: %08x, expected DMUS_E_SET_UNSUPPORTED\n",
unsupported[i].name, hr);
} }
hr = IDirectMusicTrack8_AddNotificationType(dmt8, NULL); hr = IDirectMusicTrack8_AddNotificationType(dmt8, NULL);