首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Rails rspec集子域

Rails rspec集子域
EN

Stack Overflow用户
提问于 2010-04-01 05:32:36
回答 2查看 20.9K关注 0票数 61

我正在使用rSpec测试我的应用程序。在我的应用程序控制器中,我有一个类似这样的方法:

代码语言:javascript
复制
def set_current_account
  @current_account ||= Account.find_by_subdomain(request.subdomains.first)
end

可以在我的规格中设置request.subdomain吗?也许在之前的代码块中?我是rSpec的新手,所以在这方面的任何建议都将非常感谢。

Eef

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-04-01 20:47:51

我想出了如何解决这个问题。

在之前的代码块中,我在规范中简单地添加了:

代码语言:javascript
复制
before(:each) do
  @request.host = "#{mock_subdomain}.example.com"
end

这会将request.subdomains.first设置为mock_subdomain的值。

希望有人发现这是有用的,因为它不是很好地解释在网上的其他地方。

票数 90
EN

Stack Overflow用户

发布于 2010-12-01 09:29:42

在Rails3中,我试图手动设置主机的所有内容都不起作用,但查看代码后,我注意到它们可以很好地解析您传递给get等请求助手的路径。果然,如果您的控制器获取了子域中提到的用户并将其存储为@king_of_the_castle

代码语言:javascript
复制
it "fetches the user of the subomain" do
  get "http://#{mock_subdomain}.example.com/rest_of_the_path"
  assigns[:king_of_the_castle].should eql(User.find_by_name mock_subdomain)
end
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2556627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档