0

此代码正在运行,但我想检查它是否稳健/良好实践/惯用。背景:我正在关注 Michael Hartl 的 rails 教程,并且正在研究 8.5(第 8 章的练习),将测试与实现分离。

在 user_pages_spec.rb 我不喜欢代码

expect { click_button submit }.not_to change(User, :count)

因为change(User, :count)看起来有点像黑客。所以在 spec/support/utilities.rb 我写道:

def create_user
    change(User, :count)
end

我将 user_pages_spec.rb 中的行替换为

expect { click_button submit }.not_to create_user

这是明智的吗?

4

1 回答 1

1

这样做几乎只是“包装”语法,我认为它并没有真正增加代码。您之前的代码还不错,但也许您也可以考虑这样做:

expect { click_button submit }.to_not change{User.count}
于 2013-09-12T21:41:36.217 回答