微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – Rails:rspec中url helper的主机名错误

Url帮助程序(例如root_url)在app控制器和rspec示例中返回不同的主机名.
我已成功地在我的rails应用程序中为url helpers设置域,如下所示:
class ApplicationController < ActionController::Base
  def default_url_options
    {host: "foo.com",only_path: false}
  end
end

例如,root_url在应用程序中输出“http://foo.com/”,但在我的请求规范中输出“http://example.com”.在rails 3.2中全局应用这些url选项的建议方法是什么,以便它们影响我的规范?
网址选项不需要是动态的.

解决方法

功能规格中,主持人!已被弃用.将这些添加到您的rspec_helper.rb:
# Configure Capybara expected host
Capybara.app_host = 'http://lvh.me:3000'

# Configure actual routes host during test
before(:each) do
  if respond_to?(:default_url_options)
    default_url_options[:host] = 'http://lvh.me:3000'
  end
end

原文地址:https://www.jb51.cc/ruby/264608.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐