diff --git a/lib/gollum/frontend/app.rb b/lib/gollum/frontend/app.rb index 28a804d7..30895f28 100644 --- a/lib/gollum/frontend/app.rb +++ b/lib/gollum/frontend/app.rb @@ -87,7 +87,7 @@ module Precious end get '/' do - show_page_or_file('Home') + redirect File.join(settings.wiki_options[:base_path].to_s, 'Home') end # path is set to name if path is nil. diff --git a/test/test_app.rb b/test/test_app.rb index dc273926..8a609ef7 100644 --- a/test/test_app.rb +++ b/test/test_app.rb @@ -249,6 +249,20 @@ context "Frontend" do assert_equal page1.version.sha, page2.version.sha end + test "redirects from 'base_path' or 'base_path/' to 'base_path/Home'" do + Precious::App.set(:wiki_options, {}) + get "/" + assert_match "http://example.org/Home", last_response.headers['Location'] + + Precious::App.set(:wiki_options, { :base_path => '/wiki' }) + get "/" + assert_match "http://example.org/wiki/Home", last_response.headers['Location'] + + Precious::App.set(:wiki_options, { :base_path => '/wiki/' }) + get "/" + assert_match "http://example.org/wiki/Home", last_response.headers['Location'] + end + def app Precious::App end