次のコードは期待どおりに機能します。
Object.any_instance.should_receive(:subscribe)
しかし、新しいrspec期待値を使用する場合は機能しません。
expect(Object.any_instance).to receive(:subscribe)
エラーは次のとおりです。
expected: 1 time with any arguments
received: 0 times with any arguments
Expect()を使用してこの作業を行うにはどうすればよいですか?
expect_any_instance_of
の特殊なケースを処理するany_instance
と呼ばれるあまり文書化されていないメソッドがあります。以下を使用する必要があります。
expect_any_instance_of(Object).to receive(:subscribe)
Google expect_any_instance_of
で詳細をご覧ください。