# Tracker must be set before custom field values
@issue.tracker ||= @project.trackers.find((params[:issue] && params[:issue][:tracker_id]) || params[:tracker_id] || :first)
if @issue.tracker.nil?
- flash.now[:error] = 'No tracker is associated to this project. Please check the Project settings.'
- render :nothing => true, :layout => true
+ render_error 'No tracker is associated to this project. Please check the Project settings.'
return
end
if params[:issue].is_a?(Hash)
default_status = IssueStatus.default
unless default_status
- flash.now[:error] = 'No default issue status is defined. Please check your configuration (Go to "Administration -> Issue statuses").'
- render :nothing => true, :layout => true
+ render_error 'No default issue status is defined. Please check your configuration (Go to "Administration -> Issue statuses").'
return
end
@issue.status = default_status
assert_equal Project.find(1).trackers.first, issue.tracker
end
+ def test_get_new_with_no_default_status_should_display_an_error
+ @request.session[:user_id] = 2
+ IssueStatus.delete_all
+
+ get :new, :project_id => 1
+ assert_response 500
+ assert_not_nil flash[:error]
+ assert_tag :tag => 'div', :attributes => { :class => /error/ },
+ :content => /No default issue/
+ end
+
+ def test_get_new_with_no_tracker_should_display_an_error
+ @request.session[:user_id] = 2
+ Tracker.delete_all
+
+ get :new, :project_id => 1
+ assert_response 500
+ assert_not_nil flash[:error]
+ assert_tag :tag => 'div', :attributes => { :class => /error/ },
+ :content => /No tracker/
+ end
+
def test_update_new_form
@request.session[:user_id] = 2
xhr :post, :new, :project_id => 1,