Have rbenv init print instructions that hardcode the detected shell

This speeds up subsequent `rbenv init -` executions for the user who
followed these instructions because the shell will no longer have to be
detected each time.
This commit is contained in:
Daniel Hahler 2018-07-13 22:22:17 +02:00 committed by Mislav Marohnić
parent 059bb2c151
commit d061cb4651
2 changed files with 9 additions and 3 deletions

View file

@ -71,10 +71,10 @@ if [ -z "$print" ]; then
echo
case "$shell" in
fish )
echo 'status --is-interactive; and rbenv init - | source'
echo 'status --is-interactive; and rbenv init - fish | source'
;;
* )
echo 'eval "$(rbenv init -)"'
printf 'eval "$(rbenv init - %s)"\n' "$shell"
;;
esac
echo

View file

@ -51,10 +51,16 @@ OUT
[ -z "$line" ] || flunk "did not expect line: $line"
}
@test "posix shell instructions" {
run rbenv-init bash
assert [ "$status" -eq 1 ]
assert_line 'eval "$(rbenv init - bash)"'
}
@test "fish instructions" {
run rbenv-init fish
assert [ "$status" -eq 1 ]
assert_line 'status --is-interactive; and rbenv init - | source'
assert_line 'status --is-interactive; and rbenv init - fish | source'
}
@test "option to skip rehash" {