Skip to content
Snippets Groups Projects
Commit ba680b10 authored by Steven Allen's avatar Steven Allen
Browse files

make sure the repo size is greater than the size of the symlink


Before, we'd check to make sure the repo, when checked through a symlink, is at
least as large as the repo *before* we checked it through the symlink. However,
this assumes that the repo can't shrink.

Really, this test exists to ensure we measure the repo size itself instead of
the size of the symlink; this commit changes the test to reflect this.

This test fails when 54d7e033 is reverted.

fixes #4408

License: MIT
Signed-off-by: default avatarSteven Allen <steven@stebalien.com>
parent a81025f8
Branches
Tags
No related merge requests found
...@@ -363,10 +363,31 @@ generic_stat() { ...@@ -363,10 +363,31 @@ generic_stat() {
FreeBSD | Darwin | DragonFly) FreeBSD | Darwin | DragonFly)
_STAT="stat -f %Sp" _STAT="stat -f %Sp"
;; ;;
*)
echo "unsupported OS" >&2
exit 1
;;
esac esac
$_STAT "$1" || echo "failed" # Avoid returning nothing. $_STAT "$1" || echo "failed" # Avoid returning nothing.
} }
# output a file's permission in human readable format
file_size() {
case $(uname -s) in
Linux)
_STAT="stat --format=%s"
;;
FreeBSD | Darwin | DragonFly)
_STAT="stat -f%z"
;;
*)
echo "unsupported OS" >&2
exit 1
;;
esac
$_STAT "$1"
}
test_check_peerid() { test_check_peerid() {
peeridlen=$(echo "$1" | tr -dC "[:alnum:]" | wc -c | tr -d " ") && peeridlen=$(echo "$1" | tr -dC "[:alnum:]" | wc -c | tr -d " ") &&
test "$peeridlen" = "46" || { test "$peeridlen" = "46" || {
......
...@@ -15,14 +15,11 @@ test_expect_success "create symbolic link for IPFS_PATH" ' ...@@ -15,14 +15,11 @@ test_expect_success "create symbolic link for IPFS_PATH" '
test_init_ipfs test_init_ipfs
# compare RepoSize when getting it directly vs via symbolic link # ensure that the RepoSize is reasonable when checked via a symlink.
test_expect_success "'ipfs repo stat' RepoSize is correct with sym link" ' test_expect_success "'ipfs repo stat' RepoSize is correct with sym link" '
export IPFS_PATH="sym_link_target" &&
reposize_direct=$(ipfs repo stat | grep RepoSize | awk '\''{ print $2 }'\'') &&
export IPFS_PATH=".ipfs" &&
reposize_symlink=$(ipfs repo stat | grep RepoSize | awk '\''{ print $2 }'\'') && reposize_symlink=$(ipfs repo stat | grep RepoSize | awk '\''{ print $2 }'\'') &&
echo "reposize_symlink: $reposize_symlink; reposize_direct: $reposize_direct" && symlink_size=$(file_size .ipfs) &&
test $reposize_symlink -ge $reposize_direct test "${reposize_symlink}" -gt "${symlink_size}"
' '
test_done test_done
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment