From: Tom Hughes Date: Fri, 2 Jun 2017 21:31:12 +0000 (+0100) Subject: Fix some tests for changes in rails 5 X-Git-Tag: live~3356^2~1 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/3893fd72a953beba360fd205ca9fcc2abf623024?hp=03408b6294e0aa56d46823c1f44d47aaf69e226b;ds=sidebyside Fix some tests for changes in rails 5 --- diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb index b6fc79b25..82373c90a 100644 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@ -268,7 +268,7 @@ class UserController < ApplicationController def logout @title = t "user.logout.title" - if params[:session] == request.session_options[:id] + if params[:session] == session.id if session[:token] token = UserToken.find_by(:token => session[:token]) token.destroy if token diff --git a/app/views/layouts/_header.html.erb b/app/views/layouts/_header.html.erb index 2b7d6313e..262989752 100644 --- a/app/views/layouts/_header.html.erb +++ b/app/views/layouts/_header.html.erb @@ -80,7 +80,7 @@ <%= yield :greeting %>
  • - <%= link_to t('layouts.logout'), logout_path(:session => request.session_options[:id], :referer => request.fullpath) %> + <%= link_to t('layouts.logout'), logout_path(:session => session.id, :referer => request.fullpath) %>
  • diff --git a/app/views/user/logout.html.erb b/app/views/user/logout.html.erb index bb67d1581..2620cdaa6 100644 --- a/app/views/user/logout.html.erb +++ b/app/views/user/logout.html.erb @@ -4,6 +4,6 @@ <%= form_tag :action => "logout" do %> <%= hidden_field_tag("referer", h(params[:referer])) %> - <%= hidden_field_tag("session", request.session_options[:id]) %> + <%= hidden_field_tag("session", session.id) %> <%= submit_tag t('user.logout.logout_button') %> <% end %> diff --git a/test/controllers/notes_controller_test.rb b/test/controllers/notes_controller_test.rb index dfeec0c52..c6d89f1ca 100644 --- a/test/controllers/notes_controller_test.rb +++ b/test/controllers/notes_controller_test.rb @@ -770,11 +770,11 @@ class NotesControllerTest < ActionController::TestCase get :index, :params => { :bbox => "-10,-10,12,12", :format => :json } assert_response :bad_request - assert_equal "text/plain", @response.content_type + assert_equal "application/json", @response.content_type get :index, :params => { :l => "-10", :b => "-10", :r => "12", :t => "12", :format => :json } assert_response :bad_request - assert_equal "text/plain", @response.content_type + assert_equal "application/json", @response.content_type end def test_index_closed diff --git a/test/controllers/user_controller_test.rb b/test/controllers/user_controller_test.rb index 0fe224fca..7c79717f3 100644 --- a/test/controllers/user_controller_test.rb +++ b/test/controllers/user_controller_test.rb @@ -785,6 +785,7 @@ class UserControllerTest < ActionController::TestCase # Updating the description should work user.description = "new description" + user.preferred_editor = "default" post :account, :params => { :display_name => user.display_name, :user => user.attributes }, :session => { :user => user } assert_response :success assert_template :account @@ -1434,7 +1435,7 @@ class UserControllerTest < ActionController::TestCase post :list, :params => { :confirm => 1, :user => { inactive_user.id => 1, suspended_user.id => 1 } } end assert_response :redirect - assert_redirected_to :action => :login, :referer => users_path(:confirm => 1, :user => { inactive_user.id => 1, suspended_user.id => 1 }) + assert_redirected_to :action => :login, :referer => users_path assert_equal "pending", inactive_user.reload.status assert_equal "suspended", suspended_user.reload.status @@ -1445,7 +1446,7 @@ class UserControllerTest < ActionController::TestCase post :list, :params => { :confirm => 1, :user => { inactive_user.id => 1, suspended_user.id => 1 } } end assert_response :redirect - assert_redirected_to :action => :login, :referer => users_path(:confirm => 1, :user => { inactive_user.id => 1, suspended_user.id => 1 }) + assert_redirected_to :action => :login, :referer => users_path assert_equal "pending", inactive_user.reload.status assert_equal "suspended", suspended_user.reload.status @@ -1456,7 +1457,7 @@ class UserControllerTest < ActionController::TestCase post :list, :params => { :confirm => 1, :user => { inactive_user.id => 1, suspended_user.id => 1 } } end assert_response :redirect - assert_redirected_to :action => :login, :referer => users_path(:confirm => 1, :user => { inactive_user.id => 1, suspended_user.id => 1 }) + assert_redirected_to :action => :login, :referer => users_path assert_equal "pending", inactive_user.reload.status assert_equal "suspended", suspended_user.reload.status @@ -1481,7 +1482,7 @@ class UserControllerTest < ActionController::TestCase post :list, :params => { :hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 } } end assert_response :redirect - assert_redirected_to :action => :login, :referer => users_path(:hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 }) + assert_redirected_to :action => :login, :referer => users_path assert_equal "active", normal_user.reload.status assert_equal "confirmed", confirmed_user.reload.status @@ -1492,7 +1493,7 @@ class UserControllerTest < ActionController::TestCase post :list, :params => { :hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 } } end assert_response :redirect - assert_redirected_to :action => :login, :referer => users_path(:hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 }) + assert_redirected_to :action => :login, :referer => users_path assert_equal "active", normal_user.reload.status assert_equal "confirmed", confirmed_user.reload.status @@ -1503,7 +1504,7 @@ class UserControllerTest < ActionController::TestCase post :list, :params => { :hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 } } end assert_response :redirect - assert_redirected_to :action => :login, :referer => users_path(:hide => 1, :user => { normal_user.id => 1, confirmed_user.id => 1 }) + assert_redirected_to :action => :login, :referer => users_path assert_equal "active", normal_user.reload.status assert_equal "confirmed", confirmed_user.reload.status diff --git a/test/integration/cors_test.rb b/test/integration/cors_test.rb index fdecfc256..05754da71 100644 --- a/test/integration/cors_test.rb +++ b/test/integration/cors_test.rb @@ -1,22 +1,11 @@ require "test_helper" class CORSTest < ActionDispatch::IntegrationTest - # Rails 4 adds a built-in `options` method. When we upgrade, we can remove - # this definition. - unless instance_methods.include?(:options) - def options(*args) - reset! unless integration_session - @html_document = nil - integration_session.send(:process, :options, *args).tap do - copy_session_variables! - end - end - end - def test_api_routes_allow_cross_origin_requests - options "/api/capabilities", nil, - "HTTP_ORIGIN" => "http://www.example.com", - "HTTP_ACCESS_CONTROL_REQUEST_METHOD" => "GET" + process :options, "/api/capabilities", :headers => { + "HTTP_ORIGIN" => "http://www.example.com", + "HTTP_ACCESS_CONTROL_REQUEST_METHOD" => "GET" + } assert_response :success assert_equal "http://www.example.com", response.headers["Access-Control-Allow-Origin"] @@ -24,9 +13,10 @@ class CORSTest < ActionDispatch::IntegrationTest def test_non_api_routes_dont_allow_cross_origin_requests assert_raises ActionController::RoutingError do - options "/", nil, - "HTTP_ORIGIN" => "http://www.example.com", - "HTTP_ACCESS_CONTROL_REQUEST_METHOD" => "GET" + process :options, "/", :headers => { + "HTTP_ORIGIN" => "http://www.example.com", + "HTTP_ACCESS_CONTROL_REQUEST_METHOD" => "GET" + } end end end