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-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to