#!/usr/bin/env bats load test_helper setup() { export PYENV_ROOT="${TMP}/pyenv" } stub_pyenv() { stub pyenv-version-name "echo \${PYENV_VERSION}" stub pyenv-prefix " : echo '${PYENV_ROOT}/versions/${PYENV_VERSION}'" stub pyenv-hooks "virtualenv : echo" stub pyenv-rehash " : echo rehashed" } unstub_pyenv() { unstub pyenv-version-name unstub pyenv-prefix unstub pyenv-hooks unstub pyenv-rehash } @test "use pyvenv if virtualenv is not available" { export PYENV_VERSION="3.4.1" stub_pyenv "${PYENV_VERSION}" stub pyenv-prefix " : echo '${PYENV_ROOT}/versions/${PYENV_VERSION}'" stub pyenv-prefix " : echo '${PYENV_ROOT}/versions/${PYENV_VERSION}'" stub pyenv-prefix " : echo '${PYENV_ROOT}/versions/${PYENV_VERSION}'" stub pyenv-exec "pyvenv * : echo PYENV_VERSION=\${PYENV_VERSION} \"\$@\"" stub pyenv-exec "python -s -m ensurepip : true" remove_executable "3.4.1" "virtualenv" create_executable "3.4.1" "pyvenv" run pyenv-virtualenv venv assert_success assert_output <