win*_*nyw 7 ruby routing rspec ruby-on-rails omniauth
我在我的Rails项目中使用Omniauth,我想在"/ login"路径后面隐藏"/ auth/facebook".
事实上,我写了一条路线:
match "/login", :to => redirect("/auth/facebook"), :as => :login
Run Code Online (Sandbox Code Playgroud)
这实际上是有效的,即链接login_path将重定向到/auth/facebook.
但是,如何编写(RSpec)规范来测试此路由(特别是重定向)?
请注意,这/login不是应用程序中定义的实际操作或方法.
提前致谢!
Sim*_*tti 12
由于您未提供有关环境的任何详细信息,因此以下示例假定您使用的是带有Rails 3的rspec 2.x和rspec-rails.
# 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
Run Code Online (Sandbox Code Playgroud)
有关更多详细信息,请阅读rspec-rails的Request Specs部分.
| 归档时间: |
|
| 查看次数: |
4503 次 |
| 最近记录: |