Как заставить RubyMine выбрать правильный тест - PullRequest
0 голосов
/ 21 декабря 2019

В RubyMine (и других продуктах JetBrains, таких как IntelliJ или PyCharm), обычной задачей является переключение между файлом, содержащим класс, и соответствующим файлом, содержащим тесты для этого класса, используя shift command/ctrl T.

Однако моя установка RubyMine, похоже, не может определить правильный тестовый файл, даже если тест содержит прямую ссылку на открытый у меня класс, и хотя тестовый файл находится в каталоге project/spec/, симметричном относительнофайл класса в project/app/ и имеет то же имя, что и файл с добавленным _spec.

Пример

Файл, который я открыл в RubyMine:

# in project/app/models/event_source.rb
class EventSource < ApplicationRecord
   # ...
end

Тестовый файл, на который я хотел бы перейти:

# in project/spec/models/event_source_spec.rb

RSpec.describe EventSource, type: :model do
     # ...
end

Когда у меня открыто event_source.rb и используется ярлык для открытия тестового файла, RubyMine всегда предоставляет мне окно с заголовком «ВыбратьТест для event_source.rb (найдено 7) ", который предлагает:

  • spec/helpers/event_sources_helper_spec.rb
  • spec/views/event_sources/edit.html.erb_spec.rb
  • (другие спецификации вида)
  • spec/models/event_sources_spec.rb (правильный файл теста)
  • spec/controllers/event_sources_controller_spec.rb

Как настроить или исправить RubyMine, чтобы правильно угадать соответствующий тестовый файл, вместо того, чтобы показывать неправильные тестовые файлы, которые содержат элементто же имя?

Я предполагаю, что другие продукты JetBrains предлагают аналогичную функциональность и что пользователи PyCharm, IntelliJ или PHPStorm могут знать решение.

...