メソッド呼び出しチェーンで、メソッドの 1 つが特定のパラメーターを取得するかどうかをテストしようとしています。たとえば、以下のコードでは、 MyModel は method のパラメーター 0 を受け取る必要がありますoffset
。残念ながら、以下のコードは機能しません。should_receive と stub_chain を混在させることはできないようです。どうすればこれを解決できますか?RSpec2を使用しています。
MyModel.should_receive(:offset).with(0).stub_chain(:tag_counts, :offset, :limit, :order).and_return([]) # does not work!
私がテストしようとしているコード:
tags = taggable.tag_counts.offset(page-1).limit(per_page).where(*where_clause).order("count DESC")
アップデート
RSpec の Google グループにも質問を投稿し、David (RSpec の作成者) が回答しました (David に感謝): http://groups.google.com/group/rspec/browse_thread/thread/6b8394836d2390b0?hl=en