tests: avoid FP from 'find -files0-from DIR' on certain platforms

On most modern systems like GNU/Linux, read(2)-ing from a directory file
descriptor will fail with EISDIR, but it succeeds e.g. on GNU/Hurd and
AIX-7.1/AIX-7.2.

tests/find/files0-from.sh: Skip the test case excercising a directory
argument for the -files0-from option when the system allows reading
from a directory.
This commit is contained in:
2021-12-31 02:13:56 +01:00
parent a8e60e7437
commit 71556793c1

View File

@@ -89,9 +89,14 @@ if test -e $f && test '!' -r $f; then
fi
# Exercise a directory argument.
returns_ 1 find -files0-from / > out 2> err \
&& grep 'read error' err \
|| { grep . out err; fail=1; }
# On most modern systems like GNU/Linux, read(2)-ing from a directory file
# descriptor will fail with EISDIR. Skip on other plaforms where that succeeds,
# e.g. on GNU/Hurd and AIX.
if returns_ 1 cat / >/dev/null; then
returns_ 1 find -files0-from / > out 2> err \
&& grep 'read error' err \
|| { grep . out err; fail=1; }
fi
# Exercise an empty input file.
find -files0-from /dev/null > out 2> err || fail=1