Is it possible for RSpec to expect change in two tables?

后端 未结 8 1547
借酒劲吻你
借酒劲吻你 2020-12-09 07:15

RSpec expect change:

it \"should increment the count\" do
  expect{Foo.bar}.to change{Counter.count}.by 1
end

Is there a way to expect chan

8条回答
  •  一整个雨季
    2020-12-09 08:09

    I prefer this syntax (rspec 3 or later):

    it "should increment the counters" do
      expect { Foo.bar }.to change { Counter,        :count }.by(1).and \
                            change { AnotherCounter, :count }.by(1)
    end
    

    Yes, this are two assertions in one place, but because the block is executed just one time, it can speedup the tests.

    EDIT: Added Backslash after the .and to avoid syntax error

提交回复
热议问题