RSpec: как проверить, был ли вызван метод?

Когда я пишу тесты RSpec, я пишу много кода, который выглядит следующим образом, чтобы гарантировать, что метод был вызван во время выполнения теста (для аргументации давайтепросто скажи, что могуt действительно запрашивает состояние объекта после вызова, потому что операция, которую выполняет метод, не легко увидеть эффект).

describe "#foo"
  it "should call 'bar' with appropriate arguments" do
    called_bar = false
    subject.stub(:bar).with("an argument I want") { called_bar = true }
    subject.foo
    expect(called_bar).to be_true
  end
end

Что я хочу знать: есть ли более приятный синтаксис, чем этот? Я скучаю по какой-то классной RSpec-привлекательности, которая сократила бы приведенный выше код до нескольких строк?should_receive Похоже, это должно быть сделано, но, читая дальше, это звучит такне совсем то, что он делает.

Ответы на вопрос(3)

Ваш ответ на вопрос