使用 let 不保存记录

Ben

给出下面的简单例子:

let(:item) { create(:item }
it 'query by scope' do
  expect(Item.all.length).to eq 1
end

测试没有通过。

item.save在 it 块中添加,测试通过。使用 abefore(:each) { create(:item) }而不是let使测试也通过。

听起来很明显,作为我可能遗漏的一点,为什么let在这种情况下不能有效地创建记录?

格雷戈里

let!改用。let被懒惰地评估,let!身体立即被调用。

你提供的所有例子都是有效的,因为let被懒惰地评估。您也可以item在它内部调用(没有save),它也应该通过。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

正在获取警告:SQL错误:1205,SQLState:41000错误:超出了锁定等待超时;尝试重新启动事务。使用休眠保存记录

与ExecutorService一起使用时,Hibernate不会引发任何错误,也不会在数据库中保存记录

如何使用Java中的记录值保存记录并更新同一页面

何时使用RSpec let()?

CloudKit:使用CKModifyRecordsOperation保存记录时出错

使用Kotlin的`let`的合理情况

使用ajax保存记录后,为什么Django将我重定向到我的api视图?

在使用Mongoose和Node保存记录之前,如何添加多个对象引用?

无法从Django模型保存记录

FactoryGirl不保存记录

MYSQL DB时间戳记不保存记录。而是以日期时间格式保存

在Laravel 4中批量保存记录?

Ember在使用DS.RESTAdapter时不保存记录

Ember.js错误:使用ember-data保存记录时找不到'id'的模型

如何使用相关数据保存记录

Yii从表单保存记录3次

核心数据使用多对多关系保存记录?

用给定的uuid保存记录

保存记录多次不同的参数滑轨

R编码:如何使用4个完整季度的数据保存记录

更新OleDb时未保存记录

Spring Data Rest在Java中使用关系(外键)保存记录(repo.save())

如何保存记录及其模型关系

由于字段不存在而创建不保存记录

使用 INSERT 保存记录 - SAVE 和 1 INSERT 不起作用但其余工作正常

如何使用数组对象在mongoDB中保存记录

保存记录前弹出消息

保存记录并使用新值时不会在 rails 中更改

更新数组后猫鼬不保存记录