Почти всеки спецификационен файл, на който се натъквам, в крайна сметка пиша неща като:
before :each do
@cimg = Factory.build :cimg_valid
@cimg.stub(:validate_img).and_return true
@cimg.stub(:validate_img_url).and_return true
@cimg.stub(:save_images).and_return true
@cimg.stub(:process_image).and_return true
@cimg.stub(:img).and_return true
end
Искам да кажа, че моделът, който получавам от Factory.build, е напълно валиден. Но ако не затрия тези неща, това записва нещата във файловата система и валидира неща, които не тествам...
Какво имам предвид, мисля, че би било по-чисто да се направи нещо подобно:
before :each do
@cimg = Factory.build :cimg_for_testing_tags
end
Ако унищожаването във фабриката изобщо е възможно.
Какъв е правилният начин за зарязване на модела?