Avoid test failures when root (/) is not readable.
authorJim Meyering <meyering@redhat.com>
Sat, 23 Feb 2008 22:22:58 +0000 (23:22 +0100)
committerJim Meyering <meyering@redhat.com>
Sat, 23 Feb 2008 22:25:17 +0000 (23:25 +0100)
* tests/test-lib.sh (require_readable_root_): New function.
* tests/misc/pwd-long: Skip this test when / is unreadable.
* tests/du/slash: Likewise.
This is required at least for Mandrake/Mandriva in "secure" mode.
Reported by Theodoros V. Kalamatianos in
http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/12800

tests/du/slash
tests/misc/pwd-long
tests/test-lib.sh

index dd9175112645c3d359513fba4489ce759594f9d8..7f218c928b9fc39feab2c3cc3121ede36d4d8800 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # `du /' would omit the `/' on the last line.
 
-# Copyright (C) 2003, 2004, 2006-2007 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2004, 2006-2008 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -22,6 +22,7 @@ if test "$VERBOSE" = yes; then
 fi
 
 . $srcdir/../test-lib.sh
+require_readable_root_
 
 fail=0
 
index 6ab218810007a8ff80edee87703b571da28ce175..d931d346274b064371bf8efde35f21fb531e1062 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Ensure that pwd works even when run from a very deep directory.
 
-# Copyright (C) 2006-2007 Free Software Foundation, Inc.
+# Copyright (C) 2006-2008 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -20,6 +20,7 @@
 . $srcdir/../require-perl
 
 . $srcdir/../test-lib.sh
+require_readable_root_
 
 ARGV_0=$0
 export ARGV_0
index a473dfb3173acb833d7fc36da24709d6ed904b13..c494e19ff87a2f41daf4cdfe798ba1ee579c4cd9 100644 (file)
@@ -39,6 +39,11 @@ require_ulimit_()
     && skip_test_ "this shell lacks ulimit support"
 }
 
+require_readable_root_()
+{
+  test -r / || skip_test_ "/ is not readable"
+}
+
 # Skip the current test if strace is not available or doesn't work.
 require_strace_()
 {