diff options
author | Sean McGivern <sean@mcgivern.me.uk> | 2018-01-15 13:11:22 +0000 |
---|---|---|
committer | Robert Speicher <rspeicher@gmail.com> | 2018-01-15 13:37:34 -0600 |
commit | 09b07d8420e1102ac3fcfef1395f70439dcc6c76 (patch) | |
tree | d268c6d807d800730bfc55173e20c6fff59e3f18 | |
parent | f57dac49b5123199eda449e292eb9370dce003da (diff) | |
download | gitlab-ce-10-4-stable-prepare-rc6.tar.gz |
Merge branch '42025-fix-issue-api' into 'master'10-4-stable-prepare-rc6
[API] Fix creating issue when assignee_id is empty
See merge request gitlab-org/gitlab-ce!16458
-rw-r--r-- | changelogs/unreleased/42025-fix-issue-api.yml | 5 | ||||
-rw-r--r-- | lib/api/helpers/common_helpers.rb | 6 | ||||
-rw-r--r-- | spec/requests/api/issues_spec.rb | 9 |
3 files changed, 18 insertions, 2 deletions
diff --git a/changelogs/unreleased/42025-fix-issue-api.yml b/changelogs/unreleased/42025-fix-issue-api.yml new file mode 100644 index 00000000000..abb83bb2fad --- /dev/null +++ b/changelogs/unreleased/42025-fix-issue-api.yml @@ -0,0 +1,5 @@ +--- +title: "[API] Fix creating issue when assignee_id is empty" +merge_request: +author: +type: fixed diff --git a/lib/api/helpers/common_helpers.rb b/lib/api/helpers/common_helpers.rb index 322624c6092..9993caa5249 100644 --- a/lib/api/helpers/common_helpers.rb +++ b/lib/api/helpers/common_helpers.rb @@ -3,8 +3,10 @@ module API module CommonHelpers def convert_parameters_from_legacy_format(params) params.tap do |params| - if params[:assignee_id].present? - params[:assignee_ids] = [params.delete(:assignee_id)] + assignee_id = params.delete(:assignee_id) + + if assignee_id.present? + params[:assignee_ids] = [assignee_id] end end end diff --git a/spec/requests/api/issues_spec.rb b/spec/requests/api/issues_spec.rb index 320217f2032..43218755f4f 100644 --- a/spec/requests/api/issues_spec.rb +++ b/spec/requests/api/issues_spec.rb @@ -847,6 +847,15 @@ describe API::Issues, :mailer do expect(json_response['assignee']['name']).to eq(user2.name) expect(json_response['assignees'].first['name']).to eq(user2.name) end + + it 'creates a new project issue when assignee_id is empty' do + post api("/projects/#{project.id}/issues", user), + title: 'new issue', assignee_id: '' + + expect(response).to have_gitlab_http_status(201) + expect(json_response['title']).to eq('new issue') + expect(json_response['assignee']).to be_nil + end end context 'single assignee restrictions' do |