]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
tests: (lsns/nsfs) consider the cases that lsns returns multiple paths
authorMasatake YAMATO <yamato@redhat.com>
Wed, 5 Mar 2025 14:25:52 +0000 (23:25 +0900)
committerMasatake YAMATO <yamato@redhat.com>
Wed, 5 Mar 2025 15:11:08 +0000 (00:11 +0900)
Fixes #3442

If a target directory is bind-mount'ed, lsns returns multiple paths
as the value for NSFS column. This change considers this case.

Signed-off-by: Masatake YAMATO <yamato@redhat.com>
tests/ts/lsns/nsfs

index 3401fb30125730b45e80d828fadb7e391bfaf3c2..b01a0f6b21a2c2b012057890a7b1114a0e170935 100755 (executable)
@@ -79,8 +79,22 @@ fi
     dd if=/dev/zero bs=1 count=1 2> $NULL
 } > $FIFO
 
-test "$NSFS_NAMES_MLINES" = "$PATH1
-$PATH2" && test "$NSFS_NAMES_1LINE" = "$PATH1,$PATH2"
+
+does_combination_include()
+{
+    local p1 p2
+    for p1 in "$@"; do
+       for p2 in "$@"; do
+           if [ "$p1" = "$PATH1" ] && [ "$p2" = "$PATH2" ]; then
+               return 0
+           fi
+       done
+    done
+    return 1
+}
+
+does_combination_include $NSFS_NAMES_MLINES &&
+    does_combination_include ${NSFS_NAMES_1LINE//,/ }
 
 RESULT=$?
 echo $RESULT >> $TS_OUTPUT