From 8ed24a180182f72e87cda8697f5de8e32ea3d263 Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Mon, 22 Jan 2018 05:01:48 +0100 Subject: [PATCH] Avoid test failures on Microsoft Windows Subsystem for Linux. * tests/test-fcntl.c (main): Allow a different errno. * tests/test-rename.h (test_rename): Likewise. * tests/test-renameat.c (main): Likewise. * tests/test-renameat2.c (main): Likewise. --- ChangeLog | 8 ++++++++ tests/test-fcntl.c | 3 ++- tests/test-rename.h | 12 ++++++++---- tests/test-renameat.c | 6 ++++-- tests/test-renameat2.c | 6 ++++-- 5 files changed, 26 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index e4801bd17e..fa3a33e860 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2018-01-21 Bruno Haible + + Avoid test failures on Microsoft Windows Subsystem for Linux. + * tests/test-fcntl.c (main): Allow a different errno. + * tests/test-rename.h (test_rename): Likewise. + * tests/test-renameat.c (main): Likewise. + * tests/test-renameat2.c (main): Likewise. + 2018-01-14 Paul Eggert filenamecat: make base a suffix of result diff --git a/tests/test-fcntl.c b/tests/test-fcntl.c index 7e726b17f8..476231be20 100644 --- a/tests/test-fcntl.c +++ b/tests/test-fcntl.c @@ -266,7 +266,8 @@ main (void) ASSERT (errno == EINVAL); errno = 0; ASSERT (fcntl (fd, F_DUPFD_CLOEXEC, bad_fd) == -1); - ASSERT (errno == EINVAL); + ASSERT (errno == EINVAL + || errno == EMFILE /* WSL */); /* For F_DUPFD*, check for correct inheritance, as well as preservation of text vs. binary. */ diff --git a/tests/test-rename.h b/tests/test-rename.h index f959866dd3..0548c6cd75 100644 --- a/tests/test-rename.h +++ b/tests/test-rename.h @@ -339,12 +339,14 @@ test_rename (int (*func) (char const *, char const *), bool print) errno = 0; ASSERT (func (BASE "dir2", BASE "dir/.") == -1); ASSERT (errno == EINVAL || errno == EBUSY || errno == EISDIR - || errno == ENOTEMPTY || errno == EEXIST); + || errno == ENOTEMPTY || errno == EEXIST + || errno == ENOENT /* WSL */); } { errno = 0; ASSERT (func (BASE "dir2/.", BASE "dir") == -1); - ASSERT (errno == EINVAL || errno == EBUSY || errno == EEXIST); + ASSERT (errno == EINVAL || errno == EBUSY || errno == EEXIST + || errno == ENOENT /* WSL */); } ASSERT (rmdir (BASE "dir") == 0); /* Files present here: @@ -366,12 +368,14 @@ test_rename (int (*func) (char const *, char const *), bool print) errno = 0; ASSERT (func (BASE "dir2", BASE "dir/.//") == -1); ASSERT (errno == EINVAL || errno == EBUSY || errno == EISDIR - || errno == ENOTEMPTY || errno == EEXIST); + || errno == ENOTEMPTY || errno == EEXIST + || errno == ENOENT /* WSL */); } { errno = 0; ASSERT (func (BASE "dir2/.//", BASE "dir") == -1); - ASSERT (errno == EINVAL || errno == EBUSY || errno == EEXIST); + ASSERT (errno == EINVAL || errno == EBUSY || errno == EEXIST + || errno == ENOENT /* WSL */); } ASSERT (rmdir (BASE "dir2") == 0); /* Files present here: diff --git a/tests/test-renameat.c b/tests/test-renameat.c index 5496553cb4..d72cd1f0fe 100644 --- a/tests/test-renameat.c +++ b/tests/test-renameat.c @@ -155,10 +155,12 @@ main (void) errno = 0; ASSERT (renameat (dfd, BASE "sub2", dfd, BASE "sub1/.") == -1); ASSERT (errno == EINVAL || errno == EISDIR || errno == EBUSY - || errno == ENOTEMPTY || errno == EEXIST); + || errno == ENOTEMPTY || errno == EEXIST + || errno == ENOENT /* WSL */); errno = 0; ASSERT (renameat (dfd, BASE "sub2/.", dfd, BASE "sub1") == -1); - ASSERT (errno == EINVAL || errno == EBUSY || errno == EEXIST); + ASSERT (errno == EINVAL || errno == EBUSY || errno == EEXIST + || errno == ENOENT /* WSL */); errno = 0; ASSERT (renameat (dfd, BASE "17", dfd, BASE "sub1") == -1); ASSERT (errno == EISDIR); diff --git a/tests/test-renameat2.c b/tests/test-renameat2.c index f646cb6b38..0104890534 100644 --- a/tests/test-renameat2.c +++ b/tests/test-renameat2.c @@ -158,10 +158,12 @@ main (void) errno = 0; ASSERT (renameat2 (dfd, BASE "sub2", dfd, BASE "sub1/.", 0) == -1); ASSERT (errno == EINVAL || errno == EISDIR || errno == EBUSY - || errno == ENOTEMPTY || errno == EEXIST); + || errno == ENOTEMPTY || errno == EEXIST + || errno == ENOENT /* WSL */); errno = 0; ASSERT (renameat2 (dfd, BASE "sub2/.", dfd, BASE "sub1", 0) == -1); - ASSERT (errno == EINVAL || errno == EBUSY || errno == EEXIST); + ASSERT (errno == EINVAL || errno == EBUSY || errno == EEXIST + || errno == ENOENT /* WSL */); errno = 0; ASSERT (renameat2 (dfd, BASE "17", dfd, BASE "sub1", 0) == -1); ASSERT (errno == EISDIR); -- 2.39.5