ブロックを受け取り、それを別のメソッドに委譲するメソッドがあります。本当に簡単です:
def self.build(&block)
Builder.build(&block)
end
受信したブロックが新しいメソッドに渡されたことを RSpec (v3) でテストしてほしい。私のテストは現在次のようになっています:
describe ".build" do
it "delegates to Builder" do
block = -> {}
expect(App::Builder).to receive(:build).with(&block)
described_class.build(&block)
end
end
しかし、RSpec は ArgumentError: `with` には少なくとも 1 つの引数が必要です。「no_args」マッチャーを使用して、引数を受け取らないという期待を設定します。特定のブロックでのメソッド呼び出しを期待するよう RSpec に依頼する方法はありますか?