diff --git a/rostests/apitests/user32/SystemParametersInfo.c b/rostests/apitests/user32/SystemParametersInfo.c index 16dec6f780d..506ee89742d 100644 --- a/rostests/apitests/user32/SystemParametersInfo.c +++ b/rostests/apitests/user32/SystemParametersInfo.c @@ -150,6 +150,27 @@ static void Test_MouseSpeed() ok(ret, "SystemParametersInfo failed\n"); ok(temp == 1, "SPI_GETMOUSESPEED did not get value set by SPI_SETMOUSESPEED (%d instead of 1)\n", (int)temp); + temp = 20; + ret = SystemParametersInfo(SPI_SETMOUSESPEED, 0, (PVOID)temp, SPIF_SENDCHANGE | SPIF_UPDATEINIFILE); + ok(ret, "SystemParametersInfo failed\n"); + ret = SystemParametersInfo(SPI_GETMOUSESPEED, 0, &temp, 0); + ok(ret, "SystemParametersInfo failed\n"); + ok(temp == 20, "SPI_GETMOUSESPEED did not get value set by SPI_SETMOUSESPEED (%d instead of 20)\n", (int)temp); + + temp = 21; + ret = SystemParametersInfo(SPI_SETMOUSESPEED, 0, (PVOID)temp, SPIF_SENDCHANGE | SPIF_UPDATEINIFILE); + ok(!ret, "expected SystemParametersInfo to fail\n"); + ret = SystemParametersInfo(SPI_GETMOUSESPEED, 0, &temp, 0); + ok(ret, "SystemParametersInfo failed\n"); + ok(temp == 20, "SPI_GETMOUSESPEED got unexpected value (%d instead of 20)\n", (int)temp); + + temp = 0; + ret = SystemParametersInfo(SPI_SETMOUSESPEED, 0, (PVOID)temp, SPIF_SENDCHANGE | SPIF_UPDATEINIFILE); + ok(!ret, "expected SystemParametersInfo to fail\n"); + ret = SystemParametersInfo(SPI_GETMOUSESPEED, 0, &temp, 0); + ok(ret, "SystemParametersInfo failed\n"); + ok(temp == 20, "SPI_GETMOUSESPEED got unexpected value (%d instead of 20)\n", (int)temp); + ret = SystemParametersInfo(SPI_SETMOUSESPEED, 0, (PVOID)ulMouseSpeed, SPIF_SENDCHANGE | SPIF_UPDATEINIFILE); ok(ret, "SystemParametersInfo failed\n"); }