/* * Unit tests for dsound functions * * Copyright (c) 2002 Francois Gouget * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include "wine/test.h" #include "dsound.h" BOOL WINAPI dsenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription, LPCSTR lpcstrModule, LPVOID lpContext) { HRESULT rc; LPDIRECTSOUND dso; winetest_trace("Testing %s - %s\n",lpcstrDescription,lpcstrModule); rc=DirectSoundCreate(lpGuid,&dso,NULL); ok(rc==DS_OK,"DirectSoundCreate failed: %lx\n",rc); if (rc==DS_OK) { DSCAPS caps; caps.dwSize=0; rc=IDirectSound_GetCaps(dso,&caps); ok(rc==DSERR_INVALIDPARAM,"GetCaps should have failed: %lx\n",rc); caps.dwSize=sizeof(caps); rc=IDirectSound_GetCaps(dso,&caps); ok(rc==DS_OK,"GetCaps failed: %lx\n",rc); if (rc==DS_OK) { winetest_trace(" flags=%lx secondary min=%ld max=%ld\n", caps.dwFlags,caps.dwMinSecondarySampleRate, caps.dwMaxSecondarySampleRate); } IDirectSound_Release(dso); } return 1; } void dsound_out_tests() { HRESULT rc; rc=DirectSoundEnumerateA(&dsenum_callback,NULL); ok(rc==DS_OK,"DirectSoundEnumerate failed: %ld\n",rc); } START_TEST(dsound) { dsound_out_tests(); }