Преглед изворни кода

Fix "version X is not installed" with multiple PYENV_VERSIONs

This was introduced when merging the rbenv upstream change
(https://github.com/sstephenson/rbenv/commit/6bb7f07d2d).
pull/254/head
Daniel Hahler пре 10 година
родитељ
комит
de5c61cd59
2 измењених фајлова са 20 додато и 4 уклоњено
  1. +11
    -4
      libexec/pyenv-which
  2. +9
    -0
      test/which.bats

+ 11
- 4
libexec/pyenv-which Прегледај датотеку

@ -45,7 +45,6 @@ for version in "${versions[@]}"; do
PYENV_COMMAND_PATH="${PYENV_ROOT}/versions/${version}/bin/${PYENV_COMMAND}"
fi
if [ -x "$PYENV_COMMAND_PATH" ]; then
PYENV_VERSION="$version"
break
fi
done
@ -59,10 +58,18 @@ done
if [ -x "$PYENV_COMMAND_PATH" ]; then
echo "$PYENV_COMMAND_PATH"
elif ! [ -d "${PYENV_ROOT}/versions/${PYENV_VERSION}" ]; then
echo "pyenv: version \`$PYENV_VERSION' is not installed" >&2
exit 1
else
for version in "${versions[@]}"; do
any_not_installed=0
if ! [ -d "${PYENV_ROOT}/versions/${version}" ]; then
echo "pyenv: version \`$version' is not installed" >&2
any_not_installed=1
fi
done
if [ "$any_not_installed" = 1 ]; then
exit 1
fi
echo "pyenv: $PYENV_COMMAND: command not found" >&2
versions="$(pyenv-whence "$PYENV_COMMAND" || true)"

+ 9
- 0
test/which.bats Прегледај датотеку

@ -65,6 +65,15 @@ create_executable() {
assert_failure "pyenv: version \`3.3' is not installed"
}
@test "versions not installed" {
create_executable "3.4" "py.test"
PYENV_VERSION=2.7:3.3 run pyenv-which py.test
assert_failure <<OUT
pyenv: version \`2.7' is not installed
pyenv: version \`3.3' is not installed
OUT
}
@test "no executable found" {
create_executable "2.7" "py.test"
PYENV_VERSION=2.7 run pyenv-which fab

Loading…
Откажи
Сачувај