[DSOUND_WINETEST]

sync dsound_winetest to wine 1.1.39

svn path=/trunk/; revision=45883
This commit is contained in:
Christoph von Wittich 2010-03-05 18:44:59 +00:00
parent 257289fd89
commit 71ca03ec6a
4 changed files with 42 additions and 8 deletions

View file

@ -1158,13 +1158,12 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
"to create a 3D primary buffer: %08x\n",rc);
if (rc==DS_OK && primary!=NULL) {
LPDIRECTSOUND3DLISTENER listener=NULL;
LPDIRECTSOUNDBUFFER temp_buffer=NULL;
rc=IDirectSoundBuffer_QueryInterface(primary,
&IID_IDirectSound3DListener,(void **)&listener);
ok(rc==DS_OK && listener!=NULL,"IDirectSoundBuffer_QueryInterface() "
"failed to get a 3D listener: %08x\n",rc);
if (rc==DS_OK && listener!=NULL) {
LPDIRECTSOUNDBUFFER temp_buffer=NULL;
/* Checking the COM interface */
rc=IDirectSoundBuffer_QueryInterface(primary,
&IID_IDirectSoundBuffer,(LPVOID *)&temp_buffer);
@ -1195,6 +1194,16 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
winetest_interactive &&
!(dscaps.dwFlags & DSCAPS_EMULDRIVER),1.0,0,
listener,0,0,FALSE,0);
todo_wine {
temp_buffer = NULL;
rc=IDirectSound3DListener_QueryInterface(listener,
&IID_IKsPropertySet,(LPVOID *)&temp_buffer);
ok(rc==DS_OK && temp_buffer!=NULL,
"IDirectSound3DListener_QueryInterface didn't handle IKsPropertySet: ret = %08x\n", rc);
if(temp_buffer)
IKsPropertySet_Release(temp_buffer);
}
}
/* Testing the reference counting */
@ -1203,6 +1212,16 @@ static HRESULT test_primary_3d_with_listener(LPGUID lpGuid)
"references, should have 0\n",ref);
}
todo_wine {
temp_buffer = NULL;
rc=IDirectSoundBuffer_QueryInterface(primary,
&IID_IKsPropertySet,(LPVOID *)&temp_buffer);
ok(rc==DS_OK && temp_buffer!=NULL,
"IDirectSoundBuffer_QueryInterface didn't handle IKsPropertySet on primary buffer: ret = %08x\n", rc);
if(temp_buffer)
IKsPropertySet_Release(temp_buffer);
}
/* Testing the reference counting */
ref=IDirectSoundBuffer_Release(primary);
ok(ref==0,"IDirectSoundBuffer_Release() primary has %d references, "

View file

@ -55,7 +55,7 @@ static void IDirectSound_test(LPDIRECTSOUND dso, BOOL initialized,
IUnknown * unknown;
IDirectSound * ds;
IDirectSound8 * ds8;
DWORD speaker_config, new_speaker_config;
DWORD speaker_config, new_speaker_config, ref_speaker_config;
/* Try to Query for objects */
rc=IDirectSound_QueryInterface(dso,&IID_IUnknown,(LPVOID*)&unknown);
@ -144,11 +144,17 @@ static void IDirectSound_test(LPDIRECTSOUND dso, BOOL initialized,
rc=IDirectSound_GetSpeakerConfig(dso,&speaker_config);
ok(rc==DS_OK,"IDirectSound_GetSpeakerConfig() failed: %08x\n", rc);
ref_speaker_config = speaker_config;
speaker_config = DSSPEAKER_COMBINED(DSSPEAKER_STEREO,
DSSPEAKER_GEOMETRY_WIDE);
rc=IDirectSound_SetSpeakerConfig(dso,speaker_config);
ok(rc==DS_OK,"IDirectSound_SetSpeakerConfig() failed: %08x\n", rc);
if (speaker_config == ref_speaker_config)
speaker_config = DSSPEAKER_COMBINED(DSSPEAKER_STEREO,
DSSPEAKER_GEOMETRY_NARROW);
if(rc==DS_OK) {
rc=IDirectSound_SetSpeakerConfig(dso,speaker_config);
ok(rc==DS_OK,"IDirectSound_SetSpeakerConfig() failed: %08x\n", rc);
}
if (rc==DS_OK) {
rc=IDirectSound_GetSpeakerConfig(dso,&new_speaker_config);
ok(rc==DS_OK,"IDirectSound_GetSpeakerConfig() failed: %08x\n", rc);
@ -156,6 +162,7 @@ static void IDirectSound_test(LPDIRECTSOUND dso, BOOL initialized,
trace("IDirectSound_GetSpeakerConfig() failed to set speaker "
"config: expected 0x%08x, got 0x%08x\n",
speaker_config,new_speaker_config);
IDirectSound_SetSpeakerConfig(dso,ref_speaker_config);
}
EXIT:

View file

@ -54,7 +54,7 @@ static void IDirectSound8_test(LPDIRECTSOUND8 dso, BOOL initialized,
IUnknown * unknown;
IDirectSound * ds;
IDirectSound8 * ds8;
DWORD speaker_config, new_speaker_config;
DWORD speaker_config, new_speaker_config, ref_speaker_config;
DWORD certified;
/* Try to Query for objects */
@ -148,11 +148,17 @@ static void IDirectSound8_test(LPDIRECTSOUND8 dso, BOOL initialized,
rc=IDirectSound8_GetSpeakerConfig(dso,&speaker_config);
ok(rc==DS_OK,"IDirectSound8_GetSpeakerConfig() failed: %08x\n", rc);
ref_speaker_config = speaker_config;
speaker_config = DSSPEAKER_COMBINED(DSSPEAKER_STEREO,
DSSPEAKER_GEOMETRY_WIDE);
rc=IDirectSound8_SetSpeakerConfig(dso,speaker_config);
ok(rc==DS_OK,"IDirectSound8_SetSpeakerConfig() failed: %08x\n", rc);
if (speaker_config == ref_speaker_config)
speaker_config = DSSPEAKER_COMBINED(DSSPEAKER_STEREO,
DSSPEAKER_GEOMETRY_NARROW);
if(rc==DS_OK) {
rc=IDirectSound8_SetSpeakerConfig(dso,speaker_config);
ok(rc==DS_OK,"IDirectSound8_SetSpeakerConfig() failed: %08x\n", rc);
}
if (rc==DS_OK) {
rc=IDirectSound8_GetSpeakerConfig(dso,&new_speaker_config);
ok(rc==DS_OK,"IDirectSound8_GetSpeakerConfig() failed: %08x\n", rc);
@ -160,6 +166,7 @@ static void IDirectSound8_test(LPDIRECTSOUND8 dso, BOOL initialized,
trace("IDirectSound8_GetSpeakerConfig() failed to set speaker "
"config: expected 0x%08x, got 0x%08x\n",
speaker_config,new_speaker_config);
IDirectSound8_SetSpeakerConfig(dso,ref_speaker_config);
}
rc=IDirectSound8_VerifyCertification(dso, &certified);

View file

@ -550,6 +550,7 @@ static void propset_private_tests(void)
NULL, 0, &data, sizeof(data), &bytes);
ok(rc==DS_OK, "Couldn't enumerate: 0x%x\n",rc);
}
IKsPropertySet_Release(pps);
}
static BOOL WINAPI dsenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,