我们都喜欢单线,它们是如此酷 但它们也没有证件
我如何才能编写此代码的单行代码(目前运行良好)?
it "deletes the user" do
expect { destroy_user }.to change(User, :count).by(1)
end
答案 0 :(得分:2)
我该如何编写此代码
不能。 one-liner syntax是根据subject
定义的,此测试根本不使用一个。此外,引用该文档:
单线语法仅适用于无障碍预期(例如
expect(obj).to eq
等),并且不能与区块期望值一起使用 (例如expect { object }
)。
答案 1 :(得分:1)
我认为您的榜样是执行所需任务的唯一方法。
Rspec确实具有one-liner syntax,但仅适用于您的代码块具有主题且似乎不支持诸如destroy_user
之类的动作。