[rspec-users] Attempting to speed up my controller specs: using before all fails?

Srushti srshti at gmail.com
Wed Oct 12 17:16:31 EDT 2011


On 12 October 2011 12:09, nathanvda <nathanvda at gmail.com> wrote:

> Nobody?
>
> On Oct 11, 1:05 pm, nathanvda <nathan... at gmail.com> wrote:
> > I have a simple controller test, containing a.o. the following code:
> >
> >     context "POST :create" do
> >       before (:each) do
> >         post :create, :user_id => @user.id,
> >              :account => { .. some data ... }
> >       end
> >       it { response.status.should == 201 }
> >       it { response.location.should be_present }
> >     end
> >
> > Now I thought of a very simple way to speed up this test, and to use a
> > `before(:all)` instead of a `before(:each)`. In that case the POST
> > would only be done once.
> >
> > So i wrote:
> >
> >     context "POST :create" do
> >       before (:all) do
> >         post :create, :user_id => @user.id,
> >              :account => { .. some data ... }
> >       end
> >       it { response.status.should == 201 }
> >       it { response.location.should be_present }
> >     end
> >
> > But then I get the following errors:
> >
> >      RuntimeError:
> >        @routes is nil: make sure you set it in your test's setup
> > method.
> >
> > Is this by design? Is there a way to circumvent it?
> > _______________________________________________
> > rspec-users mailing list
> > rspec-us... at rubyforge.orghttp://
> rubyforge.org/mailman/listinfo/rspec-users
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
>

I'm afraid I can't help with your specific situation, except to say I've
faced weird issues like this with "before(:all)" in the past, and have
generally tried to stay away from it these days.

Also, the largest amount of time is generally involved in actually loading
up rails itself. Can you confirm that there's a significant amount of time
taken to execute your controller action?

Srushti
http://c42.in
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/rspec-users/attachments/20111012/728e91e8/attachment.html>


More information about the rspec-users mailing list