用Devise登录后测试重定向

stu*_*rtc 10 ruby rspec ruby-on-rails devise

我遵循了Devise github页面的建议:

http://github.com/plataformatec/devise/wiki/How-To:-Redirect-to-a-specific-page-on-successful-sign-in

现在这很好用,但你现在如何测试你有这种行为?

小智 4

有两种方法可以对其进行测试,一种是在单元级别测试,方法是在继承应用程序控制器的控制器中编写测试。代码看起来像这样

it "should redirect to page_x after logged in" do
  sign_in :user_role, @user 
  set_devise_mapping(:user_role) 
  get :new 
  response.should redirect_to(user_roles_dashboard_path) 
end
Run Code Online (Sandbox Code Playgroud)

对于黄瓜,您可能应该编写一个步骤来进行登录并断言您是否位于预期的登录页面后。

  • 这是哪个控制器测试? (3认同)