[PATCH 1/4] kernel32/tests: Extended test for GetConsoleProcessList.
Roman Pišl
rpisl at seznam.cz
Tue Mar 17 08:28:51 CDT 2020
Signed-off-by: Roman Pišl <rpisl at seznam.cz>
---
dlls/kernel32/tests/console.c | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/dlls/kernel32/tests/console.c b/dlls/kernel32/tests/console.c
index 9698f11779..901dc3aa71 100644
--- a/dlls/kernel32/tests/console.c
+++ b/dlls/kernel32/tests/console.c
@@ -1040,8 +1040,8 @@ static void test_GetConsoleProcessList(void)
GetLastError());
/* We should only have 1 process but only for these specific unit tests as
- * we created our own console. An AttachConsole(ATTACH_PARENT_PROCESS) would
- * give us two processes for example.
+ * we created our own console. An AttachConsole(ATTACH_PARENT_PROCESS)
+ * gives us two processes - see test_AttachConsole.
*/
list = HeapAlloc(GetProcessHeap(), 0, sizeof(DWORD));
@@ -3232,6 +3232,20 @@ static void test_AttachConsole_child(DWORD console_pid)
res = AttachConsole(ATTACH_PARENT_PROCESS);
ok(res, "AttachConsole failed: %u\n", GetLastError());
+ if (pGetConsoleProcessList)
+ {
+ DWORD list[2];
+ DWORD pid = GetCurrentProcessId();
+ SetLastError(0xdeadbeef);
+ len = pGetConsoleProcessList(list, 2);
+ todo_wine
+ ok(len == 2, "Expected 2, got %d\n", len);
+ todo_wine
+ ok(list[0] == console_pid || list[1] == console_pid, "Parent PID not in list\n");
+ todo_wine
+ ok(list[0] == pid || list[1] == pid, "PID not in list\n");
+ }
+
ok(pipe_in != GetStdHandle(STD_INPUT_HANDLE), "std handle not set to console\n");
ok(pipe_out != GetStdHandle(STD_OUTPUT_HANDLE), "std handle not set to console\n");
--
2.20.1
More information about the wine-devel
mailing list