使用 RSpec 3 和 Rails 4 在控制器测试中查找新创建的记录

2024-04-18

我正在 Rails 4 中制定控制器规范,并且想要测试由控制器操作创建的记录的属性。如何找到新创建的记录?

例如,我可以做什么来代替

it 'Marks a new user as pending' do
  post :create, params
  # I don't want to use the following line
  user = User.last
  expect(user).to be_pending
end

The 导轨 http://guides.rubyonrails.org/testing.html#functional-tests-for-your-controllers仅简要讨论控制器测试,其中提到测试Article.count改变1,但不知道如何获取新的ActiveRecord模型。

问题查找 Rails 3 中的最新记录 https://stackoverflow.com/questions/4870531/find-the-newest-record-in-rails-3是关于 Rails 3 的。

我不愿意使用User.last,因为默认排序可能不是按创建日期排序。


如果控制器有一个名为的实例变量@user,然后我们可以通过以下方式在 RSpec 中访问它assigns(:user).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 RSpec 3 和 Rails 4 在控制器测试中查找新创建的记录 的相关文章

随机推荐