X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/dc2a2c8ebd1a11e4a64555fda22c6859a51defff..166dc76ae94de4b07b32836e6db938e4040eaf09:/test/controllers/site_controller_test.rb diff --git a/test/controllers/site_controller_test.rb b/test/controllers/site_controller_test.rb index 01c1f3a22..6c66358a0 100644 --- a/test/controllers/site_controller_test.rb +++ b/test/controllers/site_controller_test.rb @@ -91,6 +91,21 @@ class SiteControllerTest < ActionController::TestCase # Test the index page redirects def test_index_redirect + get :index, :node => 123 + assert_redirected_to :controller => :browse, :action => :node, :id => 123 + + get :index, :way => 123 + assert_redirected_to :controller => :browse, :action => :way, :id => 123 + + get :index, :relation => 123 + assert_redirected_to :controller => :browse, :action => :relation, :id => 123 + + get :index, :note => 123 + assert_redirected_to :controller => :browse, :action => :note, :id => 123 + + get :index, :query => "test" + assert_redirected_to :controller => :geocoder, :action => :search, :query => "test" + get :index, :lat => 4, :lon => 5 assert_redirected_to :controller => :site, :action => :index, :anchor => "map=5/4/5" @@ -199,6 +214,55 @@ class SiteControllerTest < ActionController::TestCase assert_template "index" end + # Test the right editor gets used when the URL has an override + def test_edit_with_override + get :edit, { :editor => "id" }, { :user => users(:public_user).id } + assert_response :success + assert_template "edit" + assert_template :partial => "_id", :count => 1 + + get :edit, { :editor => "potlatch2" }, { :user => users(:public_user).id } + assert_response :success + assert_template "edit" + assert_template :partial => "_potlatch2", :count => 1 + + get :edit, { :editor => "potlatch" }, { :user => users(:public_user).id } + assert_response :success + assert_template "edit" + assert_template :partial => "_potlatch", :count => 1 + + get :edit, { :editor => "remote" }, { :user => users(:public_user).id } + assert_response :success + assert_template "index" + end + + # Test the right editor gets used when the browser is IE + def test_edit_with_ie + @request.env["HTTP_USER_AGENT"] = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)" + + get :edit, {}, { :user => users(:public_user).id } + assert_response :success + assert_template "edit" + assert_template :partial => "_potlatch2", :count => 1 + + get :edit, { :editor => "id" }, { :user => users(:public_user).id } + assert_response :success + assert_template "edit" + assert_template :partial => "_potlatch2", :count => 1 + + @request.env["HTTP_USER_AGENT"] = "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko" + + get :edit, {}, { :user => users(:public_user).id } + assert_response :success + assert_template "edit" + assert_template :partial => "_potlatch2", :count => 1 + + get :edit, { :editor => "id" }, { :user => users(:public_user).id } + assert_response :success + assert_template "edit" + assert_template :partial => "_potlatch2", :count => 1 + end + # Test editing a specific node def test_edit_with_node user = users(:public_user)