Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

99 rindas
2.4 KiB

  1. #!/usr/bin/env bats
  2. load test_helper
  3. setup() {
  4. mkdir -p "$RBENV_TEST_DIR"
  5. cd "$RBENV_TEST_DIR"
  6. }
  7. create_file() {
  8. mkdir -p "$(dirname "$1")"
  9. touch "$1"
  10. }
  11. @test "prints global file if no version files exist" {
  12. assert [ ! -e "${RBENV_ROOT}/version" ]
  13. assert [ ! -e ".ruby-version" ]
  14. run rbenv-version-file
  15. assert_success "${RBENV_ROOT}/version"
  16. }
  17. @test "detects 'global' file" {
  18. create_file "${RBENV_ROOT}/global"
  19. run rbenv-version-file
  20. assert_success "${RBENV_ROOT}/global"
  21. }
  22. @test "detects 'default' file" {
  23. create_file "${RBENV_ROOT}/default"
  24. run rbenv-version-file
  25. assert_success "${RBENV_ROOT}/default"
  26. }
  27. @test "'version' has precedence over 'global' and 'default'" {
  28. create_file "${RBENV_ROOT}/version"
  29. create_file "${RBENV_ROOT}/global"
  30. create_file "${RBENV_ROOT}/default"
  31. run rbenv-version-file
  32. assert_success "${RBENV_ROOT}/version"
  33. }
  34. @test "in current directory" {
  35. create_file ".ruby-version"
  36. run rbenv-version-file
  37. assert_success "${RBENV_TEST_DIR}/.ruby-version"
  38. }
  39. @test "legacy file in current directory" {
  40. create_file ".rbenv-version"
  41. run rbenv-version-file
  42. assert_success "${RBENV_TEST_DIR}/.rbenv-version"
  43. }
  44. @test ".ruby-version has precedence over legacy file" {
  45. create_file ".ruby-version"
  46. create_file ".rbenv-version"
  47. run rbenv-version-file
  48. assert_success "${RBENV_TEST_DIR}/.ruby-version"
  49. }
  50. @test "in parent directory" {
  51. create_file ".ruby-version"
  52. mkdir -p project
  53. cd project
  54. run rbenv-version-file
  55. assert_success "${RBENV_TEST_DIR}/.ruby-version"
  56. }
  57. @test "topmost file has precedence" {
  58. create_file ".ruby-version"
  59. create_file "project/.ruby-version"
  60. cd project
  61. run rbenv-version-file
  62. assert_success "${RBENV_TEST_DIR}/project/.ruby-version"
  63. }
  64. @test "legacy file has precedence if higher" {
  65. create_file ".ruby-version"
  66. create_file "project/.rbenv-version"
  67. cd project
  68. run rbenv-version-file
  69. assert_success "${RBENV_TEST_DIR}/project/.rbenv-version"
  70. }
  71. @test "RBENV_DIR has precedence over PWD" {
  72. create_file "widget/.ruby-version"
  73. create_file "project/.ruby-version"
  74. cd project
  75. RBENV_DIR="${RBENV_TEST_DIR}/widget" run rbenv-version-file
  76. assert_success "${RBENV_TEST_DIR}/widget/.ruby-version"
  77. }
  78. @test "PWD is searched if RBENV_DIR yields no results" {
  79. mkdir -p "widget/blank"
  80. create_file "project/.ruby-version"
  81. cd project
  82. RBENV_DIR="${RBENV_TEST_DIR}/widget/blank" run rbenv-version-file
  83. assert_success "${RBENV_TEST_DIR}/project/.ruby-version"
  84. }