summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTavian Barnes <tavianator@tavianator.com>2022-10-21 09:55:46 -0400
committerTavian Barnes <tavianator@tavianator.com>2022-10-21 09:55:46 -0400
commitbf0f99be20ce4097c1f44da024dc6131e718d86e (patch)
tree6c6c51c6f624ae30db494784713a31c67a03e8d2
parent62de5e2bc9a39b189a84ff0691efeb8518f1688a (diff)
downloadbfs-bf0f99be20ce4097c1f44da024dc6131e718d86e.tar.xz
tests/gnu/inum_automount: Work around systemd-mount race
This test used systemd-mount to set up an automount on scratch/mnt. If a previous test mounted something there, systemd will notice that asynchronously and may not have noticed the unmount by the time that test runs. This led to the test randomly being skipped sometimes when systemd-mount failed. It could be reproduced with a loop like this: $ for _ in {1..10}; ./tests/tests.sh common/L_mount gnu/inum_automount Work around it by using scratch/automnt instead to avoid conflicts.
-rw-r--r--tests/gnu/inum_automount.out2
-rw-r--r--tests/gnu/inum_automount.sh10
2 files changed, 6 insertions, 6 deletions
diff --git a/tests/gnu/inum_automount.out b/tests/gnu/inum_automount.out
index 99c7511..7b53ae3 100644
--- a/tests/gnu/inum_automount.out
+++ b/tests/gnu/inum_automount.out
@@ -1 +1 @@
-scratch/mnt
+scratch/automnt
diff --git a/tests/gnu/inum_automount.sh b/tests/gnu/inum_automount.sh
index 82f85d2..648ea05 100644
--- a/tests/gnu/inum_automount.sh
+++ b/tests/gnu/inum_automount.sh
@@ -4,14 +4,14 @@ skip_unless test "$SUDO"
skip_unless command -v systemd-mount &>/dev/null
clean_scratch
-mkdir scratch/{foo,mnt}
-skip_unless sudo systemd-mount -A -o bind basic scratch/mnt
+mkdir scratch/{foo,automnt}
+skip_unless sudo systemd-mount -A -o bind basic scratch/automnt
-before=$(inum scratch/mnt)
+before=$(inum scratch/automnt)
bfs_diff scratch -inum "$before" -prune
ret=$?
-after=$(inum scratch/mnt)
+after=$(inum scratch/automnt)
-sudo systemd-umount scratch/mnt
+sudo systemd-umount scratch/automnt
((ret == 0 && before == after))