
The test "prefix for system in /" is duplicated in test/prefix.bats. Both tests are completely identical. This commit removes the duplication. It appears that the culprit is this merge from rbenv/master, from 2016: cf1beda36248be9b0b0ff0913cca03a51d4572e5 With the current development version of bats, this leads to the following error when running `make test`: Error: Duplicate test name(s) in file "/home/travis/build/pyenv/pyenv/test/prefix.bats": test_prefix_for_system_in_-2f Note that the development version is what pyenv's Makefile uses. With the latest release of bats, the duplication only leads to a warning: bats warning: duplicate test name(s) in /src/test/prefix.bats: test_prefix_for_system_in_-2f
43 lines
1.1 KiB
Bash
43 lines
1.1 KiB
Bash
#!/usr/bin/env bats
|
|
|
|
load test_helper
|
|
|
|
@test "prefix" {
|
|
mkdir -p "${PYENV_TEST_DIR}/myproject"
|
|
cd "${PYENV_TEST_DIR}/myproject"
|
|
echo "1.2.3" > .python-version
|
|
mkdir -p "${PYENV_ROOT}/versions/1.2.3"
|
|
run pyenv-prefix
|
|
assert_success "${PYENV_ROOT}/versions/1.2.3"
|
|
}
|
|
|
|
@test "prefix for invalid version" {
|
|
PYENV_VERSION="1.2.3" run pyenv-prefix
|
|
assert_failure "pyenv: version \`1.2.3' not installed"
|
|
}
|
|
|
|
@test "prefix for system" {
|
|
mkdir -p "${PYENV_TEST_DIR}/bin"
|
|
touch "${PYENV_TEST_DIR}/bin/python"
|
|
chmod +x "${PYENV_TEST_DIR}/bin/python"
|
|
PYENV_VERSION="system" run pyenv-prefix
|
|
assert_success "$PYENV_TEST_DIR"
|
|
}
|
|
|
|
@test "prefix for system in /" {
|
|
mkdir -p "${BATS_TEST_DIRNAME}/libexec"
|
|
cat >"${BATS_TEST_DIRNAME}/libexec/pyenv-which" <<OUT
|
|
#!/bin/sh
|
|
echo /bin/python
|
|
OUT
|
|
chmod +x "${BATS_TEST_DIRNAME}/libexec/pyenv-which"
|
|
PYENV_VERSION="system" run pyenv-prefix
|
|
assert_success "/"
|
|
rm -f "${BATS_TEST_DIRNAME}/libexec/pyenv-which"
|
|
}
|
|
|
|
@test "prefix for invalid system" {
|
|
PATH="$(path_without python)" run pyenv-prefix system
|
|
assert_failure "pyenv: system version not found in PATH"
|
|
}
|