Я пытаюсь проверить, если в цепочке вызова метода один из методов получает определенный параметр. В приведенном ниже коде, например, MyModel должен получить параметр 0 для метода offset
. К сожалению, приведенный ниже код не работает. Кажется, что нельзя смешивать should_receive и stub_chain. Как я могу это решить? Я использую RSpec 2.
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")
Update
Я также разместил вопрос о RSpec Google Group: Дэвид (создатель RSpec) ответил на это (спасибо Дэвиду): http://groups.google.com/group/rspec/browse_thread/thread/6b8394836d2390b0?hl=en