Merge branch 'sh-fix-related-merge-requests-path' into 'master'
Use a path for the related merge requests endpoint Closes #61280 See merge request gitlab-org/gitlab-ce!28171
This commit is contained in:
commit
ed823c356f
|
@ -79,7 +79,7 @@
|
||||||
|
|
||||||
= render_if_exists 'projects/issues/related_issues'
|
= render_if_exists 'projects/issues/related_issues'
|
||||||
|
|
||||||
#js-related-merge-requests{ data: { endpoint: expose_url(api_v4_projects_issues_related_merge_requests_path(id: @project.id, issue_iid: @issue.iid)), project_namespace: @project.namespace.path, project_path: @project.path } }
|
#js-related-merge-requests{ data: { endpoint: expose_path(api_v4_projects_issues_related_merge_requests_path(id: @project.id, issue_iid: @issue.iid)), project_namespace: @project.namespace.path, project_path: @project.path } }
|
||||||
|
|
||||||
- if can?(current_user, :download_code, @project)
|
- if can?(current_user, :download_code, @project)
|
||||||
#related-branches{ data: { url: related_branches_project_issue_path(@project, @issue) } }
|
#related-branches{ data: { url: related_branches_project_issue_path(@project, @issue) } }
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
title: Use a path for the related merge requests endpoint
|
||||||
|
merge_request: 28171
|
||||||
|
author:
|
||||||
|
type: fixed
|
|
@ -13,6 +13,10 @@ module API
|
||||||
available?(:merge_requests, project, options[:current_user])
|
available?(:merge_requests, project, options[:current_user])
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def expose_path(path)
|
||||||
|
Gitlab::Utils.append_path(Gitlab.config.gitlab.relative_url_root, path)
|
||||||
|
end
|
||||||
|
|
||||||
def expose_url(path)
|
def expose_url(path)
|
||||||
url_options = Gitlab::Application.routes.default_url_options
|
url_options = Gitlab::Application.routes.default_url_options
|
||||||
protocol, host, port, script_name = url_options.values_at(:protocol, :host, :port, :script_name)
|
protocol, host, port, script_name = url_options.values_at(:protocol, :host, :port, :script_name)
|
||||||
|
|
|
@ -5,6 +5,40 @@ describe API::Helpers::RelatedResourcesHelpers do
|
||||||
Class.new.include(described_class).new
|
Class.new.include(described_class).new
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe '#expose_path' do
|
||||||
|
let(:path) { '/api/v4/awesome_endpoint' }
|
||||||
|
|
||||||
|
context 'empty relative URL root' do
|
||||||
|
before do
|
||||||
|
stub_config_setting(relative_url_root: '')
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'returns the existing path' do
|
||||||
|
expect(helpers.expose_path(path)).to eq(path)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context 'slash relative URL root' do
|
||||||
|
before do
|
||||||
|
stub_config_setting(relative_url_root: '/')
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'returns the existing path' do
|
||||||
|
expect(helpers.expose_path(path)).to eq(path)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context 'with relative URL root' do
|
||||||
|
before do
|
||||||
|
stub_config_setting(relative_url_root: '/gitlab/root')
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'returns the existing path' do
|
||||||
|
expect(helpers.expose_path(path)).to eq("/gitlab/root" + path)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
describe '#expose_url' do
|
describe '#expose_url' do
|
||||||
let(:path) { '/api/v4/awesome_endpoint' }
|
let(:path) { '/api/v4/awesome_endpoint' }
|
||||||
subject(:url) { helpers.expose_url(path) }
|
subject(:url) { helpers.expose_url(path) }
|
||||||
|
|
Loading…
Reference in New Issue