Rails:如何使用RSpec测试子域

时间:2012-04-17 14:29:44

标签: ruby-on-rails-3 rspec subdomain

我正在开发一个严重依赖子域的应用程序。它有一个嵌入在应用程序(模块)中的应用程序,它将作为管理应用程序的后端。我们把它命名为kong。

我在路线文件中有这个代码:

constraints :subdomain => "kong" do
  scope :module => "kong", :as => "kong" do
    resources :clients
  end
end

我如何测试这条路线,以便当我写下类似于下面的东西时,它从子域中获取并且只从子域中获取:

get :index

1 个答案:

答案 0 :(得分:5)

在测试单元中,我使用类似这样的东西来设置request.host来自子域:

def get_sub(sub = "one")
  @request.host = "#{sub}.local.me" 
end

我个人会在需要时将其放入spec_helper.rb文件并引用。

对于您,在这些测试中,您将sub设置为等于"kong",可能就像

before :each do
  get_sub("kong")
end

这个小丑也有答案,我在through google

之后找到了答案