作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
redi-6ren">
我在我的 Rails 项目中使用 Omniauth,我想将“/auth/facebook”隐藏在“/login”路由后面。
其实我写了一个路由:
match "/login", :to => redirect("/auth/facebook"), :as => :login
这确实有效,即指向 login_path
的链接将重定向到 /auth/facebook
。
但是,我如何编写 (RSpec) 规范来测试此路由(特别是重定向)?
请注意,/login
不是应用程序中定义的实际操作或方法。
提前致谢!
最佳答案
因为您没有提供有关环境的任何详细信息,以下示例假设您使用的是 rspec 2.x 和 rspec-rails,以及 Rails 3。
# rspec/requests/redirects_spec.rb
describe "Redirects" do
describe "GET login" do
before(:each) do
get "/login"
end
it "redirects to /auth/facebook" do
response.code.should == "302"
response.location.should == "/auth/facebook"
end
end
end
阅读 rspec-rails 的请求规范部分了解更多详情。
关于ruby-on-rails - rails : How do I write a spec for a route that does a redirect?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4514807/
我是一名优秀的程序员,十分优秀!