diff options
author | Felipe Artur <felipefac@gmail.com> | 2016-04-05 11:51:19 -0300 |
---|---|---|
committer | Felipe Artur <felipefac@gmail.com> | 2016-04-06 11:41:38 -0300 |
commit | ad11d5f5e5a86e3cbf0db480c57a5fd937183081 (patch) | |
tree | 6013230e43010fadd172b234132da27acaa35436 | |
parent | 32c7e42b612bdda43eeef55d8c8afdc9eeb33785 (diff) | |
download | gitlab-ce-issue_14012.tar.gz |
Implement review suggestionsissue_14012
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | app/controllers/groups/milestones_controller.rb | 8 | ||||
-rw-r--r-- | app/services/milestones/create_service.rb | 2 | ||||
-rw-r--r-- | spec/controllers/groups/milestones_controller_spec.rb | 2 |
4 files changed, 6 insertions, 7 deletions
diff --git a/CHANGELOG b/CHANGELOG index e1b6b32cff3..3c06758d522 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -21,6 +21,7 @@ v 8.7.0 (unreleased) - Remove "Congratulations!" tweet button on newly-created project. (Connor Shea) - Improved UX of the navigation sidebar - Build status notifications + - Better errors handling when creating milestones inside groups v 8.6.4 - Don't attempt to fetch any tags from a forked repo (Stan Hu) diff --git a/app/controllers/groups/milestones_controller.rb b/app/controllers/groups/milestones_controller.rb index fcf19e8066a..9d5a28e8d4d 100644 --- a/app/controllers/groups/milestones_controller.rb +++ b/app/controllers/groups/milestones_controller.rb @@ -21,7 +21,7 @@ class Groups::MilestonesController < Groups::ApplicationController project_ids = params[:milestone][:project_ids].reject(&:blank?) title = milestone_params[:title] - if create_milestones(project_ids, title) + if create_milestones(project_ids) redirect_to milestone_path(title) else render_new_with_error(project_ids.empty?) @@ -41,7 +41,7 @@ class Groups::MilestonesController < Groups::ApplicationController private - def create_milestones(project_ids, title) + def create_milestones(project_ids) return false unless project_ids.present? ActiveRecord::Base.transaction do @@ -51,9 +51,7 @@ class Groups::MilestonesController < Groups::ApplicationController end true - - rescue => e - + rescue ActiveRecord::ActiveRecordError => e flash.now[:alert] = "An error occurred while creating the milestone: #{e.message}" false end diff --git a/app/services/milestones/create_service.rb b/app/services/milestones/create_service.rb index b8e08c9f1eb..3b90399af64 100644 --- a/app/services/milestones/create_service.rb +++ b/app/services/milestones/create_service.rb @@ -3,7 +3,7 @@ module Milestones def execute milestone = project.milestones.new(params) - if milestone.save + if milestone.save! event_service.open_milestone(milestone, current_user) end diff --git a/spec/controllers/groups/milestones_controller_spec.rb b/spec/controllers/groups/milestones_controller_spec.rb index 9c7b5c74b8e..b0793cb1655 100644 --- a/spec/controllers/groups/milestones_controller_spec.rb +++ b/spec/controllers/groups/milestones_controller_spec.rb @@ -27,7 +27,7 @@ describe Groups::MilestonesController do it "redirects to new when there are no project ids" do post :create, group_id: group.id, milestone: { title: title, project_ids: [""] } expect(response).to render_template :new - expect(assigns(:milestone).errors).to_not be_nil + expect(assigns(:milestone).errors).not_to be_nil end end end |