mirror of
https://github.com/pyenv/pyenv.git
synced 2025-11-10 12:33:48 -05:00
Add support for multiple versions in pyenv uninstall (#2432)
This commit is contained in:
@@ -55,3 +55,38 @@ OUT
|
||||
|
||||
refute [ -d "${PYENV_ROOT}/versions/3.6.2" ]
|
||||
}
|
||||
|
||||
@test "pyenv-uninstall hooks with multiple versions" {
|
||||
cat > "${HOOK_PATH}/uninstall.bash" <<OUT
|
||||
before_uninstall 'echo before: \$PREFIX'
|
||||
after_uninstall 'echo after.'
|
||||
rm() {
|
||||
echo "rm \$@"
|
||||
command rm "\$@"
|
||||
}
|
||||
OUT
|
||||
stub pyenv-hooks "uninstall : echo '$HOOK_PATH'/uninstall.bash"
|
||||
stub pyenv-rehash "echo rehashed"
|
||||
stub pyenv-rehash "echo rehashed"
|
||||
|
||||
mkdir -p "${PYENV_ROOT}/versions/3.6.2"
|
||||
mkdir -p "${PYENV_ROOT}/versions/3.6.3"
|
||||
run pyenv-uninstall -f 3.6.2 3.6.3
|
||||
|
||||
assert_success
|
||||
assert_output <<-OUT
|
||||
before: ${PYENV_ROOT}/versions/3.6.2
|
||||
rm -rf ${PYENV_ROOT}/versions/3.6.2
|
||||
rehashed
|
||||
pyenv: 3.6.2 uninstalled
|
||||
after.
|
||||
before: ${PYENV_ROOT}/versions/3.6.3
|
||||
rm -rf ${PYENV_ROOT}/versions/3.6.3
|
||||
rehashed
|
||||
pyenv: 3.6.3 uninstalled
|
||||
after.
|
||||
OUT
|
||||
|
||||
refute [ -d "${PYENV_ROOT}/versions/3.6.2" ]
|
||||
refute [ -d "${PYENV_ROOT}/versions/3.6.3" ]
|
||||
}
|
||||
|
||||
@@ -195,12 +195,28 @@ OUT
|
||||
unstub pyenv-help
|
||||
}
|
||||
|
||||
@test "too many arguments for pyenv-uninstall" {
|
||||
stub pyenv-help 'uninstall : true'
|
||||
@test "more than one argument for pyenv-uninstall" {
|
||||
mkdir -p "${PYENV_ROOT}/versions/3.4.1"
|
||||
mkdir -p "${PYENV_ROOT}/versions/3.4.2"
|
||||
run pyenv-uninstall -f 3.4.1 3.4.2
|
||||
|
||||
run pyenv-uninstall 3.4.1 3.4.2
|
||||
assert_success
|
||||
refute [ -d "${PYENV_ROOT}/versions/3.4.1" ]
|
||||
refute [ -d "${PYENV_ROOT}/versions/3.4.2" ]
|
||||
}
|
||||
|
||||
@test "invalid arguments for pyenv-uninstall" {
|
||||
mkdir -p "${PYENV_ROOT}/versions/3.10.3"
|
||||
mkdir -p "${PYENV_ROOT}/versions/3.10.4"
|
||||
|
||||
run pyenv-uninstall -f 3.10.3 --invalid-option 3.10.4
|
||||
assert_failure
|
||||
unstub pyenv-help
|
||||
|
||||
assert [ -d "${PYENV_ROOT}/versions/3.10.3" ]
|
||||
assert [ -d "${PYENV_ROOT}/versions/3.10.4" ]
|
||||
|
||||
rmdir "${PYENV_ROOT}/versions/3.10.3"
|
||||
rmdir "${PYENV_ROOT}/versions/3.10.4"
|
||||
}
|
||||
|
||||
@test "show help for pyenv-uninstall" {
|
||||
|
||||
Reference in New Issue
Block a user