Commit db6142a8 authored by Mark Chao's avatar Mark Chao

Change MR approval rule api

Now endpoints are under approval_settings scope.
parent 341838ac
......@@ -51,7 +51,7 @@ class ApprovalState
end
def overall_approvals_required
@overall_approvals_required ||= [project.approvals_before_merge, merge_request.approvals_before_merge].max
@overall_approvals_required ||= [project.approvals_before_merge, merge_request.approvals_before_merge || 0].max
end
def approved?
......
......@@ -53,7 +53,7 @@ module API
success: ::EE::API::Entities::MergeRequestApprovalRules,
hidden: true
}
get 'approval_rules' do
get 'approval_settings' do
merge_request = find_merge_request_with_access(params[:merge_request_iid])
present merge_request.approval_state, with: ::EE::API::Entities::MergeRequestApprovalRules, current_user: current_user
......
......@@ -264,6 +264,7 @@ module EE
# Decorates ApprovalState
class MergeRequestApprovalRules < Grape::Entity
expose :wrapped_approval_rules, as: :rules, using: MergeRequestApprovalRule
expose :overall_approvals_required, as: :fallback_approvals_required
end
# Decorates Project
......
......@@ -484,7 +484,7 @@ describe "API::MergeRequestApprovals with approval_rule enabled" do
end
end
describe 'GET :id/merge_requests/:merge_request_iid/approval_rules' do
describe 'GET :id/merge_requests/:merge_request_iid/approval_settings' do
let!(:rule) { create(:approval_merge_request_rule, merge_request: merge_request, approvals_required: 2, name: 'foo') }
it 'retrieves the approval rules details' do
......@@ -492,7 +492,7 @@ describe "API::MergeRequestApprovals with approval_rule enabled" do
merge_request.approvals.create(user: approver)
rule.users << approver
get api("/projects/#{project.id}/merge_requests/#{merge_request.iid}/approval_rules", user)
get api("/projects/#{project.id}/merge_requests/#{merge_request.iid}/approval_settings", user)
expect(response).to have_gitlab_http_status(200)
expect(json_response['rules'].size).to eq(1)
......@@ -509,7 +509,7 @@ describe "API::MergeRequestApprovals with approval_rule enabled" do
private_group = create :group, :private
rule.groups << private_group
get api("/projects/#{project.id}/merge_requests/#{merge_request.iid}/approval_rules", user)
get api("/projects/#{project.id}/merge_requests/#{merge_request.iid}/approval_settings", user)
expect(response).to have_gitlab_http_status(200)
expect(json_response['rules'].size).to eq(1)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment