From d663b8de246a4307a283b464ab4b5344463d30c3 Mon Sep 17 00:00:00 2001 From: Joren De Groof Date: Fri, 31 Mar 2017 11:38:40 +0200 Subject: Fixes milestone/merge_request API endpoint to really scope the results The MergeRequestsFinder uses the milestone_title instead of the milestone_id --- app/finders/issues_finder.rb | 2 +- app/finders/merge_requests_finder.rb | 2 +- changelogs/unreleased/bug-api_milestone_merge_requests_scope.yml | 4 ++++ lib/api/milestones.rb | 2 +- spec/requests/api/milestones_spec.rb | 2 ++ 5 files changed, 9 insertions(+), 3 deletions(-) create mode 100644 changelogs/unreleased/bug-api_milestone_merge_requests_scope.yml diff --git a/app/finders/issues_finder.rb b/app/finders/issues_finder.rb index 08713272947..76715e5970d 100644 --- a/app/finders/issues_finder.rb +++ b/app/finders/issues_finder.rb @@ -9,7 +9,7 @@ # state: 'open' or 'closed' or 'all' # group_id: integer # project_id: integer -# milestone_id: integer +# milestone_title: string # assignee_id: integer # search: string # label_name: string diff --git a/app/finders/merge_requests_finder.rb b/app/finders/merge_requests_finder.rb index 1eec45d9cb5..42f0ebd774c 100644 --- a/app/finders/merge_requests_finder.rb +++ b/app/finders/merge_requests_finder.rb @@ -9,7 +9,7 @@ # state: 'open' or 'closed' or 'all' # group_id: integer # project_id: integer -# milestone_id: integer +# milestone_title: string # assignee_id: integer # search: string # label_name: string diff --git a/changelogs/unreleased/bug-api_milestone_merge_requests_scope.yml b/changelogs/unreleased/bug-api_milestone_merge_requests_scope.yml new file mode 100644 index 00000000000..a1e1c29165e --- /dev/null +++ b/changelogs/unreleased/bug-api_milestone_merge_requests_scope.yml @@ -0,0 +1,4 @@ +--- +title: Fixes milestone/merge_requests endpoint to actually scope the result +merge_request: +author: Joren De Groof diff --git a/lib/api/milestones.rb b/lib/api/milestones.rb index e7ab82f08db..a3ea619a2fb 100644 --- a/lib/api/milestones.rb +++ b/lib/api/milestones.rb @@ -139,7 +139,7 @@ module API finder_params = { project_id: user_project.id, - milestone_id: milestone.id, + milestone_title: milestone.title, sort: 'position_asc' } diff --git a/spec/requests/api/milestones_spec.rb b/spec/requests/api/milestones_spec.rb index 7fb728fed6f..598968aff70 100644 --- a/spec/requests/api/milestones_spec.rb +++ b/spec/requests/api/milestones_spec.rb @@ -306,6 +306,8 @@ describe API::Milestones, api: true do end it 'returns project merge_requests for a particular milestone' do + # eager-load another_merge_request + another_merge_request get api("/projects/#{project.id}/milestones/#{milestone.id}/merge_requests", user) expect(response).to have_http_status(200) -- cgit v1.2.1