[DSOUND_WINETEST]
[reactos.git] / rostests / winetests / dsound / ds3d.c
index 71ff2ab..ad380d8 100644 (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, "