Я использую factory_girl + rspec в Rails 2-3-stable:
Тест:
context "test" do
before(:each) do
@profile.stub!(:lastfm_enabled?).and_return(true)
end
it "should be able to scrobble if true" do
@profile.update_attribute(:lastfm_scrobbling, true)
@profile.lastfm_scrobbling_enabled?.should be_true
end
end
Код:
def lastfm_scrobbling_enabled?
lastfm_enabled? && lastfm_scrobbling
end
Этот простой тест не пройден, плюс реальный lastfm_enabled? метод вызывается по-настоящему.
@ профиль не макет, он создан с помощью factory_girl.
Сначала я также указал атрибут lastfm_scrobbling, но думал о том, как работает factory_girl, и предпочел установить его напрямую.
Есть идеи, почему?