私は次のテストを行っています:
describe "Exporter#get_method" do
before(:each) do
exporter.should_receive(:get_method).at_least(:once).and_call_original
end
it "should get the next terminal value" do
exporter.send(:get_method).should == :split
end
it "should call descend if the current value is a hash" do
exporter.should_receive(:descend).once
2.times { exporter.send(:get_method) }
end
it "should call ascend if at the end of an array and there is a prologue" do
exporter.should_receive(:ascend).once
3.times { exporter.send(:get_method) }
end
end
いくつかのbinding.pry呼び出しで、昇順と降順が呼び出されていることを確認できます。ただし、RSpecはそれを認識していません。私はどこが間違っているのですか。テストされているメソッドが正しい状況で他のメソッドを呼び出すことを確認したいと思います。これを行う別の方法はありますか?