#!/usr/bin/env bats load test_helper create_executable() { name="${1?}" shift 1 bin="${PYENV_ROOT}/versions/${PYENV_VERSION}/bin" mkdir -p "$bin" { if [ $# -eq 0 ]; then cat - else echo "$@" fi } | sed -Ee '1s/^ +//' > "${bin}/$name" chmod +x "${bin}/$name" } @test "fails with invalid version" { export PYENV_VERSION="3.4" run pyenv-exec python -V assert_failure "pyenv: version \`3.4' is not installed (set by PYENV_VERSION environment variable)" } @test "fails with invalid version set from file" { mkdir -p "$PYENV_TEST_DIR" cd "$PYENV_TEST_DIR" echo 2.7 > .python-version run pyenv-exec rspec assert_failure "pyenv: version \`2.7' is not installed (set by $PWD/.python-version)" } @test "completes with names of executables" { export PYENV_VERSION="3.4" create_executable "fab" "#!/bin/sh" create_executable "python" "#!/bin/sh" pyenv-rehash run pyenv-completions exec assert_success assert_output <