summaryrefslogtreecommitdiffstats
path: root/tests/tests.sh
diff options
context:
space:
mode:
authorTavian Barnes <tavianator@tavianator.com>2023-10-02 12:57:26 -0400
committerTavian Barnes <tavianator@tavianator.com>2023-10-02 12:57:26 -0400
commit9907004a1bb047e0644bf6d180aeb8b6ac23b1bb (patch)
tree72ece06cb49fc95ced7f76f8466a586c02797a4c /tests/tests.sh
parent52de184ba28551734e1cb13233588504ab5f62ec (diff)
downloadbfs-9907004a1bb047e0644bf6d180aeb8b6ac23b1bb.tar.xz
tests: Don't cd into paths longer than PATH_MAX
This fixes a warning on at least Alpine Linux that looks like cd: error retrieving current directory: getcwd: cannot access parent directories: Filename too long
Diffstat (limited to 'tests/tests.sh')
-rwxr-xr-xtests/tests.sh20
1 files changed, 8 insertions, 12 deletions
diff --git a/tests/tests.sh b/tests/tests.sh
index 66a79a8..121cd85 100755
--- a/tests/tests.sh
+++ b/tests/tests.sh
@@ -393,18 +393,14 @@ function make_deep() {
local names="$name/$name/$name/$name"
for i in {0..9} A B C D E F; do
- (
- mkdir "$1/$i"
- cd "$1/$i"
-
- # 4 * 1024 == 4096 == PATH_MAX
- for _ in {1..4}; do
- mkdir -p "$names"
- cd "$names"
- done
-
- "$XTOUCH" "$name"
- )
+ "$XTOUCH" -p "$1/$i/$name"
+
+ # 4 * 1024 == 4096 == PATH_MAX
+ for _ in {1..4}; do
+ mv "$1/$i/$name" "$1/"
+ mkdir -p "$1/$i/$names"
+ mv "$1/$name" "$1/$i/$names/"
+ done
done
}
make_deep "$TMP/deep"