Commit e24358bc authored by Jean-Philippe Lang's avatar Jean-Philippe Lang

Use /raw/ for url instead of ?format=raw for getting raw repository files (#1901, #4119).

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3074 e93f8b46-1217-0410-a6f0-8f06a7374b81
parent dfd0b8bc
......@@ -224,7 +224,11 @@ ActionController::Routing::Routes.draw do |map|
repository_views.connect 'projects/:id/repository/revisions/:rev', :action => 'revision'
repository_views.connect 'projects/:id/repository/revisions/:rev/diff', :action => 'diff'
repository_views.connect 'projects/:id/repository/revisions/:rev/diff.:format', :action => 'diff'
repository_views.connect 'projects/:id/repository/revisions/:rev/raw/*path', :action => 'entry', :format => 'raw', :requirements => { :rev => /[a-z0-9\.\-_]+/ }
repository_views.connect 'projects/:id/repository/revisions/:rev/:action/*path', :requirements => { :rev => /[a-z0-9\.\-_]+/ }
repository_views.connect 'projects/:id/repository/raw/*path', :action => 'entry', :format => 'raw'
# TODO: why the following route is required?
repository_views.connect 'projects/:id/repository/entry/*path', :action => 'entry'
repository_views.connect 'projects/:id/repository/:action/*path'
end
......
......@@ -144,6 +144,20 @@ class RepositoriesControllerTest < ActionController::TestCase
:controller => 'repositories', :action => 'entry', :id => 'restmine', :path => %w[path to file.c], :rev => '2'
)
end
def test_raw_routing
assert_routing(
{:method => :get, :path => '/projects/restmine/repository/raw/path/to/file.c'},
:controller => 'repositories', :action => 'entry', :id => 'restmine', :path => %w[path to file.c], :format => 'raw'
)
end
def test_raw_routing_with_revision
assert_routing(
{:method => :get, :path => '/projects/restmine/repository/revisions/2/raw/path/to/file.c'},
:controller => 'repositories', :action => 'entry', :id => 'restmine', :path => %w[path to file.c], :format => 'raw', :rev => '2'
)
end
def test_annotate_routing
assert_routing(
......
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