Und*_*ker 14 ruby rspec ruby-on-rails ruby-on-rails-3
我正在测试我的model
方法,它返回给我一个Account object
.我正在检查我的表是否插入了一个新的row
,我的模型反映了它的计数.
以下是我的规格.
it "can create an account" do
create_account = Account.create(account: acc)
create_account.should change(Account, :count).by(1);
end
Run Code Online (Sandbox Code Playgroud)
我得到的错误
8) Account can create an account
Failure/Error: create_account.should change(Account, :count).by(1);
expected #count to have changed by 1, but was not given a block
Run Code Online (Sandbox Code Playgroud)
Thi*_*ilo 48
的#change
匹配预计其中的一些动作执行块效应的预期变化.试试这个:
expect { Account.create(account: acc) }.to change{ Account.count }.by(1)
Run Code Online (Sandbox Code Playgroud)
请参阅https://www.relishapp.com/rspec/rspec-expectations/v/2-0/docs/matchers/expect-change
当您使用is_expected.to change { something }
而不是时会发生expect { subject }.to change { something }
归档时间: |
|
查看次数: |
12238 次 |
最近记录: |