ruby-on-rails - 如何在帮助程序规范中访问 c​​ookie?

标签 ruby-on-rails ruby-on-rails-3 rspec

在测试我的辅助方法时,我不知道如何测试是否设置了 cookie。

假设的辅助方法:

def my_helper(k,v)
    cookies[k] = v
end

测试:
it 'should set cookies' do  
  helper.my_helper("foo", "bar")
  helper.cookies["foo"].should == "bar" #nil
  helper.response.cookies["foo"].should == "bar" #nil
end

有人知道怎么做吗?

最佳答案

如果您愿意,用一个简单的 rspec 模拟代替 CookieJar 可以:

helper.stubs(:cookies => cookies = mock)
cookies.expects(:[]=).with('foo', 'bar')
helper.my_helper('foo', 'bar')

关于ruby-on-rails - 如何在帮助程序规范中访问 c​​ookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11659244/

相关文章:

ruby - 为什么我的 while 循环卡住了?我忘记了一步吗?

ruby-on-rails - 为什么拥有数据库密码很重要? (例如,在 Rails 中)

ruby-on-rails - Ruby on Rails 请求不返回且日志中没有信息

javascript - 获取数据时应该使用 setInterval 吗?

ruby-on-rails-3 - 在功能性 Rails 测试中为 authentication_user 抛出设计管理员错误

ruby-on-rails - RSPec 和 Rails 3 的 Mising 模板错误

ruby-on-rails - Ruby - redirect_to 重定向到正确的页面,但不更改 URL

ruby-on-rails-3 - Rails update_attribute 替换?

ruby-on-rails - 在 Rails 3 中为自定义 404 捕获未知操作

ruby-on-rails-3 - 如何测试 - 使用 rspec - 创建电子邮件时使用什么模板? (导轨 3.0.7)