summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémy Coutable <remy@rymai.me>2016-12-23 09:12:40 +0000
committerRémy Coutable <remy@rymai.me>2016-12-23 09:12:40 +0000
commitf9e59516a259215fb75a4ac85b1814ca04ec4e8f (patch)
treeb5419b2cc1dfa5695bc1ec50915895dd33f236b2
parent358a2d8b0dac1ca7d82c10103d2dca4b73b412ae (diff)
parent5961d1429208d69261a23811baebab8111902591 (diff)
downloadgitlab-ce-f9e59516a259215fb75a4ac85b1814ca04ec4e8f.tar.gz
Merge branch 'fixes-issues-api-reopen' into 'master'
Fix state_event parameter to reopen an issue Closes #25958 See merge request !8246
-rw-r--r--lib/api/issues.rb3
-rw-r--r--spec/requests/api/issues_spec.rb7
2 files changed, 8 insertions, 2 deletions
diff --git a/lib/api/issues.rb b/lib/api/issues.rb
index c9124649cbb..91f65882f47 100644
--- a/lib/api/issues.rb
+++ b/lib/api/issues.rb
@@ -37,8 +37,6 @@ module API
optional :labels, type: String, desc: 'Comma-separated list of label names'
optional :due_date, type: String, desc: 'Date time string in the format YEAR-MONTH-DAY'
optional :confidential, type: Boolean, desc: 'Boolean parameter if the issue should be confidential'
- optional :state_event, type: String, values: %w[open close],
- desc: 'State of the issue'
end
end
@@ -172,6 +170,7 @@ module API
optional :title, type: String, desc: 'The title of an issue'
optional :updated_at, type: DateTime,
desc: 'Date time when the issue was updated. Available only for admins and project owners.'
+ optional :state_event, type: String, values: %w[reopen close], desc: 'State of the issue'
use :issue_params
at_least_one_of :title, :description, :assignee_id, :milestone_id,
:labels, :created_at, :due_date, :confidential, :state_event
diff --git a/spec/requests/api/issues_spec.rb b/spec/requests/api/issues_spec.rb
index 5c80dd98dc7..a786dc9edb3 100644
--- a/spec/requests/api/issues_spec.rb
+++ b/spec/requests/api/issues_spec.rb
@@ -932,6 +932,13 @@ describe API::Issues, api: true do
expect(json_response['state']).to eq "closed"
end
+ it 'reopens a project isssue' do
+ put api("/projects/#{project.id}/issues/#{closed_issue.id}", user), state_event: 'reopen'
+
+ expect(response).to have_http_status(200)
+ expect(json_response['state']).to eq 'reopened'
+ end
+
context 'when an admin or owner makes the request' do
it 'accepts the update date to be set' do
update_time = 2.weeks.ago