On Tue, Jul 12, 2011 at 16:03, Derek Prior <derekpr...@gmail.com> wrote:

> I'm a newcomer to the list. Appologies if this has been discussed before,
> but all I could find with regards to specing scopes relates to those that
> filter records or apply sorting. What's the best way to spec a scope that
> uses the includes method? For instance:
> class Location < ActiveRecord.Base
>   belongs_to: holiday_schedule
>   scope: with_holiday_schedule, includes(:holiday_schedule)
> end
> describe Location do
>   describe Location, "::with_holiday_schedule"
>     it "includes holiday schedule information to avoid N+1 queries" do
>       pending "a good way to check this..."
>     end
>   end
> end
> I've seen some references to hooking into ActiveSupport::Notifications for
> ActiveRecord SQL and then counting the SQL statements, though the code I've
> seen to do this is far from pretty. Does anyone have a better idea?

>From what I understand, this is purely a performance enhancement, so
I'd expect only to check it with performance tests. In this case, I
would think that a timed test would do the job. It won't be fast, but
it'll work, and you won't be tempted to use it as a behavior test,
since this seems like an issue of implementation and not behavior.
-- 
J. B. (Joe) Rainsberger :: http://www.jbrains.ca ::
http://blog.thecodewhisperer.com
Author, JUnit Recipes
Free Your Mind to Do Great Work :: http://www.freeyourmind-dogreatwork.com
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to