Andrew Fenn : xinput1_3: Added tests for XInputSetState.
Alexandre Julliard
julliard at winehq.org
Fri Jan 2 08:25:44 CST 2009
Module: wine
Branch: master
Commit: 2c54c3dc82a577b754351dffee6a2812f660e8e5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=2c54c3dc82a577b754351dffee6a2812f660e8e5
Author: Andrew Fenn <andrewfenn at gmail.com>
Date: Thu Jan 1 08:06:34 2009 +0700
xinput1_3: Added tests for XInputSetState.
---
dlls/xinput1_3/tests/xinput.c | 34 ++++++++++++++++++++++++++++++++++
1 files changed, 34 insertions(+), 0 deletions(-)
diff --git a/dlls/xinput1_3/tests/xinput.c b/dlls/xinput1_3/tests/xinput.c
index 1125dcc..4b7f130 100644
--- a/dlls/xinput1_3/tests/xinput.c
+++ b/dlls/xinput1_3/tests/xinput.c
@@ -25,6 +25,37 @@
static DWORD (WINAPI *pXInputGetState)(DWORD, XINPUT_STATE*);
static DWORD (WINAPI *pXInputGetCapabilities)(DWORD,DWORD,XINPUT_CAPABILITIES*);
+static DWORD (WINAPI *pXInputSetState)(DWORD, XINPUT_VIBRATION*);
+static void (WINAPI *pXInputEnable)(BOOL);
+
+static void test_set_state(void)
+{
+ XINPUT_VIBRATION vibrator;
+ DWORD controllerNum;
+ DWORD result;
+
+ for(controllerNum=0; controllerNum < XUSER_MAX_COUNT; controllerNum++)
+ {
+ ZeroMemory(&vibrator, sizeof(XINPUT_VIBRATION));
+
+ vibrator.wLeftMotorSpeed = 0;
+ vibrator.wRightMotorSpeed = 0;
+ result = pXInputSetState(controllerNum, &vibrator);
+ ok(result == ERROR_SUCCESS || result == ERROR_DEVICE_NOT_CONNECTED, "XInputSetState failed with (%d)\n", result);
+
+ pXInputEnable(0);
+
+ vibrator.wLeftMotorSpeed = 65535;
+ vibrator.wRightMotorSpeed = 65535;
+ result = pXInputSetState(controllerNum, &vibrator);
+ ok(result == ERROR_SUCCESS || result == ERROR_DEVICE_NOT_CONNECTED, "XInputSetState failed with (%d)\n", result);
+
+ pXInputEnable(1);
+ }
+
+ result = pXInputSetState(XUSER_MAX_COUNT+1, &vibrator);
+ ok(result == ERROR_BAD_ARGUMENTS, "XInputSetState returned (%d)\n", result);
+}
static void test_get_state(void)
{
@@ -100,8 +131,11 @@ START_TEST(xinput)
return;
}
+ pXInputEnable = (void*)GetProcAddress(hXinput, "XInputEnable");
+ pXInputSetState = (void*)GetProcAddress(hXinput, "XInputSetState");
pXInputGetState = (void*)GetProcAddress(hXinput, "XInputGetState");
pXInputGetCapabilities = (void*)GetProcAddress(hXinput, "XInputGetCapabilities");
+ test_set_state();
test_get_state();
test_get_capabilities();
FreeLibrary(hXinput);
More information about the wine-cvs
mailing list