Я новичок в тестировании веб-приложений Rails и RSpec. Я работаю с устаревшим кодом и мне нужно добавить тесты. Итак, каков наилучший способ тестирования искателей и именованных областей с помощью RSpec?
Я нахожу в Google несколько подходов, но они не идеальны.
Например:
http://paulsturgess.co.uk/articles/show/93-using-rspec-to-test-a-named_scope-in-ruby-on-rails
it "excludes users that are not active" do
@user = Factory(:user, :active => false)
User.active.should_not include(@user)
end
или
http://h1labs.com/notebook/2008/8/21/testing-named-scope-with-rspec
it "should have a published named scope that returns ..." do
Post.published.proxy_options.should == {:conditions => {:published => true}}
end
Я считаю наилучший подход (IMHO) в «Предписаниях по испытанию рельсов»:
should_match_find_method :active_only { :active == true }
где should_match_find_method
пользовательский вспомогательный метод