From ea4edbe1799ef1a4ebb416cf2fed392e4196880d Mon Sep 17 00:00:00 2001 From: Bruno Jesus <00cpxxx@gmail.com> Date: Tue, 6 Dec 2016 12:52:32 -0200 Subject: [PATCH] xinput1_3/tests: Test the GUIDs returned from XInputGetDSoundAudioDeviceGuids. Signed-off-by: Bruno Jesus <00cpxxx@gmail.com> Signed-off-by: Alexandre Julliard --- dlls/xinput1_3/tests/xinput.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/dlls/xinput1_3/tests/xinput.c b/dlls/xinput1_3/tests/xinput.c index 17884e1226b..25126bed9ee 100644 --- a/dlls/xinput1_3/tests/xinput.c +++ b/dlls/xinput1_3/tests/xinput.c @@ -175,18 +175,31 @@ static void test_get_dsoundaudiodevice(void) { DWORD controllerNum; DWORD result; - GUID soundRender; - GUID soundCapture; + GUID soundRender, soundCapture; + GUID testGuid = {0xFFFFFFFF, 0xFFFF, 0xFFFF, {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}}; + GUID emptyGuid = {0x0, 0x0, 0x0, {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0}}; for(controllerNum=0; controllerNum < XUSER_MAX_COUNT; controllerNum++) { + soundRender = soundCapture = testGuid; result = pXInputGetDSoundAudioDeviceGuids(controllerNum, &soundRender, &soundCapture); ok(result == ERROR_SUCCESS || result == ERROR_DEVICE_NOT_CONNECTED, "XInputGetDSoundAudioDeviceGuids failed with (%d)\n", result); if (ERROR_DEVICE_NOT_CONNECTED == result) { skip("Controller %d is not connected\n", controllerNum); + continue; } + + if (!IsEqualGUID(&soundRender, &emptyGuid)) + ok(!IsEqualGUID(&soundRender, &testGuid), "Broken GUID returned for sound render device\n"); + else + trace("Headset phone not attached\n"); + + if (!IsEqualGUID(&soundCapture, &emptyGuid)) + ok(!IsEqualGUID(&soundCapture, &testGuid), "Broken GUID returned for sound capture device\n"); + else + trace("Headset microphone not attached\n"); } result = pXInputGetDSoundAudioDeviceGuids(XUSER_MAX_COUNT+1, &soundRender, &soundCapture);