On 12 October 2011 12:09, nathanvda <nathan...@gmail.com> wrote: > Nobody? > > On Oct 11, 1:05 pm, nathanvda <nathan...@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...@rubyforge.orghttp:// > rubyforge.org/mailman/listinfo/rspec-users > _______________________________________________ > rspec-users mailing list > rspec-users@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
_______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users