X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/e8f1953d7de154fefbb781c9f8a9260be9661666..b7887b049fa1aae17f8b7020fe43542fffde1260:/test/integration/short_links_test.rb diff --git a/test/integration/short_links_test.rb b/test/integration/short_links_test.rb index ffa5d5394..8f949fdae 100644 --- a/test/integration/short_links_test.rb +++ b/test/integration/short_links_test.rb @@ -1,35 +1,38 @@ -require File.dirname(__FILE__) + '/../test_helper' +require "test_helper" -class ShortLinksTest < ActionController::IntegrationTest +class ShortLinksTest < ActionDispatch::IntegrationTest ## # test the short link with various parameters and ensure they're # kept in the redirect. def test_short_link_params - assert_short_link_redirect('1N8H@P_5W') - assert_short_link_redirect(ShortLink::encode(-0.107846, 51.50771, 18)) + assert_short_link_redirect("1N8H@P_5W") + assert_short_link_redirect(ShortLink.encode(-0.107846, 51.50771, 18)) end + private + ## # utility method to test short links def assert_short_link_redirect(short_link) - lon, lat, zoom = ShortLink::decode(short_link) + lon, lat, zoom = ShortLink.decode(short_link) + anchor = "map=#{zoom}/#{lat}/#{lon}" # test without marker - get '/go/' + short_link - assert_redirected_to :controller => 'site', :action => 'index', :lat => lat.to_s, :lon => lon.to_s, :zoom => zoom.to_s + get "/go/#{short_link}" + assert_redirected_to :controller => "site", :action => "index", :anchor => anchor # test with marker - get '/go/' + short_link + "?m" - assert_redirected_to :controller => 'site', :action => 'index', :mlat => lat.to_s, :mlon => lon.to_s, :zoom => zoom.to_s + get "/go/#{short_link}?m" + assert_redirected_to :controller => "site", :action => "index", :mlat => lat.to_s, :mlon => lon.to_s, :anchor => anchor # test with layers and a marker - get '/go/' + short_link + "?m&layers=B000FTF" - assert_redirected_to :controller => 'site', :action => 'index', :mlat => lat.to_s, :mlon => lon.to_s, :zoom => zoom.to_s, :layers => "B000FTF" - get '/go/' + short_link + "?layers=B000FTF&m" - assert_redirected_to :controller => 'site', :action => 'index', :mlat => lat.to_s, :mlon => lon.to_s, :zoom => zoom.to_s, :layers => "B000FTF" + get "/go/#{short_link}?m&layers=B000FTF" + assert_redirected_to :controller => "site", :action => "index", :mlat => lat.to_s, :mlon => lon.to_s, :anchor => "#{anchor}&layers=B000FTF" + get "/go/#{short_link}?layers=B000FTF&m" + assert_redirected_to :controller => "site", :action => "index", :mlat => lat.to_s, :mlon => lon.to_s, :anchor => "#{anchor}&layers=B000FTF" # test with some random query parameters we haven't even implemented yet - get '/go/' + short_link + "?foobar=yes" - assert_redirected_to :controller => 'site', :action => 'index', :lat => lat.to_s, :lon => lon.to_s, :zoom => zoom.to_s, :foobar => "yes" + get "/go/#{short_link}?foobar=yes" + assert_redirected_to :controller => "site", :action => "index", :foobar => "yes", :anchor => anchor end end