Подтвердить что ты не робот

Rspec должен менять счет без лямбда

Я пытаюсь выяснить другой способ написания теста изменения счетчика (без лямбда). Я использую Rails 3. Я также использую драгоценный камень для сокета

Причина. Все тестовые примеры находятся в формате

describe "some stuff" do
   it { should ... }
 end

Но я не могу следовать той же схеме для тестирования, если нужно изменить счетчик

Вот что я

describe "some stuff" do
    it "should change count by one" do 
        lambda { ... }.should change(Model, :count).by(1)
    end 
end

Есть ли способ записать его

describe "some stuff" do
   it { should change(Model, :count).by(1) }
 end

Спасибо большое!

4b9b3361

Ответ 1

subject { lambda { ... } }

it { should change(Model, :count).by(1) }

Ответ 2

Вы также можете использовать синтаксис ожидания:

describe "some stuff" do
  expect { ... }.to change(Model, :count).by(1)
end