Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
fa8d5d16
Commit
fa8d5d16
authored
May 10, 2011
by
Eric Pouech
Committed by
Alexandre Julliard
May 11, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
kernel32: Added some tests about CON special file treatment in CreateFile.
parent
26dd1ed0
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
50 additions
and
0 deletions
+50
-0
console.c
dlls/kernel32/tests/console.c
+50
-0
No files found.
dlls/kernel32/tests/console.c
View file @
fa8d5d16
...
@@ -992,6 +992,55 @@ static void test_GetConsoleProcessList(void)
...
@@ -992,6 +992,55 @@ static void test_GetConsoleProcessList(void)
HeapFree
(
GetProcessHeap
(),
0
,
list
);
HeapFree
(
GetProcessHeap
(),
0
,
list
);
}
}
static
void
test_OpenCON
(
void
)
{
static
const
WCHAR
conW
[]
=
{
'C'
,
'O'
,
'N'
,
0
};
static
const
DWORD
accesses
[]
=
{
CREATE_NEW
,
CREATE_ALWAYS
,
OPEN_EXISTING
,
OPEN_ALWAYS
,
TRUNCATE_EXISTING
};
unsigned
i
;
HANDLE
h
;
for
(
i
=
0
;
i
<
sizeof
(
accesses
)
/
sizeof
(
accesses
[
0
]);
i
++
)
{
if
(
accesses
[
i
]
!=
OPEN_EXISTING
)
todo_wine
{
h
=
CreateFileW
(
conW
,
GENERIC_WRITE
,
0
,
NULL
,
accesses
[
i
],
0
,
NULL
);
ok
(
h
!=
INVALID_HANDLE_VALUE
,
"Expected to open the CON device on write (%x)
\n
"
,
accesses
[
i
]);
CloseHandle
(
h
);
h
=
CreateFileW
(
conW
,
GENERIC_READ
,
0
,
NULL
,
accesses
[
i
],
0
,
NULL
);
/* Windows versions differ here:
* MSDN states in CreateFile that TRUNCATE_EXISTING requires GENERIC_WRITE
* NT, XP, Vista comply, but Win7 doesn't and allows to open CON with TRUNCATE_EXISTING
* So don't test when disposition is TRUNCATE_EXISTING
*/
if
(
accesses
[
i
]
!=
TRUNCATE_EXISTING
)
{
ok
(
h
!=
INVALID_HANDLE_VALUE
,
"Expected to open the CON device on read (%x)
\n
"
,
accesses
[
i
]);
}
CloseHandle
(
h
);
}
else
{
h
=
CreateFileW
(
conW
,
GENERIC_WRITE
,
0
,
NULL
,
accesses
[
i
],
0
,
NULL
);
ok
(
h
!=
INVALID_HANDLE_VALUE
,
"Expected to open the CON device on write (%x)
\n
"
,
accesses
[
i
]);
CloseHandle
(
h
);
h
=
CreateFileW
(
conW
,
GENERIC_READ
,
0
,
NULL
,
accesses
[
i
],
0
,
NULL
);
/* Windows versions differ here:
* MSDN states in CreateFile that TRUNCATE_EXISTING requires GENERIC_WRITE
* NT, XP, Vista comply, but Win7 doesn't and allows to open CON with TRUNCATE_EXISTING
* So don't test when disposition is TRUNCATE_EXISTING
*/
if
(
accesses
[
i
]
!=
TRUNCATE_EXISTING
)
{
ok
(
h
!=
INVALID_HANDLE_VALUE
,
"Expected to open the CON device on read (%x)
\n
"
,
accesses
[
i
]);
}
CloseHandle
(
h
);
}
h
=
CreateFileW
(
conW
,
GENERIC_READ
|
GENERIC_WRITE
,
0
,
NULL
,
accesses
[
i
],
0
,
NULL
);
ok
(
h
==
INVALID_HANDLE_VALUE
,
"Expected not to open the CON device on read-write (%x)
\n
"
,
accesses
[
i
]);
ok
(
GetLastError
()
==
ERROR_FILE_NOT_FOUND
,
"Unexpected error %x
\n
"
,
GetLastError
());
}
}
static
void
test_OpenConsoleW
(
void
)
static
void
test_OpenConsoleW
(
void
)
{
{
static
const
WCHAR
coninW
[]
=
{
'C'
,
'O'
,
'N'
,
'I'
,
'N'
,
'$'
,
0
};
static
const
WCHAR
coninW
[]
=
{
'C'
,
'O'
,
'N'
,
'I'
,
'N'
,
'$'
,
0
};
...
@@ -2515,6 +2564,7 @@ START_TEST(console)
...
@@ -2515,6 +2564,7 @@ START_TEST(console)
test_GetConsoleProcessList
();
test_GetConsoleProcessList
();
test_OpenConsoleW
();
test_OpenConsoleW
();
test_OpenCON
();
test_VerifyConsoleIoHandle
(
hConOut
);
test_VerifyConsoleIoHandle
(
hConOut
);
test_GetSetStdHandle
();
test_GetSetStdHandle
();
test_GetNumberOfConsoleInputEvents
(
hConIn
);
test_GetNumberOfConsoleInputEvents
(
hConIn
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment