如何在Rails测试中测试params哈希?

B S*_*ven 7 testing assert ruby-on-rails url-parameters ruby-on-rails-3

以下生成错误:"未定义的局部变量或方法`params'"

assert_equal params[:recipient_id], users(:one).id

你如何测试params哈希?

另外,assert_redirect如果存在params,你如何测试?params附加到URL,因此测试model_path或类似失败.

在Rails 3中使用内置测试类.

Jim*_*lle 7

http://guides.rubyonrails.org/testing.html#functional-tests-for-your-controllers提供了一些这方面的信息.

在这种情况下,params附加到@request@response对象(取决于您正在测试的HTTP方法),因此您可以将其称为@request.params[:recipient_id].

对于重定向: assert_redirected_to post_path(assigns(:post))将断言您被重定向到给定模型的正确路径.assign方法应该具有您在控制器内部设置的实例变量以传递给视图