msvcrt: Added _setmode tests.
This commit is contained in:
parent
a0ef884542
commit
f93259b305
@ -1496,6 +1496,61 @@ static void test__wfopen_s( void )
|
|||||||
ok(_unlink(name) == 0, "Couldn't unlink file named '%s'\n", name);
|
ok(_unlink(name) == 0, "Couldn't unlink file named '%s'\n", name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void test_setmode(void)
|
||||||
|
{
|
||||||
|
const char name[] = "empty1";
|
||||||
|
int fd, ret;
|
||||||
|
|
||||||
|
if(!p_fopen_s) {
|
||||||
|
win_skip("unicode file modes are not available, skipping setmode tests\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
fd = _open(name, _O_CREAT|_O_WRONLY, _S_IWRITE);
|
||||||
|
ok(fd != -1, "failed to open file\n");
|
||||||
|
|
||||||
|
errno = 0xdeadbeef;
|
||||||
|
ret = _setmode(fd, 0xffffffff);
|
||||||
|
ok(ret == -1, "_setmode returned %x, expected -1\n", ret);
|
||||||
|
ok(errno == EINVAL, "errno = %d\n", errno);
|
||||||
|
|
||||||
|
errno = 0xdeadbeef;
|
||||||
|
ret = _setmode(fd, 0);
|
||||||
|
ok(ret == -1, "_setmode returned %x, expected -1\n", ret);
|
||||||
|
ok(errno == EINVAL, "errno = %d\n", errno);
|
||||||
|
|
||||||
|
errno = 0xdeadbeef;
|
||||||
|
ret = _setmode(fd, _O_BINARY|_O_TEXT);
|
||||||
|
ok(ret == -1, "_setmode returned %x, expected -1\n", ret);
|
||||||
|
ok(errno == EINVAL, "errno = %d\n", errno);
|
||||||
|
|
||||||
|
errno = 0xdeadbeef;
|
||||||
|
ret = _setmode(fd, _O_WTEXT|_O_U16TEXT);
|
||||||
|
ok(ret == -1, "_setmode returned %x, expected -1\n", ret);
|
||||||
|
ok(errno == EINVAL, "errno = %d\n", errno);
|
||||||
|
|
||||||
|
ret = _setmode(fd, _O_BINARY);
|
||||||
|
ok(ret == _O_TEXT, "_setmode returned %x, expected _O_TEXT\n", ret);
|
||||||
|
|
||||||
|
ret = _setmode(fd, _O_WTEXT);
|
||||||
|
ok(ret == _O_BINARY, "_setmode returned %x, expected _O_BINARY\n", ret);
|
||||||
|
|
||||||
|
ret = _setmode(fd, _O_TEXT);
|
||||||
|
ok(ret == _O_WTEXT, "_setmode returned %x, expected _O_WTEXT\n", ret);
|
||||||
|
|
||||||
|
ret = _setmode(fd, _O_U16TEXT);
|
||||||
|
ok(ret == _O_TEXT, "_setmode returned %x, expected _O_TEXT\n", ret);
|
||||||
|
|
||||||
|
ret = _setmode(fd, _O_U8TEXT);
|
||||||
|
ok(ret == _O_WTEXT, "_setmode returned %x, expected _O_WTEXT\n", ret);
|
||||||
|
|
||||||
|
ret = _setmode(fd, _O_TEXT);
|
||||||
|
ok(ret == _O_WTEXT, "_setmode returned %x, expected _O_WTEXT\n", ret);
|
||||||
|
|
||||||
|
_close(fd);
|
||||||
|
_unlink(name);
|
||||||
|
}
|
||||||
|
|
||||||
static void test_get_osfhandle(void)
|
static void test_get_osfhandle(void)
|
||||||
{
|
{
|
||||||
int fd;
|
int fd;
|
||||||
@ -1784,6 +1839,7 @@ START_TEST(file)
|
|||||||
test_fopen_fclose_fcloseall();
|
test_fopen_fclose_fcloseall();
|
||||||
test_fopen_s();
|
test_fopen_s();
|
||||||
test__wfopen_s();
|
test__wfopen_s();
|
||||||
|
test_setmode();
|
||||||
test_fileops();
|
test_fileops();
|
||||||
test_asciimode();
|
test_asciimode();
|
||||||
test_asciimode2();
|
test_asciimode2();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user