【发布时间】:2011-06-27 12:11:43
【问题描述】:
在 rspec 中设置 cookie 有很多困惑 http://relishapp.com/rspec/rspec-rails/v/2-6/dir/controller-specs/file/cookies
在你的控制器中,通常你可以写
cookies['transaction_code'] = { :expires => 300.seconds.from_now, :value => c }
但在 rspec 我只能写
request.cookies['transaction_code'] = transaction_code
如果我说
request.cookies['transaction_code'] = { :expires => 300.seconds.from_now, :value => c }
我在控制器中将哈希值作为 cookies['transaction_code'] 的值返回。
现在我的问题是:如何在 rspec 控制器测试示例中设置/测试 cookie 过期时间?
更新:几秒钟后想到:我的意思是:我如何测试控制器是否按预期对过期的 cookie 做出反应,但实际上,如果我信任 cookie 实现,过期的 cookie 就像没有 cookie,我应该做,所以毕竟也许我的问题没有意义。如果是这种情况,我需要测试(另一个)控制器操作是否正确设置了过期 cookie,但是如果测试中的 cookies['transaction_code'] 只返回值,我该怎么做?
【问题讨论】:
标签: ruby-on-rails-3 cookies rspec