Subject: bug#42633: 8.32 make check as root failure of rmdir/ignore.sh

From: Nick Alcock <[email-masked]>
Date: Sat, 01 Aug 2020 15:05:03 +0100

On 31 Jul 2020, Bernhard Voelker spake thusly:

> On 2020-07-31 16:32, Nick Alcock wrote:
>> I get an ERROR when running rmdir/ignore.sh as root (but not when
>> running as non-root). [...]
>
>> ERROR: tests/rmdir/ignore
>> =========================
> [...]
>> + mkdir -p x/y
>> + chmod a-w x
>> + returns_ 1 rmdir --ignore-fail-on-non-empty x/y
>> + fail=1
>
> Thanks for reporting this issue.
>
> Indeed, this test does not work as root.

This suggests that running make check as root is not a routine part of
coreutils pre-release work, and that nobody has run a make check as root
since Jan 30! That's quite surprising given that running a make check as
root has long been encouraged. The README even says

> If you can run the tests as root, please do so and report any
> problems.  We get much less test coverage in that mode, and it's
> arguably more important that these tools work well when run by
> root than when run by less privileged users.

(This is not the first time I've hit test failures when checking
released coreutils as root, though it isn't *common*.)

> The comment in the test explains that it expects an EPERM error:

*slaps self* so it does, I really should have noticed that.

> The attached patch adds guards around the parts of the test which
> only work as non-privileged user.

Looks good to me, and fixes the bug. make check now passes as root.