Paul Vriens : kernel32/tests: Add some tests for GetConsoleCursorInfo.
Alexandre Julliard
julliard at winehq.org
Tue Jun 24 06:47:18 CDT 2008
Module: wine
Branch: master
Commit: 296bbde1c127354eddcf39b6ab437510bf3db913
URL: http://source.winehq.org/git/wine.git/?a=commit;h=296bbde1c127354eddcf39b6ab437510bf3db913
Author: Paul Vriens <paul.vriens.wine at gmail.com>
Date: Tue Jun 24 12:21:57 2008 +0200
kernel32/tests: Add some tests for GetConsoleCursorInfo.
---
dlls/kernel32/tests/console.c | 48 +++++++++++++++++++++++++++++++++++++++++
1 files changed, 48 insertions(+), 0 deletions(-)
diff --git a/dlls/kernel32/tests/console.c b/dlls/kernel32/tests/console.c
index aacae9c..2e0a78d 100644
--- a/dlls/kernel32/tests/console.c
+++ b/dlls/kernel32/tests/console.c
@@ -130,6 +130,52 @@ static void testCursor(HANDLE hCon, COORD sbSize)
ERROR_INVALID_PARAMETER, GetLastError());
}
+static void testCursorInfo(HANDLE hCon)
+{
+ BOOL ret;
+ CONSOLE_CURSOR_INFO info;
+
+ SetLastError(0xdeadbeef);
+ ret = GetConsoleCursorInfo(NULL, NULL);
+ ok(!ret, "Expected failure\n");
+ ok(GetLastError() == ERROR_INVALID_HANDLE, "GetLastError: expecting %u got %u\n",
+ ERROR_INVALID_HANDLE, GetLastError());
+
+ SetLastError(0xdeadbeef);
+ info.dwSize = -1;
+ ret = GetConsoleCursorInfo(NULL, &info);
+ ok(!ret, "Expected failure\n");
+ ok(info.dwSize == -1, "Expected no change for dwSize\n");
+ ok(GetLastError() == ERROR_INVALID_HANDLE, "GetLastError: expecting %u got %u\n",
+ ERROR_INVALID_HANDLE, GetLastError());
+
+ /* Test the correct call first to distinguish between win9x and the rest */
+ SetLastError(0xdeadbeef);
+ ret = GetConsoleCursorInfo(hCon, &info);
+ ok(ret, "Expected success\n");
+ ok(info.dwSize == 25 ||
+ info.dwSize == 12 /* win9x */,
+ "Expected 12 or 25, got %d\n", info.dwSize);
+ ok(info.bVisible, "Expected the cursor to be visible\n");
+ ok(GetLastError() == 0xdeadbeef, "GetLastError: expecting %u got %u\n",
+ 0xdeadbeef, GetLastError());
+
+ if (info.dwSize == 12)
+ {
+ skip("NULL CONSOLE_CURSOR_INFO will crash on win9x\n");
+ return;
+ }
+
+ SetLastError(0xdeadbeef);
+ ret = GetConsoleCursorInfo(hCon, NULL);
+ todo_wine
+ {
+ ok(!ret, "Expected failure\n");
+ ok(GetLastError() == ERROR_INVALID_ACCESS, "GetLastError: expecting %u got %u\n",
+ ERROR_INVALID_ACCESS, GetLastError());
+ }
+}
+
static void testWriteSimple(HANDLE hCon, COORD sbSize)
{
COORD c;
@@ -863,6 +909,8 @@ START_TEST(console)
/* Non interactive tests */
testCursor(hConOut, sbi.dwSize);
+ /* test parameters (FIXME: test functionality) */
+ testCursorInfo(hConOut);
/* will test wrapped (on/off) & processed (on/off) strings output */
testWrite(hConOut, sbi.dwSize);
/* will test line scrolling at the bottom of the screen */
More information about the wine-cvs
mailing list