]> git.openstreetmap.org Git - rails.git/blobdiff - test/controllers/users_controller_test.rb
Update tests to ensure referer is working
[rails.git] / test / controllers / users_controller_test.rb
index 62e06fc58d0e3d339d620cdd53a131662e3e3cfb..c40c30b28a986f1ce794edb57700256035c31e4b 100644 (file)
@@ -2,6 +2,8 @@ require "test_helper"
 
 class UsersControllerTest < ActionController::TestCase
   def setup
+    super
+
     stub_hostip_requests
   end
 
@@ -342,29 +344,29 @@ class UsersControllerTest < ActionController::TestCase
   end
 
   def test_logout_without_referer
+    post :logout
+    assert_response :redirect
+    assert_redirected_to root_path
+  end
+
+  def test_logout_with_referer
+    post :logout, :params => { :referer => "/test" }
+    assert_response :redirect
+    assert_redirected_to "/test"
+  end
+
+  def test_logout_fallback_without_referer
     get :logout
     assert_response :success
     assert_template :logout
     assert_select "input[name=referer][value=?]", ""
-
-    session_id = assert_select("input[name=session]").first["value"]
-
-    get :logout, :params => { :session => session_id }
-    assert_response :redirect
-    assert_redirected_to root_path
   end
 
-  def test_logout_with_referer
+  def test_logout_fallback_with_referer
     get :logout, :params => { :referer => "/test" }
     assert_response :success
     assert_template :logout
     assert_select "input[name=referer][value=?]", "/test"
-
-    session_id = assert_select("input[name=session]").first["value"]
-
-    get :logout, :params => { :session => session_id, :referer => "/test" }
-    assert_response :redirect
-    assert_redirected_to "/test"
   end
 
   def test_logout_with_token
@@ -372,16 +374,7 @@ class UsersControllerTest < ActionController::TestCase
 
     session[:token] = token.token
 
-    get :logout
-    assert_response :success
-    assert_template :logout
-    assert_select "input[name=referer][value=?]", ""
-    assert_equal token.token, session[:token]
-    assert_not_nil UserToken.where(:id => token.id).first
-
-    session_id = assert_select("input[name=session]").first["value"]
-
-    get :logout, :params => { :session => session_id }
+    post :logout
     assert_response :redirect
     assert_redirected_to root_path
     assert_nil session[:token]