You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

65 lines
1.3 KiB

  1. #!/usr/bin/env bats
  2. load test_helper
  3. create_version() {
  4. mkdir -p "${RBENV_ROOT}/versions/$1"
  5. }
  6. setup() {
  7. mkdir -p "$RBENV_TEST_DIR"
  8. cd "$RBENV_TEST_DIR"
  9. }
  10. @test "no version selected" {
  11. assert [ ! -d "${RBENV_ROOT}/versions" ]
  12. run rbenv-version-name
  13. assert_success "system"
  14. }
  15. @test "system version is not checked for existance" {
  16. RBENV_VERSION=system run rbenv-version-name
  17. assert_success "system"
  18. }
  19. @test "RBENV_VERSION has precedence over local" {
  20. create_version "1.8.7"
  21. create_version "1.9.3"
  22. cat > ".ruby-version" <<<"1.8.7"
  23. run rbenv-version-name
  24. assert_success "1.8.7"
  25. RBENV_VERSION=1.9.3 run rbenv-version-name
  26. assert_success "1.9.3"
  27. }
  28. @test "local file has precedence over global" {
  29. create_version "1.8.7"
  30. create_version "1.9.3"
  31. cat > "${RBENV_ROOT}/version" <<<"1.8.7"
  32. run rbenv-version-name
  33. assert_success "1.8.7"
  34. cat > ".ruby-version" <<<"1.9.3"
  35. run rbenv-version-name
  36. assert_success "1.9.3"
  37. }
  38. @test "missing version" {
  39. RBENV_VERSION=1.2 run rbenv-version-name
  40. assert_failure "rbenv: version \`1.2' is not installed"
  41. }
  42. @test "version with prefix in name" {
  43. create_version "1.8.7"
  44. cat > ".ruby-version" <<<"ruby-1.8.7"
  45. run rbenv-version-name
  46. assert_success
  47. assert_output <<OUT
  48. warning: ignoring extraneous \`ruby-' prefix in version \`ruby-1.8.7'
  49. (set by ${PWD}/.ruby-version)
  50. 1.8.7
  51. OUT
  52. }