Merge remote-tracking branch 'upstream/master' into routing
[rails.git] / test / integration / redirect_test.rb
index 604cebd76db5295d20b2ee898ef4b9f8461d1086..a4ff2eb7ec0cfa24c5dbfc0091ffc266b4a984a4 100644 (file)
@@ -1,6 +1,26 @@
-require File.dirname(__FILE__) + '/../test_helper'
+require 'test_helper'
 
 class RedirectTest  < ActionDispatch::IntegrationTest
+  def test_legacy_redirects
+    get "/index.html"
+    assert_response :redirect
+    assert_redirected_to "/"
+
+    get "/create-account.html"
+    assert_response :redirect
+    assert_redirected_to "/user/new"
+
+    get "/forgot-password.html"
+    assert_response :redirect
+    assert_redirected_to "/user/forgot-password"
+  end
+
+  def test_search_redirects
+    get "/?query=test"
+    assert_response :redirect
+    assert_redirected_to "/search?query=test"
+  end
+
   def test_history_redirects
     get "/browse"
     assert_response :redirect
@@ -9,11 +29,79 @@ class RedirectTest  < ActionDispatch::IntegrationTest
     get "/browse/changesets"
     assert_response :redirect
     assert_redirected_to "/history"
+
+    get "/browse/changesets?bbox=-80.54%2C40.358%2C-79.526%2C40.779"
+    assert_response :redirect
+    assert_redirected_to "/history?bbox=-80.54%2C40.358%2C-79.526%2C40.779"
+
+    get "/browse/friends"
+    assert_response :redirect
+    assert_redirected_to "/history/friends"
+
+    get "/browse/nearby"
+    assert_response :redirect
+    assert_redirected_to "/history/nearby"
+
+    get "/user/name/edits"
+    assert_response :redirect
+    assert_redirected_to "/user/name/history"
+
+    get "/user/name%20with%20spaces/edits"
+    assert_response :redirect
+    assert_redirected_to "/user/name%20with%20spaces/history"
   end
 
   def test_history_feed_redirects
     get "/browse/changesets/feed"
     assert_response :redirect
     assert_redirected_to "/history/feed"
+
+    get "/browse/changesets/feed?bbox=-80.54%2C40.358%2C-79.526%2C40.779"
+    assert_response :redirect
+    assert_redirected_to "/history/feed?bbox=-80.54%2C40.358%2C-79.526%2C40.779"
+
+    get "/user/name/edits/feed"
+    assert_response :redirect
+    assert_redirected_to "/user/name/history/feed"
+
+    get "/user/name%20with%20spaces/edits/feed"
+    assert_response :redirect
+    assert_redirected_to "/user/name%20with%20spaces/history/feed"
+  end
+
+  def test_browse_redirects
+    get "/browse/node/1"
+    assert_response :redirect
+    assert_redirected_to "/node/1"
+
+    get "/browse/way/1"
+    assert_response :redirect
+    assert_redirected_to "/way/1"
+
+    get "/browse/relation/1"
+    assert_response :redirect
+    assert_redirected_to "/relation/1"
+
+    get "/browse/changeset/1"
+    assert_response :redirect
+    assert_redirected_to "/changeset/1"
+
+    get "/browse/note/1"
+    assert_response :redirect
+    assert_redirected_to "/note/1"
+  end
+
+  def test_browse_history_redirects
+    get "/browse/node/1/history"
+    assert_response :redirect
+    assert_redirected_to "/node/1/history"
+
+    get "/browse/way/1/history"
+    assert_response :redirect
+    assert_redirected_to "/way/1/history"
+
+    get "/browse/relation/1/history"
+    assert_response :redirect
+    assert_redirected_to "/relation/1/history"
   end
 end