mirror of
https://github.com/pyenv/pyenv-virtualenv.git
synced 2025-11-14 14:33:52 -05:00
150 lines
5.0 KiB
Bash
150 lines
5.0 KiB
Bash
#!/usr/bin/env bats
|
|
|
|
load test_helper
|
|
|
|
setup() {
|
|
export HOME="${TMP}"
|
|
export PYENV_ROOT="${TMP}/pyenv"
|
|
}
|
|
|
|
@test "activate conda root from current version" {
|
|
export PYENV_VIRTUALENV_INIT=1
|
|
|
|
create_conda "anaconda-2.3.0"
|
|
stub pyenv-version-name "echo anaconda-2.3.0"
|
|
stub pyenv-virtualenv-prefix "anaconda-2.3.0 : echo \"${PYENV_ROOT}/versions/anaconda-2.3.0\""
|
|
stub pyenv-prefix "anaconda-2.3.0 : echo \"${PYENV_ROOT}/versions/anaconda-2.3.0\""
|
|
stub pyenv-prefix "anaconda-2.3.0 : echo \"${PYENV_ROOT}/versions/anaconda-2.3.0\""
|
|
|
|
PYENV_SHELL="bash" PYENV_VERSION="anaconda-2.3.0" run pyenv-sh-activate
|
|
|
|
unstub pyenv-version-name
|
|
unstub pyenv-virtualenv-prefix
|
|
unstub pyenv-prefix
|
|
|
|
assert_success
|
|
assert_output <<EOS
|
|
unset PYENV_DEACTIVATE;
|
|
export PYENV_ACTIVATE="${PYENV_ROOT}/versions/anaconda-2.3.0";
|
|
. "${PYENV_ROOT}/versions/anaconda-2.3.0/bin/activate" "root";
|
|
EOS
|
|
}
|
|
|
|
@test "activate conda root from current version (fish)" {
|
|
export PYENV_VIRTUALENV_INIT=1
|
|
|
|
create_conda "anaconda-2.3.0"
|
|
stub pyenv-version-name "echo anaconda-2.3.0"
|
|
stub pyenv-virtualenv-prefix "anaconda-2.3.0 : echo \"${PYENV_ROOT}/versions/anaconda-2.3.0\""
|
|
stub pyenv-prefix "anaconda-2.3.0 : echo \"${PYENV_ROOT}/versions/anaconda-2.3.0\""
|
|
stub pyenv-prefix "anaconda-2.3.0 : echo \"${PYENV_ROOT}/versions/anaconda-2.3.0\""
|
|
|
|
PYENV_SHELL="fish" PYENV_VERSION="anaconda-2.3.0" run pyenv-sh-activate
|
|
|
|
unstub pyenv-version-name
|
|
unstub pyenv-virtualenv-prefix
|
|
unstub pyenv-prefix
|
|
|
|
assert_failure
|
|
assert_output <<EOS
|
|
pyenv-virtualenv: Only bash and zsh are supported by Anaconda/Miniconda
|
|
false
|
|
EOS
|
|
}
|
|
|
|
@test "activate conda root from command-line argument" {
|
|
export PYENV_VIRTUALENV_INIT=1
|
|
|
|
create_conda "anaconda-2.3.0"
|
|
create_conda "miniconda-3.9.1"
|
|
stub pyenv-virtualenv-prefix "miniconda-3.9.1 : echo \"${PYENV_ROOT}/versions/miniconda-3.9.1\""
|
|
stub pyenv-prefix "miniconda-3.9.1 : echo \"${PYENV_ROOT}/versions/miniconda-3.9.1\""
|
|
stub pyenv-prefix "miniconda-3.9.1 : echo \"${PYENV_ROOT}/versions/miniconda-3.9.1\""
|
|
|
|
PYENV_SHELL="bash" PYENV_VERSION="anaconda-2.3.0" run pyenv-sh-activate "miniconda-3.9.1"
|
|
|
|
unstub pyenv-virtualenv-prefix
|
|
unstub pyenv-prefix
|
|
|
|
assert_success
|
|
assert_output <<EOS
|
|
pyenv shell "miniconda-3.9.1";
|
|
export PYENV_ACTIVATE_SHELL=1;
|
|
unset PYENV_DEACTIVATE;
|
|
export PYENV_ACTIVATE="${PYENV_ROOT}/versions/miniconda-3.9.1";
|
|
. "${PYENV_ROOT}/versions/miniconda-3.9.1/bin/activate" "root";
|
|
EOS
|
|
}
|
|
|
|
@test "activate conda env from current version" {
|
|
export PYENV_VIRTUALENV_INIT=1
|
|
|
|
create_conda "anaconda-2.3.0" "foo"
|
|
stub pyenv-version-name "echo anaconda-2.3.0/envs/foo"
|
|
stub pyenv-virtualenv-prefix "anaconda-2.3.0/envs/foo : echo \"${PYENV_ROOT}/versions/anaconda-2.3.0/envs/foo\""
|
|
stub pyenv-prefix "anaconda-2.3.0/envs/foo : echo \"${PYENV_ROOT}/versions/anaconda-2.3.0/envs/foo\""
|
|
stub pyenv-prefix "anaconda-2.3.0/envs/foo : echo \"${PYENV_ROOT}/versions/anaconda-2.3.0/envs/foo\""
|
|
|
|
PYENV_SHELL="bash" PYENV_VERSION="anaconda-2.3.0/envs/foo" run pyenv-sh-activate
|
|
|
|
unstub pyenv-version-name
|
|
unstub pyenv-virtualenv-prefix
|
|
unstub pyenv-prefix
|
|
|
|
assert_success
|
|
assert_output <<EOS
|
|
unset PYENV_DEACTIVATE;
|
|
export PYENV_ACTIVATE="${PYENV_ROOT}/versions/anaconda-2.3.0/envs/foo";
|
|
. "${PYENV_ROOT}/versions/anaconda-2.3.0/bin/activate" "foo";
|
|
EOS
|
|
}
|
|
|
|
@test "activate conda env from command-line argument" {
|
|
export PYENV_VIRTUALENV_INIT=1
|
|
|
|
create_conda "anaconda-2.3.0" "foo"
|
|
create_conda "miniconda-3.9.1" "bar"
|
|
stub pyenv-virtualenv-prefix "miniconda-3.9.1/envs/bar : echo \"${PYENV_ROOT}/versions/miniconda-3.9.1\""
|
|
stub pyenv-prefix "miniconda-3.9.1/envs/bar : echo \"${PYENV_ROOT}/versions/miniconda-3.9.1/envs/bar\""
|
|
stub pyenv-prefix "miniconda-3.9.1/envs/bar : echo \"${PYENV_ROOT}/versions/miniconda-3.9.1/envs/bar\""
|
|
|
|
PYENV_SHELL="bash" PYENV_VERSION="anaconda-2.3.0/envs/foo" run pyenv-sh-activate "miniconda-3.9.1/envs/bar"
|
|
|
|
unstub pyenv-virtualenv-prefix
|
|
unstub pyenv-prefix
|
|
|
|
assert_success
|
|
assert_output <<EOS
|
|
pyenv shell "miniconda-3.9.1/envs/bar";
|
|
export PYENV_ACTIVATE_SHELL=1;
|
|
unset PYENV_DEACTIVATE;
|
|
export PYENV_ACTIVATE="${PYENV_ROOT}/versions/miniconda-3.9.1/envs/bar";
|
|
. "${PYENV_ROOT}/versions/miniconda-3.9.1/bin/activate" "bar";
|
|
EOS
|
|
}
|
|
|
|
@test "activate conda env from command-line argument in short-form" {
|
|
export PYENV_VIRTUALENV_INIT=1
|
|
|
|
create_conda "miniconda-3.9.1" "bar"
|
|
stub pyenv-prefix "bar : false"
|
|
stub pyenv-version-name " : echo miniconda-3.9.1"
|
|
stub pyenv-virtualenv-prefix "miniconda-3.9.1/envs/bar : echo \"${PYENV_ROOT}/versions/miniconda-3.9.1/envs/bar\""
|
|
stub pyenv-prefix "miniconda-3.9.1/envs/bar : echo \"${PYENV_ROOT}/versions/miniconda-3.9.1/envs/bar\""
|
|
|
|
PYENV_SHELL="bash" PYENV_VERSION="miniconda-3.9.1" run pyenv-sh-activate "bar"
|
|
|
|
unstub pyenv-prefix
|
|
unstub pyenv-version-name
|
|
unstub pyenv-virtualenv-prefix
|
|
|
|
assert_success
|
|
assert_output <<EOS
|
|
pyenv shell "miniconda-3.9.1/envs/bar";
|
|
export PYENV_ACTIVATE_SHELL=1;
|
|
unset PYENV_DEACTIVATE;
|
|
export PYENV_ACTIVATE="${PYENV_ROOT}/versions/miniconda-3.9.1/envs/bar";
|
|
. "${PYENV_ROOT}/versions/miniconda-3.9.1/bin/activate" "bar";
|
|
EOS
|
|
}
|