Правильное место для переопределения методов ApplicationController - PullRequest
0 голосов
/ 15 ноября 2018

Мне нужно переопределить метод контроллера при запуске набора тестов для моего приложения.

Мне нужно добавить свое переопределение в код моего приложения, которое я надеялся предотвратить.

class ApplicationController
end

if ENV['LAYOUT'] == 'test'
  class ApplicationController
    layout: "test_layout"
  end
end

ApplicationController не существует для переопределения ни в одном из помощников спецификаций.Порядок загрузки:

  1. spec_helper
  2. config / application
  3. rails_helper
  4. application_controller

Итак, яустановить переменную ENV в моем spec_helper и переопределить ApplicationController, если этот ENV установлен.Это кажется грязным, и я предпочел бы переопределить ApplicationController из каталога / spec.

Есть ли лучшее место для меня, чтобы переопределить ApplicationController в каталоге /specs?

...