[Fix] `nvm_ls`: zsh: unset `markdirs` and `local_options`

Fixes #2315.
Dylan Armstrong 2020-10-09 09:43:21 -05:00 committed by Jordan Harband
parent 4436638816
commit 96069da0d5
No known key found for this signature in database
GPG Key ID: 9F6A681E35EF8B56
2 changed files with 41 additions and 0 deletions

1
nvm.sh
View File

@ -1089,6 +1089,7 @@ nvm_ls() {
esac
nvm_is_zsh && setopt local_options shwordsplit
nvm_is_zsh && unsetopt local_options markdirs
local NVM_DIRS_TO_SEARCH1
NVM_DIRS_TO_SEARCH1=''

View File

@ -0,0 +1,40 @@
#!/bin/zsh
\. ../../../nvm.sh
\. ../../common.sh
if type setopt >/dev/null 2>&1; then setopt local_options markdirs; fi
die () {
if type unsetopt >/dev/null 2>&1; then unsetopt local_options markdirs; fi
echo "$@";
exit 1;
}
make_fake_node v0.0.1
make_fake_node v0.0.3
make_fake_node v0.0.9
make_fake_node v0.3.1
make_fake_node v0.3.3
make_fake_node v0.3.9
make_fake_node v0.12.87
make_fake_node v0.12.9
make_fake_iojs v0.1.2
make_fake_iojs v0.10.2
OUTPUT="$(nvm_ls)"
EXPECTED_OUTPUT="v0.0.1
v0.0.3
v0.0.9
iojs-v0.1.2
v0.3.1
v0.3.3
v0.3.9
iojs-v0.10.2
v0.12.9
v0.12.87"
if nvm_has_system_node || nvm_has_system_iojs; then
EXPECTED_OUTPUT="${EXPECTED_OUTPUT}
system"
fi
[ "${OUTPUT-}" = "${EXPECTED_OUTPUT-}" ] || die "expected >${EXPECTED_OUTPUT}<; got >${OUTPUT}<"