1
0
mirror of https://github.com/pyenv/pyenv.git synced 2025-11-08 11:33:49 -05:00
Files
pyenv/test/version-file-write.bats
rockandska 92a28e531b use BATS_FILE_TMPDIR in test/plugin test
use global setup with bats with possibility to add specific test file _setup
use readlink in helper if realpath is not working as expected
2025-09-15 19:48:34 +02:00

38 lines
1023 B
Bash

#!/usr/bin/env bats
load test_helper
_setup() {
mkdir -p "${PYENV_TEST_DIR}"
cd "$PYENV_TEST_DIR"
}
@test "invocation without 2 arguments prints usage" {
run pyenv-version-file-write
assert_failure "Usage: pyenv version-file-write [-f|--force] <file> <version> [...]"
run pyenv-version-file-write "one" ""
assert_failure
}
@test "setting nonexistent version fails" {
assert [ ! -e ".python-version" ]
run pyenv-version-file-write ".python-version" "2.7.6"
assert_failure "pyenv: version \`2.7.6' not installed"
assert [ ! -e ".python-version" ]
}
@test "setting nonexistent version succeeds with force" {
assert [ ! -e ".python-version" ]
run pyenv-version-file-write --force ".python-version" "2.7.6"
assert_success
assert [ -e ".python-version" ]
}
@test "writes value to arbitrary file" {
mkdir -p "${PYENV_ROOT}/versions/2.7.6"
assert [ ! -e "my-version" ]
run pyenv-version-file-write "${PWD}/my-version" "2.7.6"
assert_success ""
assert [ "$(cat my-version)" = "2.7.6" ]
}