Как я могу сделать Capybara использовать помощники маршрутизации

StackOverflow https://stackoverflow.com/questions/4411930

  •  08-10-2019
  •  | 
  •  

Вопрос

Я использую Rails 3, Steak & Capybara. У меня есть редкие ресурсы, возможно ли использовать помощники маршрутизации, доступные для просмотров и контроллеров?

Это было полезно?

Решение

Вам просто нужно поставить это на ваш SPEC_HELPER.RB

config.include Rails.application.routes.url_helpers

Внутри блока определения конфигурации, то есть тот, который обернут:

RSpec.configure do |config|
# All your config.include calls go here.
end

И тогда вы можете использовать его на ваших характеристиках:

scenario "Show school" do
school = School.create!(:name => "Pablo de Olavide")
visit(school_path(school))
save_and_open_page
page.has_content?("Pablo de Olavide").should == true
end

Не используйте:

include ActionController::UrlWrite

Как оно устарело в рельсы 3

Другие советы

Я изменил это к этому, чтобы он работал с рельсами 4.1.6:

config.include Rails.application.routes.url_helpers if defined? Rails
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top