【发布时间】:2012-06-12 21:42:05
【问题描述】:
我不知道自己做错了什么,但每次我尝试测试重定向时,都会收到以下错误:“@request must be an ActionDispatch::Request”
context "as non-signed in user" do
it "should redirect to the login page" do
expect { visit admin_account_url(account, host: get_host(account)) }.to redirect_to(signin_path)
end
end
1) AdminAccountPages Admin::Accounts#show as non-signed in user should redirect to the login page
Failure/Error: expect { visit admin_account_url(account, host: get_host(account)) }.to redirect_to(signin_path)
ArgumentError:
@request must be an ActionDispatch::Request
# ./spec/requests/admin_account_pages_spec.rb:16:in `block (4 levels) in <top (required)>'
我将 RSpec-rails (2.9.0) 与 Capybara (1.1.2) 和 Rails 3.2 一起使用。如果有人也能解释为什么会发生这种情况,我将不胜感激;为什么我不能以这种方式使用期望?
【问题讨论】:
-
也许我遗漏了什么,但
assert_redirected_to有什么问题? -
@JosephWeissman,我遇到了同样的错误!
标签: ruby-on-rails ruby rspec capybara