Add legacy routes for modified project path
For settings, branches and tags Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
This commit is contained in:
parent
70decdc2ac
commit
6d3f5a3341
|
@ -496,4 +496,18 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
|
|||
end
|
||||
end
|
||||
end
|
||||
|
||||
# Legacy routes.
|
||||
# Introduced in 12.0.
|
||||
# Should be removed after 12.1
|
||||
scope(path: '*namespace_id',
|
||||
as: :namespace,
|
||||
namespace_id: Gitlab::PathRegex.full_namespace_route_regex) do
|
||||
scope(path: ':project_id',
|
||||
constraints: { project_id: Gitlab::PathRegex.project_route_regex },
|
||||
module: :projects,
|
||||
as: :project) do
|
||||
Gitlab::Routing.redirect_legacy_paths(self, :settings, :branches, :tags)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -212,6 +212,8 @@ describe 'project routing' do
|
|||
expect(delete('/gitlab/gitlabhq/-/branches/feature%2B45/foo/bar/baz')).to route_to('projects/branches#destroy', namespace_id: 'gitlab', project_id: 'gitlabhq', id: 'feature+45/foo/bar/baz')
|
||||
expect(delete('/gitlab/gitlabhq/-/branches/feature@45/foo/bar/baz')).to route_to('projects/branches#destroy', namespace_id: 'gitlab', project_id: 'gitlabhq', id: 'feature@45/foo/bar/baz')
|
||||
end
|
||||
|
||||
it_behaves_like 'redirecting a legacy project path', "/gitlab/gitlabhq/branches", "/gitlab/gitlabhq/-/branches"
|
||||
end
|
||||
|
||||
describe Projects::TagsController, 'routing' do
|
||||
|
@ -597,6 +599,8 @@ describe 'project routing' do
|
|||
expect(get('/gitlab/gitlabhq/-/network/ends-with.json')).to route_to('projects/network#show', namespace_id: 'gitlab', project_id: 'gitlabhq', id: 'ends-with.json')
|
||||
expect(get('/gitlab/gitlabhq/-/network/master?format=json')).to route_to('projects/network#show', namespace_id: 'gitlab', project_id: 'gitlabhq', id: 'master', format: 'json')
|
||||
end
|
||||
|
||||
it_behaves_like 'redirecting a legacy project path', "/gitlab/gitlabhq/network/master", "/gitlab/gitlabhq/-/network/master"
|
||||
end
|
||||
|
||||
describe Projects::GraphsController, 'routing' do
|
||||
|
@ -662,4 +666,12 @@ describe 'project routing' do
|
|||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe Projects::Settings::RepositoryController, 'routing' do
|
||||
it 'to #show' do
|
||||
expect(get('/gitlab/gitlabhq/-/settings/repository')).to route_to('projects/settings/repository#show', namespace_id: 'gitlab', project_id: 'gitlabhq')
|
||||
end
|
||||
|
||||
it_behaves_like 'redirecting a legacy project path', "/gitlab/gitlabhq/settings/repository", "/gitlab/gitlabhq/-/settings/repository"
|
||||
end
|
||||
end
|
||||
|
|
|
@ -11,3 +11,11 @@ shared_examples 'redirecting a legacy path' do |source, target|
|
|||
expect(get(source)).not_to redirect_to(target)
|
||||
end
|
||||
end
|
||||
|
||||
shared_examples 'redirecting a legacy project path' do |source, target|
|
||||
include RSpec::Rails::RequestExampleGroup
|
||||
|
||||
it "redirects #{source} to #{target}" do
|
||||
expect(get(source)).to redirect_to(target)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue