]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
tests: df: avoid false failure on systems with multiple roots
authorPádraig Brady <P@draigBrady.com>
Sat, 18 Mar 2023 21:44:56 +0000 (21:44 +0000)
committerPádraig Brady <P@draigBrady.com>
Sun, 19 Mar 2023 12:23:05 +0000 (12:23 +0000)
* tests/df/df-symlink.sh: Skip the test on systems
with multiple file system roots.

tests/df/df-symlink.sh

index 34e8a8fed0cc25f7cc5ab583cbc350986e8420b9..1b24429a6454147575d8fc81d5179215612c7ef5 100755 (executable)
@@ -30,14 +30,17 @@ df --out=source,target symlink > out || fail=1
 compare exp out || fail=1
 
 # Ensure we output the same values for device nodes and '.'
-# This was not the case in coreutil-8.22 on systems
+# This was not the case in coreutils-8.22 on systems
 # where the device in the mount list was a symlink itself.
 # I.e., '.' => /dev/mapper/fedora-home -> /dev/dm-2
 # Restrict this test to systems with a 1:1 mapping between
 # source and target.  This excludes for example BTRFS sub-volumes.
 if test "$(df --output=source | grep -F "$file_system" | wc -l)" = 1; then
-  df --out=source,target '.' > out || fail=1
-  compare exp out || fail=1
+  # Restrict to systems with a single file system root (and have findmnt(1))
+  if test "$(findmnt -nro FSROOT | uniq | wc -l)" =  1; then
+    df --out=source,target '.' > out || fail=1
+    compare exp out || fail=1
+  fi
 fi
 
 test "$fail" = 1 && dump_mount_list_