У меня есть простой тест контроллера, содержащий a.o. следующий код:
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
Теперь я придумал очень простой способ ускорить этот тест и использовать before(:all)
вместо before(:each)
. В этом случае пост будет сделан только один раз.
Итак, я написал:
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
Но затем я получаю следующие ошибки:
RuntimeError:
@routes is nil: make sure you set it in your test's setup method.
Это по дизайну? Есть ли способ обойти это?