From 35b3de8021e68649cac963bd82a74cc75d1f60f0 Mon Sep 17 00:00:00 2001 From: Xavier Noria Date: Sat, 6 Aug 2016 18:54:50 +0200 Subject: applies new string literal convention in actionpack/test The current code base is not uniform. After some discussion, we have chosen to go with double quotes by default. --- .../test/controller/action_pack_assertions_test.rb | 104 +-- .../test/controller/api/conditional_get_test.rb | 10 +- .../test/controller/api/data_streaming_test.rb | 6 +- actionpack/test/controller/api/force_ssl_test.rb | 2 +- .../test/controller/api/implicit_render_test.rb | 2 +- .../test/controller/api/params_wrapper_test.rb | 8 +- actionpack/test/controller/api/redirect_to_test.rb | 2 +- actionpack/test/controller/api/renderers_test.rb | 20 +- actionpack/test/controller/api/url_for_test.rb | 4 +- .../test/controller/api/with_cookies_test.rb | 6 +- actionpack/test/controller/base_test.rb | 88 +- actionpack/test/controller/caching_test.rb | 124 +-- actionpack/test/controller/content_type_test.rb | 2 +- .../default_url_options_with_before_action_test.rb | 2 +- actionpack/test/controller/filters_test.rb | 126 +-- actionpack/test/controller/flash_hash_test.rb | 144 +-- actionpack/test/controller/flash_test.rb | 42 +- actionpack/test/controller/force_ssl_test.rb | 62 +- actionpack/test/controller/form_builder_test.rb | 2 +- actionpack/test/controller/helper_test.rb | 40 +- .../controller/http_basic_authentication_test.rb | 60 +- .../controller/http_digest_authentication_test.rb | 120 +-- .../controller/http_token_authentication_test.rb | 44 +- actionpack/test/controller/integration_test.rb | 364 ++++---- actionpack/test/controller/live_stream_test.rb | 102 +-- .../test/controller/localized_templates_test.rb | 2 +- actionpack/test/controller/log_subscriber_test.rb | 20 +- actionpack/test/controller/metal/renderers_test.rb | 14 +- .../test/controller/mime/accept_format_test.rb | 6 +- actionpack/test/controller/mime/respond_to_test.rb | 104 +-- .../test/controller/new_base/bare_metal_test.rb | 24 +- actionpack/test/controller/new_base/base_test.rb | 26 +- .../new_base/content_negotiation_test.rb | 2 +- .../test/controller/new_base/content_type_test.rb | 4 +- .../test/controller/new_base/middleware_test.rb | 2 +- .../test/controller/new_base/render_action_test.rb | 2 +- .../test/controller/new_base/render_body_test.rb | 10 +- .../controller/new_base/render_context_test.rb | 2 +- .../test/controller/new_base/render_file_test.rb | 20 +- .../test/controller/new_base/render_html_test.rb | 6 +- .../new_base/render_implicit_action_test.rb | 4 +- .../test/controller/new_base/render_layout_test.rb | 2 +- .../controller/new_base/render_partial_test.rb | 6 +- .../test/controller/new_base/render_plain_test.rb | 6 +- .../controller/new_base/render_streaming_test.rb | 2 +- .../controller/new_base/render_template_test.rb | 16 +- actionpack/test/controller/new_base/render_test.rb | 6 +- .../test/controller/new_base/render_text_test.rb | 6 +- .../test/controller/new_base/render_xml_test.rb | 2 +- actionpack/test/controller/output_escaping_test.rb | 2 +- .../test/controller/parameters/accessors_test.rb | 18 +- .../parameters/always_permitted_parameters_test.rb | 4 +- actionpack/test/controller/parameters/dup_test.rb | 12 +- .../parameters/log_on_unpermitted_params_test.rb | 4 +- .../parameters/multi_parameter_attributes_test.rb | 4 +- .../test/controller/parameters/mutators_test.rb | 14 +- .../parameters/nested_parameters_permit_test.rb | 64 +- .../parameters/parameters_permit_test.rb | 84 +- .../parameters/raise_on_unpermitted_params_test.rb | 4 +- .../controller/parameters/serialization_test.rb | 14 +- actionpack/test/controller/params_wrapper_test.rb | 148 +-- .../test/controller/permitted_params_test.rb | 2 +- actionpack/test/controller/redirect_test.rb | 26 +- actionpack/test/controller/render_js_test.rb | 14 +- actionpack/test/controller/render_json_test.rb | 42 +- actionpack/test/controller/render_test.rb | 118 +-- actionpack/test/controller/render_xml_test.rb | 14 +- actionpack/test/controller/renderer_test.rb | 72 +- actionpack/test/controller/renderers_test.rb | 12 +- .../test/controller/request/test_request_test.rb | 4 +- .../controller/request_forgery_protection_test.rb | 140 +-- actionpack/test/controller/required_params_test.rb | 8 +- actionpack/test/controller/rescue_test.rb | 52 +- actionpack/test/controller/resources_test.rb | 466 +++++----- actionpack/test/controller/routing_test.rb | 998 ++++++++++----------- actionpack/test/controller/runner_test.rb | 4 +- actionpack/test/controller/send_file_test.rb | 68 +- actionpack/test/controller/show_exceptions_test.rb | 54 +- actionpack/test/controller/streaming_test.rb | 4 +- actionpack/test/controller/test_case_test.rb | 428 ++++----- .../test/controller/url_for_integration_test.rb | 242 ++--- actionpack/test/controller/url_for_test.rb | 282 +++--- actionpack/test/controller/url_rewriter_test.rb | 50 +- actionpack/test/controller/webservice_test.rb | 46 +- 84 files changed, 2649 insertions(+), 2649 deletions(-) (limited to 'actionpack/test/controller') diff --git a/actionpack/test/controller/action_pack_assertions_test.rb b/actionpack/test/controller/action_pack_assertions_test.rb index db71aa2160..7b7f3d1de6 100644 --- a/actionpack/test/controller/action_pack_assertions_test.rb +++ b/actionpack/test/controller/action_pack_assertions_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'controller/fake_controllers' +require "abstract_unit" +require "controller/fake_controllers" class ActionPackAssertionsController < ActionController::Base @@ -25,9 +25,9 @@ class ActionPackAssertionsController < ActionController::Base def redirect_to_controller_with_symbol() redirect_to :controller => :elsewhere, :action => :flash_me; end - def redirect_to_path() redirect_to '/some/path' end + def redirect_to_path() redirect_to "/some/path" end - def redirect_invalid_external_route() redirect_to 'ht_tp://www.rubyonrails.org' end + def redirect_invalid_external_route() redirect_to "ht_tp://www.rubyonrails.org" end def redirect_to_named_route() redirect_to route_one_url end @@ -35,14 +35,14 @@ class ActionPackAssertionsController < ActionController::Base def redirect_external_protocol_relative() redirect_to "//www.rubyonrails.org"; end - def response404() head '404 AWOL' end + def response404() head "404 AWOL" end - def response500() head '500 Sorry' end + def response500() head "500 Sorry" end - def response599() head '599 Whoah!' end + def response599() head "599 Whoah!" end def flash_me - flash['hello'] = 'my name is inigo montoya...' + flash["hello"] = "my name is inigo montoya..." render plain: "Inconceivable!" end @@ -69,7 +69,7 @@ class ActionPackAssertionsController < ActionController::Base end def session_stuffing - session['xmas'] = 'turkey' + session["xmas"] = "turkey" render plain: "ho ho ho" end @@ -84,11 +84,11 @@ class ActionPackAssertionsController < ActionController::Base end def render_file_absolute_path - render :file => File.expand_path('../../../README.rdoc', __FILE__) + render :file => File.expand_path("../../../README.rdoc", __FILE__) end def render_file_relative_path - render :file => 'README.rdoc' + render :file => "README.rdoc" end end @@ -97,7 +97,7 @@ end # is expecting something other than an error. class AssertResponseWithUnexpectedErrorController < ActionController::Base def index - raise 'FAIL' + raise "FAIL" end def show @@ -116,11 +116,11 @@ module Admin end def redirect_to_absolute_controller - redirect_to :controller => '/content' + redirect_to :controller => "/content" end def redirect_to_fellow_controller - redirect_to :controller => 'user' + redirect_to :controller => "user" end def redirect_to_top_level_named_route @@ -144,30 +144,30 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase def test_get_request assert_raise(RuntimeError) { get :raise_exception_on_get } get :raise_exception_on_post - assert_equal 'request method: GET', @response.body + assert_equal "request method: GET", @response.body end def test_post_request assert_raise(RuntimeError) { post :raise_exception_on_post } post :raise_exception_on_get - assert_equal 'request method: POST', @response.body + assert_equal "request method: POST", @response.body end def test_get_post_request_switch post :raise_exception_on_get - assert_equal 'request method: POST', @response.body + assert_equal "request method: POST", @response.body get :raise_exception_on_post - assert_equal 'request method: GET', @response.body + assert_equal "request method: GET", @response.body post :raise_exception_on_get - assert_equal 'request method: POST', @response.body + assert_equal "request method: POST", @response.body get :raise_exception_on_post - assert_equal 'request method: GET', @response.body + assert_equal "request method: GET", @response.body end def test_string_constraint with_routing do |set| set.draw do - get "photos", :to => 'action_pack_assertions#nothing', :constraints => {:subdomain => "admin"} + get "photos", :to => "action_pack_assertions#nothing", :constraints => {:subdomain => "admin"} end end end @@ -175,22 +175,22 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase def test_assert_redirect_to_named_route_failure with_routing do |set| set.draw do - get 'route_one', :to => 'action_pack_assertions#nothing', :as => :route_one - get 'route_two', :to => 'action_pack_assertions#nothing', :id => 'two', :as => :route_two + get "route_one", :to => "action_pack_assertions#nothing", :as => :route_one + get "route_two", :to => "action_pack_assertions#nothing", :id => "two", :as => :route_two ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end process :redirect_to_named_route assert_raise(ActiveSupport::TestCase::Assertion) do - assert_redirected_to 'http://test.host/route_two' + assert_redirected_to "http://test.host/route_two" end assert_raise(ActiveSupport::TestCase::Assertion) do assert_redirected_to %r(^http://test.host/route_two) end assert_raise(ActiveSupport::TestCase::Assertion) do - assert_redirected_to :controller => 'action_pack_assertions', :action => 'nothing', :id => 'two' + assert_redirected_to :controller => "action_pack_assertions", :action => "nothing", :id => "two" end assert_raise(ActiveSupport::TestCase::Assertion) do assert_redirected_to route_two_url @@ -203,10 +203,10 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase with_routing do |set| set.draw do - get 'admin/inner_module', :to => 'admin/inner_module#index', :as => :admin_inner_module + get "admin/inner_module", :to => "admin/inner_module#index", :as => :admin_inner_module ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end process :redirect_to_index @@ -220,10 +220,10 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase with_routing do |set| set.draw do - get '/action_pack_assertions/:id', :to => 'action_pack_assertions#index', :as => :top_level + get "/action_pack_assertions/:id", :to => "action_pack_assertions#index", :as => :top_level ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end process :redirect_to_top_level_named_route @@ -239,15 +239,15 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase with_routing do |set| set.draw do # this controller exists in the admin namespace as well which is the only difference from previous test - get '/user/:id', :to => 'user#index', :as => :top_level + get "/user/:id", :to => "user#index", :as => :top_level ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end process :redirect_to_top_level_named_route # assert_redirected_to top_level_url('foo') would pass because of exact match early return - assert_redirected_to top_level_path('foo') + assert_redirected_to top_level_path("foo") end end @@ -259,7 +259,7 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase assert_no_match( /#{request.protocol}#{request.host}\/\/www.rubyonrails.org/, ex.message, - 'protocol relative url was incorrectly normalized' + "protocol relative url was incorrectly normalized" ) end end @@ -283,7 +283,7 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase def test_flash_exist process :flash_me assert flash.any? - assert flash['hello'].present? + assert flash["hello"].present? end def test_flash_does_not_exist @@ -293,7 +293,7 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase def test_session_exist process :session_stuffing - assert_equal 'turkey', session['xmas'] + assert_equal "turkey", session["xmas"] end def session_does_not_exist @@ -303,13 +303,13 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase def test_redirection_location process :redirect_internal - assert_equal 'http://test.host/nothing', @response.redirect_url + assert_equal "http://test.host/nothing", @response.redirect_url process :redirect_external - assert_equal 'http://www.rubyonrails.org', @response.redirect_url + assert_equal "http://www.rubyonrails.org", @response.redirect_url process :redirect_external_protocol_relative - assert_equal '//www.rubyonrails.org', @response.redirect_url + assert_equal "//www.rubyonrails.org", @response.redirect_url end def test_no_redirect_url @@ -382,18 +382,18 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase def test_assert_redirection_with_extra_controller_option get :redirect_to_action - assert_redirected_to :controller => 'action_pack_assertions', :action => "flash_me", :id => 1, :params => { :panda => 'fun' } + assert_redirected_to :controller => "action_pack_assertions", :action => "flash_me", :id => 1, :params => { :panda => "fun" } end def test_redirected_to_url_leading_slash process :redirect_to_path - assert_redirected_to '/some/path' + assert_redirected_to "/some/path" end def test_redirected_to_url_no_leading_slash_fails process :redirect_to_path assert_raise ActiveSupport::TestCase::Assertion do - assert_redirected_to 'some/path' + assert_redirected_to "some/path" end end @@ -404,7 +404,7 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase def test_redirected_to_url_full_url process :redirect_to_path - assert_redirected_to 'http://test.host/some/path' + assert_redirected_to "http://test.host/some/path" end def test_assert_redirection_with_symbol @@ -421,26 +421,26 @@ class ActionPackAssertionsControllerTest < ActionController::TestCase def test_redirected_to_with_nested_controller @controller = Admin::InnerModuleController.new get :redirect_to_absolute_controller - assert_redirected_to :controller => '/content' + assert_redirected_to :controller => "/content" get :redirect_to_fellow_controller - assert_redirected_to :controller => 'admin/user' + assert_redirected_to :controller => "admin/user" end def test_assert_response_uses_exception_message @controller = AssertResponseWithUnexpectedErrorController.new - e = assert_raise RuntimeError, 'Expected non-success response' do + e = assert_raise RuntimeError, "Expected non-success response" do get :index end assert_response :success - assert_includes 'FAIL', e.message + assert_includes "FAIL", e.message end def test_assert_response_failure_response_with_no_exception @controller = AssertResponseWithUnexpectedErrorController.new get :show assert_response 500 - assert_equal 'Boom', response.body + assert_equal "Boom", response.body end end @@ -449,21 +449,21 @@ class ActionPackHeaderTest < ActionController::TestCase def test_rendering_xml_sets_content_type process :hello_xml_world - assert_equal('application/xml; charset=utf-8', @response.headers['Content-Type']) + assert_equal("application/xml; charset=utf-8", @response.headers["Content-Type"]) end def test_rendering_xml_respects_content_type process :hello_xml_world_pdf - assert_equal('application/pdf; charset=utf-8', @response.headers['Content-Type']) + assert_equal("application/pdf; charset=utf-8", @response.headers["Content-Type"]) end def test_rendering_xml_respects_content_type_when_set_in_the_header process :hello_xml_world_pdf_header - assert_equal('application/pdf; charset=utf-8', @response.headers['Content-Type']) + assert_equal("application/pdf; charset=utf-8", @response.headers["Content-Type"]) end def test_render_text_with_custom_content_type get :render_text_with_custom_content_type - assert_equal 'application/rss+xml; charset=utf-8', @response.headers['Content-Type'] + assert_equal "application/rss+xml; charset=utf-8", @response.headers["Content-Type"] end end diff --git a/actionpack/test/controller/api/conditional_get_test.rb b/actionpack/test/controller/api/conditional_get_test.rb index b4f1673be0..330bfac1c9 100644 --- a/actionpack/test/controller/api/conditional_get_test.rb +++ b/actionpack/test/controller/api/conditional_get_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' -require 'active_support/core_ext/integer/time' -require 'active_support/core_ext/numeric/time' +require "abstract_unit" +require "active_support/core_ext/integer/time" +require "active_support/core_ext/numeric/time" class ConditionalGetApiController < ActionController::API before_action :handle_last_modified_and_etags, only: :two @@ -31,7 +31,7 @@ class ConditionalGetApiTest < ActionController::TestCase def test_request_gets_last_modified get :two - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] assert_response :success end @@ -52,6 +52,6 @@ class ConditionalGetApiTest < ActionController::TestCase get :one assert_equal 304, @response.status.to_i assert @response.body.blank? - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end end diff --git a/actionpack/test/controller/api/data_streaming_test.rb b/actionpack/test/controller/api/data_streaming_test.rb index 0e7d97d1f4..f15b78d102 100644 --- a/actionpack/test/controller/api/data_streaming_test.rb +++ b/actionpack/test/controller/api/data_streaming_test.rb @@ -1,8 +1,8 @@ -require 'abstract_unit' +require "abstract_unit" module TestApiFileUtils def file_path() File.expand_path(__FILE__) end - def file_data() @data ||= File.open(file_path, 'rb') { |f| f.read } end + def file_data() @data ||= File.open(file_path, "rb") { |f| f.read } end end class DataStreamingApiController < ActionController::API @@ -19,7 +19,7 @@ class DataStreamingApiTest < ActionController::TestCase tests DataStreamingApiController def test_data - response = process('two') + response = process("two") assert_kind_of String, response.body assert_equal file_data, response.body end diff --git a/actionpack/test/controller/api/force_ssl_test.rb b/actionpack/test/controller/api/force_ssl_test.rb index 8578340d82..d239964e4a 100644 --- a/actionpack/test/controller/api/force_ssl_test.rb +++ b/actionpack/test/controller/api/force_ssl_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class ForceSSLApiController < ActionController::API force_ssl diff --git a/actionpack/test/controller/api/implicit_render_test.rb b/actionpack/test/controller/api/implicit_render_test.rb index 26f9cd8f78..b51ee0cf42 100644 --- a/actionpack/test/controller/api/implicit_render_test.rb +++ b/actionpack/test/controller/api/implicit_render_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class ImplicitRenderAPITestController < ActionController::API def empty_action diff --git a/actionpack/test/controller/api/params_wrapper_test.rb b/actionpack/test/controller/api/params_wrapper_test.rb index 53b3a0c3cc..cdf5acecae 100644 --- a/actionpack/test/controller/api/params_wrapper_test.rb +++ b/actionpack/test/controller/api/params_wrapper_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class ParamsWrapperForApiTest < ActionController::TestCase class UsersController < ActionController::API @@ -17,10 +17,10 @@ class ParamsWrapperForApiTest < ActionController::TestCase tests UsersController def test_specify_wrapper_name - @request.env['CONTENT_TYPE'] = 'application/json' - post :test, params: { 'username' => 'sikachu' } + @request.env["CONTENT_TYPE"] = "application/json" + post :test, params: { "username" => "sikachu" } - expected = { 'username' => 'sikachu', 'person' => { 'username' => 'sikachu' }} + expected = { "username" => "sikachu", "person" => { "username" => "sikachu" }} assert_equal expected, @controller.last_parameters end end diff --git a/actionpack/test/controller/api/redirect_to_test.rb b/actionpack/test/controller/api/redirect_to_test.rb index 18877c4b3a..ab14409f40 100644 --- a/actionpack/test/controller/api/redirect_to_test.rb +++ b/actionpack/test/controller/api/redirect_to_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class RedirectToApiController < ActionController::API def one diff --git a/actionpack/test/controller/api/renderers_test.rb b/actionpack/test/controller/api/renderers_test.rb index 911a8144b2..7eecc1c680 100644 --- a/actionpack/test/controller/api/renderers_test.rb +++ b/actionpack/test/controller/api/renderers_test.rb @@ -1,14 +1,14 @@ -require 'abstract_unit' -require 'active_support/core_ext/hash/conversions' +require "abstract_unit" +require "active_support/core_ext/hash/conversions" class RenderersApiController < ActionController::API class Model def to_json(options = {}) - { a: 'b' }.to_json(options) + { a: "b" }.to_json(options) end def to_xml(options = {}) - { a: 'b' }.to_xml(options) + { a: "b" }.to_xml(options) end end @@ -21,11 +21,11 @@ class RenderersApiController < ActionController::API end def plain - render plain: 'Hi from plain', status: 500 + render plain: "Hi from plain", status: 500 end def text - render text: 'Hi from text', status: 500 + render text: "Hi from text", status: 500 end end @@ -35,19 +35,19 @@ class RenderersApiTest < ActionController::TestCase def test_render_json get :one assert_response :success - assert_equal({ a: 'b' }.to_json, @response.body) + assert_equal({ a: "b" }.to_json, @response.body) end def test_render_xml get :two assert_response :success - assert_equal({ a: 'b' }.to_xml, @response.body) + assert_equal({ a: "b" }.to_xml, @response.body) end def test_render_plain get :plain assert_response :internal_server_error - assert_equal('Hi from plain', @response.body) + assert_equal("Hi from plain", @response.body) end def test_render_text @@ -55,6 +55,6 @@ class RenderersApiTest < ActionController::TestCase get :text end assert_response :internal_server_error - assert_equal('Hi from text', @response.body) + assert_equal("Hi from text", @response.body) end end diff --git a/actionpack/test/controller/api/url_for_test.rb b/actionpack/test/controller/api/url_for_test.rb index 0d8691a091..cb4ae7a88a 100644 --- a/actionpack/test/controller/api/url_for_test.rb +++ b/actionpack/test/controller/api/url_for_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class UrlForApiController < ActionController::API def one; end @@ -10,7 +10,7 @@ class UrlForApiTest < ActionController::TestCase def setup super - @request.host = 'www.example.com' + @request.host = "www.example.com" end def test_url_for diff --git a/actionpack/test/controller/api/with_cookies_test.rb b/actionpack/test/controller/api/with_cookies_test.rb index 4491dc9002..8928237dfd 100644 --- a/actionpack/test/controller/api/with_cookies_test.rb +++ b/actionpack/test/controller/api/with_cookies_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class WithCookiesController < ActionController::API include ActionController::Cookies @@ -12,10 +12,10 @@ class WithCookiesTest < ActionController::TestCase tests WithCookiesController def test_with_cookies - request.cookies[:foobar] = 'bazbang' + request.cookies[:foobar] = "bazbang" get :with_cookies - assert_equal 'bazbang', response.body + assert_equal "bazbang", response.body end end diff --git a/actionpack/test/controller/base_test.rb b/actionpack/test/controller/base_test.rb index 577a3d5800..feb806c953 100644 --- a/actionpack/test/controller/base_test.rb +++ b/actionpack/test/controller/base_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' -require 'active_support/logger' -require 'controller/fake_models' +require "abstract_unit" +require "active_support/logger" +require "controller/fake_models" # Provide some controller to run the tests on. module Submodule @@ -23,7 +23,7 @@ class DefaultUrlOptionsController < ActionController::Base end def default_url_options - { :host => 'www.override.com', :action => 'new', :locale => 'en' } + { :host => "www.override.com", :action => "new", :locale => "en" } end end @@ -33,7 +33,7 @@ class OptionalDefaultUrlOptionsController < ActionController::Base end def default_url_options - { format: 'atom', id: 'default-id' } + { format: "atom", id: "default-id" } end end @@ -43,7 +43,7 @@ class UrlOptionsController < ActionController::Base end def url_options - super.merge(:host => 'www.override.com') + super.merge(:host => "www.override.com") end end @@ -60,15 +60,15 @@ end class ControllerClassTests < ActiveSupport::TestCase def test_controller_path - assert_equal 'empty', EmptyController.controller_path + assert_equal "empty", EmptyController.controller_path assert_equal EmptyController.controller_path, EmptyController.new.controller_path - assert_equal 'submodule/contained_empty', Submodule::ContainedEmptyController.controller_path + assert_equal "submodule/contained_empty", Submodule::ContainedEmptyController.controller_path assert_equal Submodule::ContainedEmptyController.controller_path, Submodule::ContainedEmptyController.new.controller_path end def test_controller_name - assert_equal 'empty', EmptyController.controller_name - assert_equal 'contained_empty', Submodule::ContainedEmptyController.controller_name + assert_equal "empty", EmptyController.controller_name + assert_equal "contained_empty", Submodule::ContainedEmptyController.controller_name end def test_no_deprecation_when_action_view_record_identifier_is_included @@ -80,13 +80,13 @@ class ControllerClassTests < ActiveSupport::TestCase dom_id = RecordIdentifierIncludedController.new.dom_id(record) end - assert_equal 'comment_1', dom_id + assert_equal "comment_1", dom_id dom_class = nil assert_not_deprecated do dom_class = RecordIdentifierIncludedController.new.dom_class(record) end - assert_equal 'comment', dom_class + assert_equal "comment", dom_class end end @@ -112,7 +112,7 @@ class ControllerInstanceTests < ActiveSupport::TestCase end def test_temporary_anonymous_controllers - name = 'ExamplesController' + name = "ExamplesController" klass = Class.new(ActionController::Base) Object.const_set(name, klass) @@ -152,13 +152,13 @@ class UrlOptionsTest < ActionController::TestCase def setup super - @request.host = 'www.example.com' + @request.host = "www.example.com" end def test_url_for_query_params_included rs = ActionDispatch::Routing::RouteSet.new rs.draw do - get 'home' => 'pages#home' + get "home" => "pages#home" end options = { @@ -168,24 +168,24 @@ class UrlOptionsTest < ActionController::TestCase :params => { "token" => "secret" } } - assert_equal '/home?token=secret', rs.url_for(options) + assert_equal "/home?token=secret", rs.url_for(options) end def test_url_options_override with_routing do |set| set.draw do - get 'from_view', :to => 'url_options#from_view', :as => :from_view + get "from_view", :to => "url_options#from_view", :as => :from_view ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end get :from_view, params: { route: "from_view_url" } - assert_equal 'http://www.override.com/from_view', @response.body - assert_equal 'http://www.override.com/from_view', @controller.send(:from_view_url) - assert_equal 'http://www.override.com/default_url_options/index', @controller.url_for(:controller => 'default_url_options') + assert_equal "http://www.override.com/from_view", @response.body + assert_equal "http://www.override.com/from_view", @controller.send(:from_view_url) + assert_equal "http://www.override.com/default_url_options/index", @controller.url_for(:controller => "default_url_options") end end @@ -205,24 +205,24 @@ class DefaultUrlOptionsTest < ActionController::TestCase def setup super - @request.host = 'www.example.com' + @request.host = "www.example.com" end def test_default_url_options_override with_routing do |set| set.draw do - get 'from_view', :to => 'default_url_options#from_view', :as => :from_view + get "from_view", :to => "default_url_options#from_view", :as => :from_view ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end get :from_view, params: { route: "from_view_url" } - assert_equal 'http://www.override.com/from_view?locale=en', @response.body - assert_equal 'http://www.override.com/from_view?locale=en', @controller.send(:from_view_url) - assert_equal 'http://www.override.com/default_url_options/new?locale=en', @controller.url_for(:controller => 'default_url_options') + assert_equal "http://www.override.com/from_view?locale=en", @response.body + assert_equal "http://www.override.com/from_view?locale=en", @controller.send(:from_view_url) + assert_equal "http://www.override.com/default_url_options/new?locale=en", @controller.url_for(:controller => "default_url_options") end end @@ -234,23 +234,23 @@ class DefaultUrlOptionsTest < ActionController::TestCase end ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end get :from_view, params: { route: "description_path(1)" } - assert_equal '/en/descriptions/1', @response.body - assert_equal '/en/descriptions', @controller.send(:descriptions_path) - assert_equal '/pl/descriptions', @controller.send(:descriptions_path, "pl") - assert_equal '/pl/descriptions', @controller.send(:descriptions_path, :locale => "pl") - assert_equal '/pl/descriptions.xml', @controller.send(:descriptions_path, "pl", "xml") - assert_equal '/en/descriptions.xml', @controller.send(:descriptions_path, :format => "xml") - assert_equal '/en/descriptions/1', @controller.send(:description_path, 1) - assert_equal '/pl/descriptions/1', @controller.send(:description_path, "pl", 1) - assert_equal '/pl/descriptions/1', @controller.send(:description_path, 1, :locale => "pl") - assert_equal '/pl/descriptions/1.xml', @controller.send(:description_path, "pl", 1, "xml") - assert_equal '/en/descriptions/1.xml', @controller.send(:description_path, 1, :format => "xml") + assert_equal "/en/descriptions/1", @response.body + assert_equal "/en/descriptions", @controller.send(:descriptions_path) + assert_equal "/pl/descriptions", @controller.send(:descriptions_path, "pl") + assert_equal "/pl/descriptions", @controller.send(:descriptions_path, :locale => "pl") + assert_equal "/pl/descriptions.xml", @controller.send(:descriptions_path, "pl", "xml") + assert_equal "/en/descriptions.xml", @controller.send(:descriptions_path, :format => "xml") + assert_equal "/en/descriptions/1", @controller.send(:description_path, 1) + assert_equal "/pl/descriptions/1", @controller.send(:description_path, "pl", 1) + assert_equal "/pl/descriptions/1", @controller.send(:description_path, 1, :locale => "pl") + assert_equal "/pl/descriptions/1.xml", @controller.send(:description_path, "pl", 1, "xml") + assert_equal "/en/descriptions/1.xml", @controller.send(:description_path, 1, :format => "xml") end end end @@ -259,10 +259,10 @@ class OptionalDefaultUrlOptionsControllerTest < ActionController::TestCase def test_default_url_options_override_missing_positional_arguments with_routing do |set| set.draw do - get "/things/:id(.:format)" => 'things#show', :as => :thing + get "/things/:id(.:format)" => "things#show", :as => :thing end - assert_equal '/things/1.atom', thing_path('1') - assert_equal '/things/default-id.atom', thing_path + assert_equal "/things/1.atom", thing_path("1") + assert_equal "/things/default-id.atom", thing_path end end end @@ -272,7 +272,7 @@ class EmptyUrlOptionsTest < ActionController::TestCase def setup super - @request.host = 'www.example.com' + @request.host = "www.example.com" end def test_ensure_url_for_works_as_expected_when_called_with_no_options_if_default_url_options_is_not_set @@ -289,7 +289,7 @@ class EmptyUrlOptionsTest < ActionController::TestCase resources :things end - assert_equal '/things', @controller.send(:things_path) + assert_equal "/things", @controller.send(:things_path) end end end diff --git a/actionpack/test/controller/caching_test.rb b/actionpack/test/controller/caching_test.rb index 9c2619dc3d..b302994fe3 100644 --- a/actionpack/test/controller/caching_test.rb +++ b/actionpack/test/controller/caching_test.rb @@ -1,10 +1,10 @@ -require 'fileutils' -require 'abstract_unit' -require 'lib/controller/fake_models' +require "fileutils" +require "abstract_unit" +require "lib/controller/fake_models" -CACHE_DIR = 'test_cache' +CACHE_DIR = "test_cache" # Don't change '/../temp/' cavalierly or you might hose something you don't want hosed -FILE_STORE_PATH = File.join(File.dirname(__FILE__), '/../temp/', CACHE_DIR) +FILE_STORE_PATH = File.join(File.dirname(__FILE__), "/../temp/", CACHE_DIR) class FragmentCachingMetalTestController < ActionController::Metal abstract! @@ -21,14 +21,14 @@ class FragmentCachingMetalTest < ActionController::TestCase @controller = FragmentCachingMetalTestController.new @controller.perform_caching = true @controller.cache_store = @store - @params = { controller: 'posts', action: 'index' } + @params = { controller: "posts", action: "index" } @controller.params = @params @controller.request = @request @controller.response = @response end def test_fragment_cache_key - assert_equal 'views/what a key', @controller.fragment_cache_key('what a key') + assert_equal "views/what a key", @controller.fragment_cache_key("what a key") end end @@ -49,96 +49,96 @@ class FragmentCachingTest < ActionController::TestCase @controller = FragmentCachingTestController.new @controller.perform_caching = true @controller.cache_store = @store - @params = {:controller => 'posts', :action => 'index'} + @params = {:controller => "posts", :action => "index"} @controller.params = @params @controller.request = @request @controller.response = @response end def test_fragment_cache_key - assert_equal 'views/what a key', @controller.fragment_cache_key('what a key') + assert_equal "views/what a key", @controller.fragment_cache_key("what a key") assert_equal "views/test.host/fragment_caching_test/some_action", - @controller.fragment_cache_key(:controller => 'fragment_caching_test',:action => 'some_action') + @controller.fragment_cache_key(:controller => "fragment_caching_test",:action => "some_action") end def test_read_fragment_with_caching_enabled - @store.write('views/name', 'value') - assert_equal 'value', @controller.read_fragment('name') + @store.write("views/name", "value") + assert_equal "value", @controller.read_fragment("name") end def test_read_fragment_with_caching_disabled @controller.perform_caching = false - @store.write('views/name', 'value') - assert_nil @controller.read_fragment('name') + @store.write("views/name", "value") + assert_nil @controller.read_fragment("name") end def test_fragment_exist_with_caching_enabled - @store.write('views/name', 'value') - assert @controller.fragment_exist?('name') - assert !@controller.fragment_exist?('other_name') + @store.write("views/name", "value") + assert @controller.fragment_exist?("name") + assert !@controller.fragment_exist?("other_name") end def test_fragment_exist_with_caching_disabled @controller.perform_caching = false - @store.write('views/name', 'value') - assert !@controller.fragment_exist?('name') - assert !@controller.fragment_exist?('other_name') + @store.write("views/name", "value") + assert !@controller.fragment_exist?("name") + assert !@controller.fragment_exist?("other_name") end def test_write_fragment_with_caching_enabled - assert_nil @store.read('views/name') - assert_equal 'value', @controller.write_fragment('name', 'value') - assert_equal 'value', @store.read('views/name') + assert_nil @store.read("views/name") + assert_equal "value", @controller.write_fragment("name", "value") + assert_equal "value", @store.read("views/name") end def test_write_fragment_with_caching_disabled - assert_nil @store.read('views/name') + assert_nil @store.read("views/name") @controller.perform_caching = false - assert_equal 'value', @controller.write_fragment('name', 'value') - assert_nil @store.read('views/name') + assert_equal "value", @controller.write_fragment("name", "value") + assert_nil @store.read("views/name") end def test_expire_fragment_with_simple_key - @store.write('views/name', 'value') - @controller.expire_fragment 'name' - assert_nil @store.read('views/name') + @store.write("views/name", "value") + @controller.expire_fragment "name" + assert_nil @store.read("views/name") end def test_expire_fragment_with_regexp - @store.write('views/name', 'value') - @store.write('views/another_name', 'another_value') - @store.write('views/primalgrasp', 'will not expire ;-)') + @store.write("views/name", "value") + @store.write("views/another_name", "another_value") + @store.write("views/primalgrasp", "will not expire ;-)") @controller.expire_fragment(/name/) - assert_nil @store.read('views/name') - assert_nil @store.read('views/another_name') - assert_equal 'will not expire ;-)', @store.read('views/primalgrasp') + assert_nil @store.read("views/name") + assert_nil @store.read("views/another_name") + assert_equal "will not expire ;-)", @store.read("views/primalgrasp") end def test_fragment_for - @store.write('views/expensive', 'fragment content') + @store.write("views/expensive", "fragment content") fragment_computed = false view_context = @controller.view_context - buffer = 'generated till now -> '.html_safe - buffer << view_context.send(:fragment_for, 'expensive') { fragment_computed = true } + buffer = "generated till now -> ".html_safe + buffer << view_context.send(:fragment_for, "expensive") { fragment_computed = true } assert !fragment_computed - assert_equal 'generated till now -> fragment content', buffer + assert_equal "generated till now -> fragment content", buffer end def test_html_safety - assert_nil @store.read('views/name') - content = 'value'.html_safe - assert_equal content, @controller.write_fragment('name', content) + assert_nil @store.read("views/name") + content = "value".html_safe + assert_equal content, @controller.write_fragment("name", content) - cached = @store.read('views/name') + cached = @store.read("views/name") assert_equal content, cached assert_equal String, cached.class - html_safe = @controller.read_fragment('name') + html_safe = @controller.read_fragment("name") assert_equal content, html_safe assert html_safe.html_safe? end @@ -325,7 +325,7 @@ class CacheHelperOutputBufferTest < ActionController::TestCase cache_helper.stub :output_buffer, output_buffer do assert_called_with cache_helper, :output_buffer=, [output_buffer.class.new(output_buffer)] do assert_nothing_raised do - cache_helper.send :fragment_for, 'Test fragment name', 'Test fragment', &Proc.new{ nil } + cache_helper.send :fragment_for, "Test fragment name", "Test fragment", &Proc.new{ nil } end end end @@ -346,7 +346,7 @@ class CacheHelperOutputBufferTest < ActionController::TestCase cache_helper.stub :output_buffer, output_buffer do assert_called_with cache_helper, :output_buffer=, [output_buffer.class.new(output_buffer)] do assert_nothing_raised do - cache_helper.send :fragment_for, 'Test fragment name', 'Test fragment', &Proc.new{ nil } + cache_helper.send :fragment_for, "Test fragment name", "Test fragment", &Proc.new{ nil } end end end @@ -376,27 +376,27 @@ class CollectionCacheController < ActionController::Base attr_accessor :partial_rendered_times def index - @customers = [Customer.new('david', params[:id] || 1)] + @customers = [Customer.new("david", params[:id] || 1)] end def index_ordered - @customers = [Customer.new('david', 1), Customer.new('david', 2), Customer.new('david', 3)] - render 'index' + @customers = [Customer.new("david", 1), Customer.new("david", 2), Customer.new("david", 3)] + render "index" end def index_explicit_render_in_controller - @customers = [Customer.new('david', 1)] - render partial: 'customers/customer', collection: @customers, cached: true + @customers = [Customer.new("david", 1)] + render partial: "customers/customer", collection: @customers, cached: true end def index_with_comment - @customers = [Customer.new('david', 1)] - render partial: 'customers/commented_customer', collection: @customers, as: :customer, cached: true + @customers = [Customer.new("david", 1)] + render partial: "customers/commented_customer", collection: @customers, as: :customer, cached: true end def index_with_callable_cache_key - @customers = [Customer.new('david', 1)] - render partial: 'customers/customer', collection: @customers, cached: -> customer { 'cached_david' } + @customers = [Customer.new("david", 1)] + render partial: "customers/customer", collection: @customers, cached: -> customer { "cached_david" } end end @@ -413,7 +413,7 @@ class CollectionCacheTest < ActionController::TestCase def test_collection_fetches_cached_views get :index assert_equal 1, @controller.partial_rendered_times - assert_customer_cached 'david/1', 'david, 1' + assert_customer_cached "david/1", "david, 1" get :index assert_equal 1, @controller.partial_rendered_times @@ -422,17 +422,17 @@ class CollectionCacheTest < ActionController::TestCase def test_preserves_order_when_reading_from_cache_plus_rendering get :index, params: { id: 2 } assert_equal 1, @controller.partial_rendered_times - assert_select ':root', 'david, 2' + assert_select ":root", "david, 2" get :index_ordered assert_equal 3, @controller.partial_rendered_times - assert_select ':root', "david, 1\n david, 2\n david, 3" + assert_select ":root", "david, 1\n david, 2\n david, 3" end def test_explicit_render_call_with_options get :index_explicit_render_in_controller - assert_select ':root', "david, 1" + assert_select ":root", "david, 1" end def test_caching_works_with_beginning_comment @@ -445,7 +445,7 @@ class CollectionCacheTest < ActionController::TestCase def test_caching_with_callable_cache_key get :index_with_callable_cache_key - assert_customer_cached 'cached_david', 'david, 1' + assert_customer_cached "cached_david", "david, 1" end private @@ -473,9 +473,9 @@ class FragmentCacheKeyTest < ActionController::TestCase def test_fragment_cache_key @controller.account_id = "123" - assert_equal 'views/v1/123/what a key', @controller.fragment_cache_key('what a key') + assert_equal "views/v1/123/what a key", @controller.fragment_cache_key("what a key") @controller.account_id = nil - assert_equal 'views/v1//what a key', @controller.fragment_cache_key('what a key') + assert_equal "views/v1//what a key", @controller.fragment_cache_key("what a key") end end diff --git a/actionpack/test/controller/content_type_test.rb b/actionpack/test/controller/content_type_test.rb index c02607b55e..467abb00f9 100644 --- a/actionpack/test/controller/content_type_test.rb +++ b/actionpack/test/controller/content_type_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class OldContentTypeController < ActionController::Base # :ported: diff --git a/actionpack/test/controller/default_url_options_with_before_action_test.rb b/actionpack/test/controller/default_url_options_with_before_action_test.rb index 12fbe0424e..0c49c87807 100644 --- a/actionpack/test/controller/default_url_options_with_before_action_test.rb +++ b/actionpack/test/controller/default_url_options_with_before_action_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class ControllerWithBeforeActionAndDefaultUrlOptions < ActionController::Base diff --git a/actionpack/test/controller/filters_test.rb b/actionpack/test/controller/filters_test.rb index 08271012e9..089c841956 100644 --- a/actionpack/test/controller/filters_test.rb +++ b/actionpack/test/controller/filters_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class ActionController::Base class << self @@ -114,7 +114,7 @@ class FilterTest < ActionController::TestCase def before_action_redirects @ran_filter ||= [] @ran_filter << "before_action_redirects" - redirect_to(:action => 'target_of_redirection') + redirect_to(:action => "target_of_redirection") end def unreached_after_action @@ -222,7 +222,7 @@ class FilterTest < ActionController::TestCase skip_before_action :clean_up_tmp, only: :login, if: -> { true } def login - render plain: 'ok' + render plain: "ok" end end @@ -234,7 +234,7 @@ class FilterTest < ActionController::TestCase skip_before_action :clean_up_tmp, if: -> { true }, except: :login def login - render plain: 'ok' + render plain: "ok" end end @@ -258,11 +258,11 @@ class FilterTest < ActionController::TestCase before_action :ensure_login, :only => :index def index - render plain: 'ok' + render plain: "ok" end def public - render plain: 'ok' + render plain: "ok" end end @@ -272,7 +272,7 @@ class FilterTest < ActionController::TestCase before_action :ensure_login def index - render plain: 'ok' + render plain: "ok" end private @@ -311,12 +311,12 @@ class FilterTest < ActionController::TestCase def conditional_in_parent_before @ran_filter ||= [] - @ran_filter << 'conditional_in_parent_before' + @ran_filter << "conditional_in_parent_before" end def conditional_in_parent_after @ran_filter ||= [] - @ran_filter << 'conditional_in_parent_after' + @ran_filter << "conditional_in_parent_after" end end @@ -421,11 +421,11 @@ class FilterTest < ActionController::TestCase before_action :second, :only => :foo def foo - render plain: 'foo' + render plain: "foo" end def bar - render plain: 'bar' + render plain: "bar" end protected @@ -458,20 +458,20 @@ class FilterTest < ActionController::TestCase def before_all @ran_filter ||= [] - @ran_filter << 'before_all' + @ran_filter << "before_all" end def after_all @ran_filter ||= [] - @ran_filter << 'after_all' + @ran_filter << "after_all" end def between_before_all_and_after_all @ran_filter ||= [] - @ran_filter << 'between_before_all_and_after_all' + @ran_filter << "between_before_all_and_after_all" end def show - render plain: 'hello' + render plain: "hello" end end @@ -532,11 +532,11 @@ class FilterTest < ActionController::TestCase private def find_only - @only = 'Only' + @only = "Only" end def find_except - @except = 'Except' + @except = "Except" end end @@ -611,12 +611,12 @@ class FilterTest < ActionController::TestCase end def test_if_is_ignored_when_used_with_only - test_process(SkipFilterUsingOnlyAndIf, 'login') + test_process(SkipFilterUsingOnlyAndIf, "login") assert_not @controller.instance_variable_defined?(:@ran_filter) end def test_except_is_ignored_when_used_with_if - test_process(SkipFilterUsingIfAndExcept, 'login') + test_process(SkipFilterUsingIfAndExcept, "login") assert_equal %w(ensure_login), @controller.instance_variable_get(:@ran_filter) end @@ -745,13 +745,13 @@ class FilterTest < ActionController::TestCase def test_actions_with_mixed_specialization_run_in_order assert_nothing_raised do - response = test_process(MixedSpecializationController, 'bar') - assert_equal 'bar', response.body + response = test_process(MixedSpecializationController, "bar") + assert_equal "bar", response.body end assert_nothing_raised do - response = test_process(MixedSpecializationController, 'foo') - assert_equal 'foo', response.body + response = test_process(MixedSpecializationController, "foo") + assert_equal "foo", response.body end end @@ -795,7 +795,7 @@ class FilterTest < ActionController::TestCase def test_conditional_skipping_of_actions_when_parent_action_is_also_conditional test_process(ChildOfConditionalParentController) assert_equal %w( conditional_in_parent_before conditional_in_parent_after ), @controller.instance_variable_get(:@ran_filter) - test_process(ChildOfConditionalParentController, 'another_action') + test_process(ChildOfConditionalParentController, "another_action") assert_not @controller.instance_variable_defined?(:@ran_filter) end @@ -824,15 +824,15 @@ class FilterTest < ActionController::TestCase end def test_actions_obey_only_and_except_for_implicit_actions - test_process(ImplicitActionsController, 'show') - assert_equal 'Except', @controller.instance_variable_get(:@except) + test_process(ImplicitActionsController, "show") + assert_equal "Except", @controller.instance_variable_get(:@except) assert_not @controller.instance_variable_defined?(:@only) - assert_equal 'show', response.body + assert_equal "show", response.body - test_process(ImplicitActionsController, 'edit') - assert_equal 'Only', @controller.instance_variable_get(:@only) + test_process(ImplicitActionsController, "edit") + assert_equal "Only", @controller.instance_variable_get(:@only) assert_not @controller.instance_variable_defined?(:@except) - assert_equal 'edit', response.body + assert_equal "edit", response.body end private @@ -933,23 +933,23 @@ class ControllerWithAllTypesOfFilters < PostsController private def before @ran_filter ||= [] - @ran_filter << 'before' + @ran_filter << "before" end def around - @ran_filter << 'around (before yield)' + @ran_filter << "around (before yield)" yield - @ran_filter << 'around (after yield)' + @ran_filter << "around (after yield)" end def after - @ran_filter << 'after' + @ran_filter << "after" end def around_again - @ran_filter << 'around_again (before yield)' + @ran_filter << "around_again (before yield)" yield - @ran_filter << 'around_again (after yield)' + @ran_filter << "around_again (after yield)" end end @@ -970,34 +970,34 @@ class YieldingAroundFiltersTest < ActionController::TestCase def test_base controller = PostsController - assert_nothing_raised { test_process(controller,'no_raise') } - assert_nothing_raised { test_process(controller,'raises_before') } - assert_nothing_raised { test_process(controller,'raises_after') } - assert_nothing_raised { test_process(controller,'no_action') } + assert_nothing_raised { test_process(controller,"no_raise") } + assert_nothing_raised { test_process(controller,"raises_before") } + assert_nothing_raised { test_process(controller,"raises_after") } + assert_nothing_raised { test_process(controller,"no_action") } end def test_with_symbol controller = ControllerWithSymbolAsFilter - assert_nothing_raised { test_process(controller,'no_raise') } - assert_raise(Before) { test_process(controller,'raises_before') } - assert_raise(After) { test_process(controller,'raises_after') } - assert_nothing_raised { test_process(controller,'no_raise') } + assert_nothing_raised { test_process(controller,"no_raise") } + assert_raise(Before) { test_process(controller,"raises_before") } + assert_raise(After) { test_process(controller,"raises_after") } + assert_nothing_raised { test_process(controller,"no_raise") } end def test_with_class controller = ControllerWithFilterClass - assert_nothing_raised { test_process(controller,'no_raise') } - assert_raise(After) { test_process(controller,'raises_after') } + assert_nothing_raised { test_process(controller,"no_raise") } + assert_raise(After) { test_process(controller,"raises_after") } end def test_with_instance controller = ControllerWithFilterInstance - assert_nothing_raised { test_process(controller,'no_raise') } - assert_raise(After) { test_process(controller,'raises_after') } + assert_nothing_raised { test_process(controller,"no_raise") } + assert_raise(After) { test_process(controller,"raises_after") } end def test_with_proc - test_process(ControllerWithProcFilter,'no_raise') + test_process(ControllerWithProcFilter,"no_raise") assert @controller.instance_variable_get(:@before) assert @controller.instance_variable_get(:@after) end @@ -1006,52 +1006,52 @@ class YieldingAroundFiltersTest < ActionController::TestCase controller = ControllerWithNestedFilters assert_nothing_raised do begin - test_process(controller,'raises_both') + test_process(controller,"raises_both") rescue Before, After end end assert_raise Before do begin - test_process(controller,'raises_both') + test_process(controller,"raises_both") rescue After end end end def test_action_order_with_all_action_types - test_process(ControllerWithAllTypesOfFilters,'no_raise') - assert_equal 'before around (before yield) around_again (before yield) around_again (after yield) after around (after yield)', @controller.instance_variable_get(:@ran_filter).join(' ') + test_process(ControllerWithAllTypesOfFilters,"no_raise") + assert_equal "before around (before yield) around_again (before yield) around_again (after yield) after around (after yield)", @controller.instance_variable_get(:@ran_filter).join(" ") end def test_action_order_with_skip_action_method - test_process(ControllerWithTwoLessFilters,'no_raise') - assert_equal 'before around (before yield) around (after yield)', @controller.instance_variable_get(:@ran_filter).join(' ') + test_process(ControllerWithTwoLessFilters,"no_raise") + assert_equal "before around (before yield) around (after yield)", @controller.instance_variable_get(:@ran_filter).join(" ") end def test_first_action_in_multiple_before_action_chain_halts controller = ::FilterTest::TestMultipleFiltersController.new - response = test_process(controller, 'fail_1') - assert_equal '', response.body + response = test_process(controller, "fail_1") + assert_equal "", response.body assert_equal 1, controller.instance_variable_get(:@try) end def test_second_action_in_multiple_before_action_chain_halts controller = ::FilterTest::TestMultipleFiltersController.new - response = test_process(controller, 'fail_2') - assert_equal '', response.body + response = test_process(controller, "fail_2") + assert_equal "", response.body assert_equal 2, controller.instance_variable_get(:@try) end def test_last_action_in_multiple_before_action_chain_halts controller = ::FilterTest::TestMultipleFiltersController.new - response = test_process(controller, 'fail_3') - assert_equal '', response.body + response = test_process(controller, "fail_3") + assert_equal "", response.body assert_equal 3, controller.instance_variable_get(:@try) end def test_skipping_with_skip_action_callback - test_process(SkipFilterUsingSkipActionCallback,'no_raise') - assert_equal 'before around (before yield) around (after yield)', @controller.instance_variable_get(:@ran_filter).join(' ') + test_process(SkipFilterUsingSkipActionCallback,"no_raise") + assert_equal "before around (before yield) around (after yield)", @controller.instance_variable_get(:@ran_filter).join(" ") end def test_deprecated_skip_action_callback diff --git a/actionpack/test/controller/flash_hash_test.rb b/actionpack/test/controller/flash_hash_test.rb index f87077dd86..be2bcb5ce2 100644 --- a/actionpack/test/controller/flash_hash_test.rb +++ b/actionpack/test/controller/flash_hash_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module ActionDispatch class FlashHashTest < ActiveSupport::TestCase @@ -7,62 +7,62 @@ module ActionDispatch end def test_set_get - @hash[:foo] = 'zomg' - assert_equal 'zomg', @hash[:foo] + @hash[:foo] = "zomg" + assert_equal "zomg", @hash[:foo] end def test_keys assert_equal [], @hash.keys - @hash['foo'] = 'zomg' - assert_equal ['foo'], @hash.keys + @hash["foo"] = "zomg" + assert_equal ["foo"], @hash.keys - @hash['bar'] = 'zomg' - assert_equal ['foo', 'bar'].sort, @hash.keys.sort + @hash["bar"] = "zomg" + assert_equal ["foo", "bar"].sort, @hash.keys.sort end def test_update - @hash['foo'] = 'bar' - @hash.update('foo' => 'baz', 'hello' => 'world') + @hash["foo"] = "bar" + @hash.update("foo" => "baz", "hello" => "world") - assert_equal 'baz', @hash['foo'] - assert_equal 'world', @hash['hello'] + assert_equal "baz", @hash["foo"] + assert_equal "world", @hash["hello"] end def test_key - @hash['foo'] = 'bar' + @hash["foo"] = "bar" - assert @hash.key?('foo') + assert @hash.key?("foo") assert @hash.key?(:foo) - assert_not @hash.key?('bar') + assert_not @hash.key?("bar") assert_not @hash.key?(:bar) end def test_delete - @hash['foo'] = 'bar' - @hash.delete 'foo' + @hash["foo"] = "bar" + @hash.delete "foo" - assert !@hash.key?('foo') - assert_nil @hash['foo'] + assert !@hash.key?("foo") + assert_nil @hash["foo"] end def test_to_hash - @hash['foo'] = 'bar' - assert_equal({'foo' => 'bar'}, @hash.to_hash) + @hash["foo"] = "bar" + assert_equal({"foo" => "bar"}, @hash.to_hash) - @hash.to_hash['zomg'] = 'aaron' - assert !@hash.key?('zomg') - assert_equal({'foo' => 'bar'}, @hash.to_hash) + @hash.to_hash["zomg"] = "aaron" + assert !@hash.key?("zomg") + assert_equal({"foo" => "bar"}, @hash.to_hash) end def test_to_session_value - @hash['foo'] = 'bar' - assert_equal({ 'discard' => [], 'flashes' => { 'foo' => 'bar' } }, @hash.to_session_value) + @hash["foo"] = "bar" + assert_equal({ "discard" => [], "flashes" => { "foo" => "bar" } }, @hash.to_session_value) - @hash.now['qux'] = 1 - assert_equal({ 'flashes' => { 'foo' => 'bar' }, 'discard' => [] }, @hash.to_session_value) + @hash.now["qux"] = 1 + assert_equal({ "flashes" => { "foo" => "bar" }, "discard" => [] }, @hash.to_session_value) - @hash.discard('foo') + @hash.discard("foo") assert_equal(nil, @hash.to_session_value) @hash.sweep @@ -71,19 +71,19 @@ module ActionDispatch def test_from_session_value # {"session_id"=>"f8e1b8152ba7609c28bbb17ec9263ba7", "flash"=>#, @closed=false, @flashes={"greeting"=>"Hello", "farewell"=>"Goodbye"}, @now=nil>} - rails_3_2_cookie = 'BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJWY4ZTFiODE1MmJhNzYwOWMyOGJiYjE3ZWM5MjYzYmE3BjsAVEkiCmZsYXNoBjsARm86JUFjdGlvbkRpc3BhdGNoOjpGbGFzaDo6Rmxhc2hIYXNoCToKQHVzZWRvOghTZXQGOgpAaGFzaHsGSSINZmFyZXdlbGwGOwBUVDoMQGNsb3NlZEY6DUBmbGFzaGVzewdJIg1ncmVldGluZwY7AFRJIgpIZWxsbwY7AFRJIg1mYXJld2VsbAY7AFRJIgxHb29kYnllBjsAVDoJQG5vdzA=' + rails_3_2_cookie = "BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJWY4ZTFiODE1MmJhNzYwOWMyOGJiYjE3ZWM5MjYzYmE3BjsAVEkiCmZsYXNoBjsARm86JUFjdGlvbkRpc3BhdGNoOjpGbGFzaDo6Rmxhc2hIYXNoCToKQHVzZWRvOghTZXQGOgpAaGFzaHsGSSINZmFyZXdlbGwGOwBUVDoMQGNsb3NlZEY6DUBmbGFzaGVzewdJIg1ncmVldGluZwY7AFRJIgpIZWxsbwY7AFRJIg1mYXJld2VsbAY7AFRJIgxHb29kYnllBjsAVDoJQG5vdzA=" session = Marshal.load(Base64.decode64(rails_3_2_cookie)) - hash = Flash::FlashHash.from_session_value(session['flash']) - assert_equal({'greeting' => 'Hello'}, hash.to_hash) + hash = Flash::FlashHash.from_session_value(session["flash"]) + assert_equal({"greeting" => "Hello"}, hash.to_hash) assert_equal(nil, hash.to_session_value) end def test_from_session_value_on_json_serializer decrypted_data = "{ \"session_id\":\"d98bdf6d129618fc2548c354c161cfb5\", \"flash\":{\"discard\":[\"farewell\"], \"flashes\":{\"greeting\":\"Hello\",\"farewell\":\"Goodbye\"}} }" session = ActionDispatch::Cookies::JsonSerializer.load(decrypted_data) - hash = Flash::FlashHash.from_session_value(session['flash']) + hash = Flash::FlashHash.from_session_value(session["flash"]) - assert_equal({'greeting' => 'Hello'}, hash.to_hash) + assert_equal({"greeting" => "Hello"}, hash.to_hash) assert_equal(nil, hash.to_session_value) assert_equal "Hello", hash[:greeting] assert_equal "Hello", hash["greeting"] @@ -91,15 +91,15 @@ module ActionDispatch def test_empty? assert @hash.empty? - @hash['zomg'] = 'bears' + @hash["zomg"] = "bears" assert !@hash.empty? @hash.clear assert @hash.empty? end def test_each - @hash['hello'] = 'world' - @hash['foo'] = 'bar' + @hash["hello"] = "world" + @hash["foo"] = "bar" things = [] @hash.each do |k,v| @@ -110,13 +110,13 @@ module ActionDispatch end def test_replace - @hash['hello'] = 'world' - @hash.replace('omg' => 'aaron') - assert_equal({'omg' => 'aaron'}, @hash.to_hash) + @hash["hello"] = "world" + @hash.replace("omg" => "aaron") + assert_equal({"omg" => "aaron"}, @hash.to_hash) end def test_discard_no_args - @hash['hello'] = 'world' + @hash["hello"] = "world" @hash.discard @hash.sweep @@ -124,49 +124,49 @@ module ActionDispatch end def test_discard_one_arg - @hash['hello'] = 'world' - @hash['omg'] = 'world' - @hash.discard 'hello' + @hash["hello"] = "world" + @hash["omg"] = "world" + @hash.discard "hello" @hash.sweep - assert_equal({'omg' => 'world'}, @hash.to_hash) + assert_equal({"omg" => "world"}, @hash.to_hash) end def test_keep_sweep - @hash['hello'] = 'world' + @hash["hello"] = "world" @hash.sweep - assert_equal({'hello' => 'world'}, @hash.to_hash) + assert_equal({"hello" => "world"}, @hash.to_hash) end def test_update_sweep - @hash['hello'] = 'world' - @hash.update({'hi' => 'mom'}) + @hash["hello"] = "world" + @hash.update({"hi" => "mom"}) @hash.sweep - assert_equal({'hello' => 'world', 'hi' => 'mom'}, @hash.to_hash) + assert_equal({"hello" => "world", "hi" => "mom"}, @hash.to_hash) end def test_update_delete_sweep - @hash['hello'] = 'world' - @hash.delete 'hello' - @hash.update({'hello' => 'mom'}) + @hash["hello"] = "world" + @hash.delete "hello" + @hash.update({"hello" => "mom"}) @hash.sweep - assert_equal({'hello' => 'mom'}, @hash.to_hash) + assert_equal({"hello" => "mom"}, @hash.to_hash) end def test_delete_sweep - @hash['hello'] = 'world' - @hash['hi'] = 'mom' - @hash.delete 'hi' + @hash["hello"] = "world" + @hash["hi"] = "mom" + @hash.delete "hi" @hash.sweep - assert_equal({'hello' => 'world'}, @hash.to_hash) + assert_equal({"hello" => "world"}, @hash.to_hash) end def test_clear_sweep - @hash['hello'] = 'world' + @hash["hello"] = "world" @hash.clear @hash.sweep @@ -174,38 +174,38 @@ module ActionDispatch end def test_replace_sweep - @hash['hello'] = 'world' - @hash.replace({'hi' => 'mom'}) + @hash["hello"] = "world" + @hash.replace({"hi" => "mom"}) @hash.sweep - assert_equal({'hi' => 'mom'}, @hash.to_hash) + assert_equal({"hi" => "mom"}, @hash.to_hash) end def test_discard_then_add - @hash['hello'] = 'world' - @hash['omg'] = 'world' - @hash.discard 'hello' - @hash['hello'] = 'world' + @hash["hello"] = "world" + @hash["omg"] = "world" + @hash.discard "hello" + @hash["hello"] = "world" @hash.sweep - assert_equal({'omg' => 'world', 'hello' => 'world'}, @hash.to_hash) + assert_equal({"omg" => "world", "hello" => "world"}, @hash.to_hash) end def test_keep_all_sweep - @hash['hello'] = 'world' - @hash['omg'] = 'world' - @hash.discard 'hello' + @hash["hello"] = "world" + @hash["omg"] = "world" + @hash.discard "hello" @hash.keep @hash.sweep - assert_equal({'omg' => 'world', 'hello' => 'world'}, @hash.to_hash) + assert_equal({"omg" => "world", "hello" => "world"}, @hash.to_hash) end def test_double_sweep - @hash['hello'] = 'world' + @hash["hello"] = "world" @hash.sweep - assert_equal({'hello' => 'world'}, @hash.to_hash) + assert_equal({"hello" => "world"}, @hash.to_hash) @hash.sweep assert_equal({}, @hash.to_hash) diff --git a/actionpack/test/controller/flash_test.rb b/actionpack/test/controller/flash_test.rb index eef48e8480..6397407217 100644 --- a/actionpack/test/controller/flash_test.rb +++ b/actionpack/test/controller/flash_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'active_support/key_generator' +require "abstract_unit" +require "active_support/key_generator" class FlashTest < ActionController::TestCase class TestController < ActionController::Base @@ -53,7 +53,7 @@ class FlashTest < ActionController::TestCase end # methods for test_sweep_after_halted_action_chain - before_action :halt_and_redir, only: 'filter_halting_action' + before_action :halt_and_redir, only: "filter_halting_action" def std_action @flash_copy = {}.update(flash) @@ -71,11 +71,11 @@ class FlashTest < ActionController::TestCase end def redirect_with_alert - redirect_to '/nowhere', :alert => "Beware the nowheres!" + redirect_to "/nowhere", :alert => "Beware the nowheres!" end def redirect_with_notice - redirect_to '/somewhere', :notice => "Good luck in the somewheres!" + redirect_to "/somewhere", :notice => "Good luck in the somewheres!" end def render_with_flash_now_alert @@ -89,11 +89,11 @@ class FlashTest < ActionController::TestCase end def redirect_with_other_flashes - redirect_to '/wonderland', :flash => { :joyride => "Horses!" } + redirect_to "/wonderland", :flash => { :joyride => "Horses!" } end def redirect_with_foo_flash - redirect_to "/wonderland", :foo => 'for great justice' + redirect_to "/wonderland", :foo => "for great justice" end end @@ -239,8 +239,8 @@ class FlashTest < ActionController::TestCase end class FlashIntegrationTest < ActionDispatch::IntegrationTest - SessionKey = '_myapp_session' - Generator = ActiveSupport::LegacyKeyGenerator.new('b3c631c314c0bbca50c1b2843150fe33') + SessionKey = "_myapp_session" + Generator = ActiveSupport::LegacyKeyGenerator.new("b3c631c314c0bbca50c1b2843150fe33") class TestController < ActionController::Base add_flash_types :bar @@ -267,11 +267,11 @@ class FlashIntegrationTest < ActionDispatch::IntegrationTest def test_flash with_test_route_set do - get '/set_flash' + get "/set_flash" assert_response :success assert_equal "hello", @request.flash["that"] - get '/use_flash' + get "/use_flash" assert_response :success assert_equal "flash: hello", @response.body end @@ -279,7 +279,7 @@ class FlashIntegrationTest < ActionDispatch::IntegrationTest def test_just_using_flash_does_not_stream_a_cookie_back with_test_route_set do - get '/use_flash' + get "/use_flash" assert_response :success assert_nil @response.headers["Set-Cookie"] assert_equal "flash: ", @response.body @@ -288,25 +288,25 @@ class FlashIntegrationTest < ActionDispatch::IntegrationTest def test_setting_flash_does_not_raise_in_following_requests with_test_route_set do - env = { 'action_dispatch.request.flash_hash' => ActionDispatch::Flash::FlashHash.new } - get '/set_flash', env: env - get '/set_flash', env: env + env = { "action_dispatch.request.flash_hash" => ActionDispatch::Flash::FlashHash.new } + get "/set_flash", env: env + get "/set_flash", env: env end end def test_setting_flash_now_does_not_raise_in_following_requests with_test_route_set do - env = { 'action_dispatch.request.flash_hash' => ActionDispatch::Flash::FlashHash.new } - get '/set_flash_now', env: env - get '/set_flash_now', env: env + env = { "action_dispatch.request.flash_hash" => ActionDispatch::Flash::FlashHash.new } + get "/set_flash_now", env: env + get "/set_flash_now", env: env end end def test_added_flash_types_method with_test_route_set do - get '/set_bar' + get "/set_bar" assert_response :success - assert_equal 'for great justice', @controller.bar + assert_equal "for great justice", @controller.bar end end @@ -324,7 +324,7 @@ class FlashIntegrationTest < ActionDispatch::IntegrationTest with_routing do |set| set.draw do ActiveSupport::Deprecation.silence do - get ':action', :to => FlashIntegrationTest::TestController + get ":action", :to => FlashIntegrationTest::TestController end end diff --git a/actionpack/test/controller/force_ssl_test.rb b/actionpack/test/controller/force_ssl_test.rb index 03a9c9ae78..5c51f9e29b 100644 --- a/actionpack/test/controller/force_ssl_test.rb +++ b/actionpack/test/controller/force_ssl_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class ForceSSLController < ActionController::Base def banana @@ -17,13 +17,13 @@ end class ForceSSLCustomOptions < ForceSSLController force_ssl :host => "secure.example.com", :only => :redirect_host force_ssl :port => 8443, :only => :redirect_port - force_ssl :subdomain => 'secure', :only => :redirect_subdomain - force_ssl :domain => 'secure.com', :only => :redirect_domain - force_ssl :path => '/foo', :only => :redirect_path + force_ssl :subdomain => "secure", :only => :redirect_subdomain + force_ssl :domain => "secure.com", :only => :redirect_domain + force_ssl :path => "/foo", :only => :redirect_path force_ssl :status => :found, :only => :redirect_status - force_ssl :flash => { :message => 'Foo, Bar!' }, :only => :redirect_flash - force_ssl :alert => 'Foo, Bar!', :only => :redirect_alert - force_ssl :notice => 'Foo, Bar!', :only => :redirect_notice + force_ssl :flash => { :message => "Foo, Bar!" }, :only => :redirect_flash + force_ssl :alert => "Foo, Bar!", :only => :redirect_alert + force_ssl :notice => "Foo, Bar!", :only => :redirect_notice def force_ssl_action render plain: action_name @@ -64,7 +64,7 @@ class ForceSSLIfCondition < ForceSSLController force_ssl :if => :use_force_ssl? def use_force_ssl? - action_name == 'cheeseburger' + action_name == "cheeseburger" end end @@ -73,7 +73,7 @@ class ForceSSLFlash < ForceSSLController def set_flash flash["that"] = "hello" - redirect_to '/force_ssl_flash/cheeseburger' + redirect_to "/force_ssl_flash/cheeseburger" end def use_flash @@ -85,10 +85,10 @@ end class RedirectToSSL < ForceSSLController def banana - force_ssl_redirect || render(plain: 'monkey') + force_ssl_redirect || render(plain: "monkey") end def cheeseburger - force_ssl_redirect('secure.cheeseburger.host') || render(plain: 'ihaz') + force_ssl_redirect("secure.cheeseburger.host") || render(plain: "ihaz") end end @@ -114,7 +114,7 @@ end class ForceSSLCustomOptionsTest < ActionController::TestCase def setup - @request.env['HTTP_HOST'] = 'www.example.com:80' + @request.env["HTTP_HOST"] = "www.example.com:80" end def test_redirect_to_custom_host @@ -230,14 +230,14 @@ class ForceSSLFlashTest < ActionController::TestCase assert_equal "http://test.host/force_ssl_flash/cheeseburger", redirect_to_url # FIXME: AC::TestCase#build_request_uri doesn't build a new uri if PATH_INFO exists - @request.env.delete('PATH_INFO') + @request.env.delete("PATH_INFO") get :cheeseburger assert_response 301 assert_equal "https://test.host/force_ssl_flash/cheeseburger", redirect_to_url # FIXME: AC::TestCase#build_request_uri doesn't build a new uri if PATH_INFO exists - @request.env.delete('PATH_INFO') + @request.env.delete("PATH_INFO") get :use_flash assert_equal "hello", @controller.instance_variable_get("@flash_copy")["that"] @@ -251,15 +251,15 @@ class ForceSSLDuplicateRoutesTest < ActionController::TestCase def test_force_ssl_redirects_to_same_path with_routing do |set| set.draw do - get '/foo', :to => 'force_ssl_controller_level#banana' - get '/bar', :to => 'force_ssl_controller_level#banana' + get "/foo", :to => "force_ssl_controller_level#banana" + get "/bar", :to => "force_ssl_controller_level#banana" end - @request.env['PATH_INFO'] = '/bar' + @request.env["PATH_INFO"] = "/bar" get :banana assert_response 301 - assert_equal 'https://test.host/bar', redirect_to_url + assert_equal "https://test.host/bar", redirect_to_url end end end @@ -270,12 +270,12 @@ class ForceSSLFormatTest < ActionController::TestCase def test_force_ssl_redirects_to_same_format with_routing do |set| set.draw do - get '/foo', :to => 'force_ssl_controller_level#banana' + get "/foo", :to => "force_ssl_controller_level#banana" end get :banana, format: :json assert_response 301 - assert_equal 'https://test.host/foo.json', redirect_to_url + assert_equal "https://test.host/foo.json", redirect_to_url end end end @@ -286,18 +286,18 @@ class ForceSSLOptionalSegmentsTest < ActionController::TestCase def test_force_ssl_redirects_to_same_format with_routing do |set| set.draw do - scope '(:locale)' do - defaults :locale => 'en' do - get '/foo', :to => 'force_ssl_controller_level#banana' + scope "(:locale)" do + defaults :locale => "en" do + get "/foo", :to => "force_ssl_controller_level#banana" end end end - @request.env['PATH_INFO'] = '/en/foo' - get :banana, params: { locale: 'en' } - assert_equal 'en', @controller.params[:locale] + @request.env["PATH_INFO"] = "/en/foo" + get :banana, params: { locale: "en" } + assert_equal "en", @controller.params[:locale] assert_response 301 - assert_equal 'https://test.host/en/foo', redirect_to_url + assert_equal "https://test.host/en/foo", redirect_to_url end end end @@ -316,17 +316,17 @@ class RedirectToSSLTest < ActionController::TestCase end def test_cheeseburgers_does_not_redirect_if_already_https - request.env['HTTPS'] = 'on' + request.env["HTTPS"] = "on" get :cheeseburger assert_response 200 - assert_equal 'ihaz', response.body + assert_equal "ihaz", response.body end end class ForceSSLControllerLevelTest < ActionController::TestCase def test_no_redirect_websocket_ssl_request - request.env['rack.url_scheme'] = 'wss' - request.env['Upgrade'] = 'websocket' + request.env["rack.url_scheme"] = "wss" + request.env["Upgrade"] = "websocket" get :cheeseburger assert_response 200 end diff --git a/actionpack/test/controller/form_builder_test.rb b/actionpack/test/controller/form_builder_test.rb index 99eeaf9ab6..5a3dc2ee03 100644 --- a/actionpack/test/controller/form_builder_test.rb +++ b/actionpack/test/controller/form_builder_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class FormBuilderController < ActionController::Base class SpecializedFormBuilder < ActionView::Helpers::FormBuilder ; end diff --git a/actionpack/test/controller/helper_test.rb b/actionpack/test/controller/helper_test.rb index ef85e141a0..a8d8d5d798 100644 --- a/actionpack/test/controller/helper_test.rb +++ b/actionpack/test/controller/helper_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' +require "abstract_unit" -ActionController::Base.helpers_path = File.expand_path('../../fixtures/helpers', __FILE__) +ActionController::Base.helpers_path = File.expand_path("../../fixtures/helpers", __FILE__) module Fun class GamesController < ActionController::Base @@ -39,7 +39,7 @@ class JustMeController < ActionController::Base end def lib - render :inline => '<%= useful_function %>' + render :inline => "<%= useful_function %>" end end @@ -48,7 +48,7 @@ end class HelpersPathsController < ActionController::Base paths = ["helpers2_pack", "helpers1_pack"].map do |path| - File.join(File.expand_path('../../fixtures', __FILE__), path) + File.join(File.expand_path("../../fixtures", __FILE__), path) end $:.unshift(*paths) @@ -61,7 +61,7 @@ class HelpersPathsController < ActionController::Base end class HelpersTypoController < ActionController::Base - path = File.expand_path('../../fixtures/helpers_typo', __FILE__) + path = File.expand_path("../../fixtures/helpers_typo", __FILE__) $:.unshift(path) self.helpers_path = path end @@ -89,7 +89,7 @@ class HelpersTypoControllerTest < ActiveSupport::TestCase end def test_helper_typo_error_message - e = assert_raise(NameError) { HelpersTypoController.helper 'admin/users' } + e = assert_raise(NameError) { HelpersTypoController.helper "admin/users" } assert_equal "Couldn't find Admin::UsersHelper, expected it to be defined in helpers/admin/users_helper.rb", e.message end @@ -106,7 +106,7 @@ class HelperTest < ActiveSupport::TestCase def setup # Increment symbol counter. - @symbol = (@@counter ||= 'A0').succ!.dup + @symbol = (@@counter ||= "A0").succ!.dup # Generate new controller class. controller_class_name = "Helper#{@symbol}Controller" @@ -139,7 +139,7 @@ class HelperTest < ActiveSupport::TestCase end def test_helper_for_nested_controller - assert_equal 'hello: Iz guuut!', + assert_equal "hello: Iz guuut!", call_controller(Fun::GamesController, "render_hello_world").last.body end @@ -178,7 +178,7 @@ class HelperTest < ActiveSupport::TestCase end def test_all_helpers_with_alternate_helper_dir - @controller_class.helpers_path = File.expand_path('../../fixtures/alternate_helpers', __FILE__) + @controller_class.helpers_path = File.expand_path("../../fixtures/alternate_helpers", __FILE__) # Reload helpers @controller_class._helpers = Module.new @@ -224,9 +224,9 @@ class HelperTest < ActiveSupport::TestCase end def test_helper_proxy_config - AllHelpersController.config.my_var = 'smth' + AllHelpersController.config.my_var = "smth" - assert_equal 'smth', AllHelpersController.helpers.config.my_var + assert_equal "smth", AllHelpersController.helpers.config.my_var end private @@ -243,7 +243,7 @@ class HelperTest < ActiveSupport::TestCase end def test_helper=(helper_module) - silence_warnings { self.class.const_set('TestHelper', helper_module) } + silence_warnings { self.class.const_set("TestHelper", helper_module) } end end @@ -251,23 +251,23 @@ end class IsolatedHelpersTest < ActionController::TestCase class A < ActionController::Base def index - render :inline => '<%= shout %>' + render :inline => "<%= shout %>" end end class B < A - helper { def shout; 'B' end } + helper { def shout; "B" end } def index - render :inline => '<%= shout %>' + render :inline => "<%= shout %>" end end class C < A - helper { def shout; 'C' end } + helper { def shout; "C" end } def index - render :inline => '<%= shout %>' + render :inline => "<%= shout %>" end end @@ -277,7 +277,7 @@ class IsolatedHelpersTest < ActionController::TestCase def setup super - @request.action = 'index' + @request.action = "index" end def test_helper_in_a @@ -285,10 +285,10 @@ class IsolatedHelpersTest < ActionController::TestCase end def test_helper_in_b - assert_equal 'B', call_controller(B, "index").last.body + assert_equal "B", call_controller(B, "index").last.body end def test_helper_in_c - assert_equal 'C', call_controller(C, "index").last.body + assert_equal "C", call_controller(C, "index").last.body end end diff --git a/actionpack/test/controller/http_basic_authentication_test.rb b/actionpack/test/controller/http_basic_authentication_test.rb index adcf259317..26947dd2d2 100644 --- a/actionpack/test/controller/http_basic_authentication_test.rb +++ b/actionpack/test/controller/http_basic_authentication_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class HttpBasicAuthenticationTest < ActionController::TestCase class DummyController < ActionController::Base @@ -14,31 +14,31 @@ class HttpBasicAuthenticationTest < ActionController::TestCase end def display - render plain: 'Definitely Maybe' if @logged_in + render plain: "Definitely Maybe" if @logged_in end def show - render plain: 'Only for loooooong credentials' + render plain: "Only for loooooong credentials" end def special_creds - render plain: 'Only for special credentials' + render plain: "Only for special credentials" end def search - render plain: 'All inline' + render plain: "All inline" end private def authenticate authenticate_or_request_with_http_basic do |username, password| - username == 'lifo' && password == 'world' + username == "lifo" && password == "world" end end def authenticate_with_request - if authenticate_with_http_basic { |username, password| username == 'pretty' && password == 'please' } + if authenticate_with_http_basic { |username, password| username == "pretty" && password == "please" } @logged_in = true else request_http_basic_authentication("SuperSecret", "Authentication Failed\n") @@ -53,42 +53,42 @@ class HttpBasicAuthenticationTest < ActionController::TestCase def authenticate_long_credentials authenticate_or_request_with_http_basic do |username, password| - username == '1234567890123456789012345678901234567890' && password == '1234567890123456789012345678901234567890' + username == "1234567890123456789012345678901234567890" && password == "1234567890123456789012345678901234567890" end end end - AUTH_HEADERS = ['HTTP_AUTHORIZATION', 'X-HTTP_AUTHORIZATION', 'X_HTTP_AUTHORIZATION', 'REDIRECT_X_HTTP_AUTHORIZATION'] + AUTH_HEADERS = ["HTTP_AUTHORIZATION", "X-HTTP_AUTHORIZATION", "X_HTTP_AUTHORIZATION", "REDIRECT_X_HTTP_AUTHORIZATION"] tests DummyController AUTH_HEADERS.each do |header| test "successful authentication with #{header.downcase}" do - @request.env[header] = encode_credentials('lifo', 'world') + @request.env[header] = encode_credentials("lifo", "world") get :index assert_response :success - assert_equal 'Hello Secret', @response.body, "Authentication failed for request header #{header}" + assert_equal "Hello Secret", @response.body, "Authentication failed for request header #{header}" end test "successful authentication with #{header.downcase} and long credentials" do - @request.env[header] = encode_credentials('1234567890123456789012345678901234567890', '1234567890123456789012345678901234567890') + @request.env[header] = encode_credentials("1234567890123456789012345678901234567890", "1234567890123456789012345678901234567890") get :show assert_response :success - assert_equal 'Only for loooooong credentials', @response.body, "Authentication failed for request header #{header} and long credentials" + assert_equal "Only for loooooong credentials", @response.body, "Authentication failed for request header #{header} and long credentials" end end AUTH_HEADERS.each do |header| test "unsuccessful authentication with #{header.downcase}" do - @request.env[header] = encode_credentials('h4x0r', 'world') + @request.env[header] = encode_credentials("h4x0r", "world") get :index assert_response :unauthorized assert_equal "HTTP Basic: Access denied.\n", @response.body, "Authentication didn't fail for request header #{header}" end test "unsuccessful authentication with #{header.downcase} and long credentials" do - @request.env[header] = encode_credentials('h4x0rh4x0rh4x0rh4x0rh4x0rh4x0rh4x0rh4x0r', 'worldworldworldworldworldworldworldworld') + @request.env[header] = encode_credentials("h4x0rh4x0rh4x0rh4x0rh4x0rh4x0rh4x0rh4x0r", "worldworldworldworldworldworldworldworld") get :show assert_response :unauthorized @@ -104,19 +104,19 @@ class HttpBasicAuthenticationTest < ActionController::TestCase end def test_encode_credentials_has_no_newline - username = 'laskjdfhalksdjfhalkjdsfhalksdjfhklsdjhalksdjfhalksdjfhlakdsjfh' - password = 'kjfhueyt9485osdfasdkljfh4lkjhakldjfhalkdsjf' + username = "laskjdfhalksdjfhalkjdsfhalksdjfhklsdjhalksdjfhalksdjfhlakdsjfh" + password = "kjfhueyt9485osdfasdkljfh4lkjhakldjfhalkdsjf" result = ActionController::HttpAuthentication::Basic.encode_credentials( username, password) assert_no_match(/\n/, result) end test "successful authentication with uppercase authorization scheme" do - @request.env['HTTP_AUTHORIZATION'] = "BASIC #{::Base64.encode64("lifo:world")}" + @request.env["HTTP_AUTHORIZATION"] = "BASIC #{::Base64.encode64("lifo:world")}" get :index assert_response :success - assert_equal 'Hello Secret', @response.body, 'Authentication failed when authorization scheme BASIC' + assert_equal "Hello Secret", @response.body, "Authentication failed when authorization scheme BASIC" end test "authentication request without credential" do @@ -124,47 +124,47 @@ class HttpBasicAuthenticationTest < ActionController::TestCase assert_response :unauthorized assert_equal "Authentication Failed\n", @response.body - assert_equal 'Basic realm="SuperSecret"', @response.headers['WWW-Authenticate'] + assert_equal 'Basic realm="SuperSecret"', @response.headers["WWW-Authenticate"] end test "authentication request with invalid credential" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials('pretty', 'foo') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials("pretty", "foo") get :display assert_response :unauthorized assert_equal "Authentication Failed\n", @response.body - assert_equal 'Basic realm="SuperSecret"', @response.headers['WWW-Authenticate'] + assert_equal 'Basic realm="SuperSecret"', @response.headers["WWW-Authenticate"] end test "authentication request with valid credential" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials('pretty', 'please') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials("pretty", "please") get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with valid credential special chars" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials('login!@#$%^&*()_+{}[];"\',./<>?`~ \n\r\t', 'pwd:!@#$%^&*()_+{}[];"\',./<>?`~ \n\r\t') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials('login!@#$%^&*()_+{}[];"\',./<>?`~ \n\r\t', 'pwd:!@#$%^&*()_+{}[];"\',./<>?`~ \n\r\t') get :special_creds assert_response :success - assert_equal 'Only for special credentials', @response.body + assert_equal "Only for special credentials", @response.body end test "authenticate with class method" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials('David', 'Goliath') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials("David", "Goliath") get :search assert_response :success - @request.env['HTTP_AUTHORIZATION'] = encode_credentials('David', 'WRONG!') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials("David", "WRONG!") get :search assert_response :unauthorized end test "authentication request with wrong scheme" do - header = 'Bearer ' + encode_credentials('David', 'Goliath').split(' ', 2)[1] - @request.env['HTTP_AUTHORIZATION'] = header + header = "Bearer " + encode_credentials("David", "Goliath").split(" ", 2)[1] + @request.env["HTTP_AUTHORIZATION"] = header get :search assert_response :unauthorized end diff --git a/actionpack/test/controller/http_digest_authentication_test.rb b/actionpack/test/controller/http_digest_authentication_test.rb index f06912bd5a..75ae288d4c 100644 --- a/actionpack/test/controller/http_digest_authentication_test.rb +++ b/actionpack/test/controller/http_digest_authentication_test.rb @@ -1,20 +1,20 @@ -require 'abstract_unit' -require 'active_support/key_generator' +require "abstract_unit" +require "active_support/key_generator" class HttpDigestAuthenticationTest < ActionController::TestCase class DummyDigestController < ActionController::Base before_action :authenticate, only: :index before_action :authenticate_with_request, only: :display - USERS = { 'lifo' => 'world', 'pretty' => 'please', - 'dhh' => ::Digest::MD5::hexdigest(["dhh","SuperSecret","secret"].join(":"))} + USERS = { "lifo" => "world", "pretty" => "please", + "dhh" => ::Digest::MD5::hexdigest(["dhh","SuperSecret","secret"].join(":"))} def index render plain: "Hello Secret" end def display - render plain: 'Definitely Maybe' if @logged_in + render plain: "Definitely Maybe" if @logged_in end private @@ -35,7 +35,7 @@ class HttpDigestAuthenticationTest < ActionController::TestCase end end - AUTH_HEADERS = ['HTTP_AUTHORIZATION', 'X-HTTP_AUTHORIZATION', 'X_HTTP_AUTHORIZATION', 'REDIRECT_X_HTTP_AUTHORIZATION'] + AUTH_HEADERS = ["HTTP_AUTHORIZATION", "X-HTTP_AUTHORIZATION", "X_HTTP_AUTHORIZATION", "REDIRECT_X_HTTP_AUTHORIZATION"] tests DummyDigestController @@ -51,17 +51,17 @@ class HttpDigestAuthenticationTest < ActionController::TestCase AUTH_HEADERS.each do |header| test "successful authentication with #{header.downcase}" do - @request.env[header] = encode_credentials(:username => 'lifo', :password => 'world') + @request.env[header] = encode_credentials(:username => "lifo", :password => "world") get :index assert_response :success - assert_equal 'Hello Secret', @response.body, "Authentication failed for request header #{header}" + assert_equal "Hello Secret", @response.body, "Authentication failed for request header #{header}" end end AUTH_HEADERS.each do |header| test "unsuccessful authentication with #{header.downcase}" do - @request.env[header] = encode_credentials(:username => 'h4x0r', :password => 'world') + @request.env[header] = encode_credentials(:username => "h4x0r", :password => "world") get :index assert_response :unauthorized @@ -74,21 +74,21 @@ class HttpDigestAuthenticationTest < ActionController::TestCase assert_response :unauthorized assert_equal "Authentication Failed", @response.body - credentials = decode_credentials(@response.headers['WWW-Authenticate']) - assert_equal 'SuperSecret', credentials[:realm] + credentials = decode_credentials(@response.headers["WWW-Authenticate"]) + assert_equal "SuperSecret", credentials[:realm] end test "authentication request with nil credentials" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => nil, :password => nil) + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => nil, :password => nil) get :index assert_response :unauthorized assert_equal "HTTP Digest: Access denied.\n", @response.body, "Authentication didn't fail for request" - assert_not_equal 'Hello Secret', @response.body, "Authentication didn't fail for request" + assert_not_equal "Hello Secret", @response.body, "Authentication didn't fail for request" end test "authentication request with invalid password" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'foo') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "foo") get :display assert_response :unauthorized @@ -96,7 +96,7 @@ class HttpDigestAuthenticationTest < ActionController::TestCase end test "authentication request with invalid nonce" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'please', :nonce => "xxyyzz") + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "please", :nonce => "xxyyzz") get :display assert_response :unauthorized @@ -104,7 +104,7 @@ class HttpDigestAuthenticationTest < ActionController::TestCase end test "authentication request with invalid opaque" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'foo', :opaque => "xxyyzz") + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "foo", :opaque => "xxyyzz") get :display assert_response :unauthorized @@ -112,7 +112,7 @@ class HttpDigestAuthenticationTest < ActionController::TestCase end test "authentication request with invalid realm" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'foo', :realm => "NotSecret") + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "foo", :realm => "NotSecret") get :display assert_response :unauthorized @@ -120,127 +120,127 @@ class HttpDigestAuthenticationTest < ActionController::TestCase end test "authentication request with valid credential" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'please') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "please") get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with valid credential and nil session" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'please') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "please") get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with request-uri that doesn't match credentials digest-uri" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'please') - @request.env['PATH_INFO'] = "/proxied/uri" + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "please") + @request.env["PATH_INFO"] = "/proxied/uri" get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with absolute request uri (as in webrick)" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'please') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "please") @request.env["SERVER_NAME"] = "test.host" - @request.env['PATH_INFO'] = "/http_digest_authentication_test/dummy_digest" + @request.env["PATH_INFO"] = "/http_digest_authentication_test/dummy_digest" get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with absolute uri in credentials (as in IE)" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:url => "http://test.host/http_digest_authentication_test/dummy_digest", - :username => 'pretty', :password => 'please') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:url => "http://test.host/http_digest_authentication_test/dummy_digest", + :username => "pretty", :password => "please") get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with absolute uri in both request and credentials (as in Webrick with IE)" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:url => "http://test.host/http_digest_authentication_test/dummy_digest", - :username => 'pretty', :password => 'please') - @request.env['SERVER_NAME'] = "test.host" - @request.env['PATH_INFO'] = "/http_digest_authentication_test/dummy_digest" + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:url => "http://test.host/http_digest_authentication_test/dummy_digest", + :username => "pretty", :password => "please") + @request.env["SERVER_NAME"] = "test.host" + @request.env["PATH_INFO"] = "/http_digest_authentication_test/dummy_digest" get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with password stored as ha1 digest hash" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'dhh', + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "dhh", :password => ::Digest::MD5::hexdigest(["dhh","SuperSecret","secret"].join(":")), :password_is_ha1 => true) get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with _method" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'please', :method => :post) - @request.env['rack.methodoverride.original_method'] = 'POST' + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "please", :method => :post) + @request.env["rack.methodoverride.original_method"] = "POST" put :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "validate_digest_response should fail with nil returning password_procedure" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => nil, :password => nil) + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => nil, :password => nil) assert !ActionController::HttpAuthentication::Digest.validate_digest_response(@request, "SuperSecret"){nil} end test "authentication request with request-uri ending in '/'" do - @request.env['PATH_INFO'] = "/http_digest_authentication_test/dummy_digest/" - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'please') + @request.env["PATH_INFO"] = "/http_digest_authentication_test/dummy_digest/" + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "please") # simulate normalizing PATH_INFO - @request.env['PATH_INFO'] = "/http_digest_authentication_test/dummy_digest" + @request.env["PATH_INFO"] = "/http_digest_authentication_test/dummy_digest" get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with request-uri ending in '?'" do - @request.env['PATH_INFO'] = "/http_digest_authentication_test/dummy_digest/?" - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:username => 'pretty', :password => 'please') + @request.env["PATH_INFO"] = "/http_digest_authentication_test/dummy_digest/?" + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:username => "pretty", :password => "please") # simulate normalizing PATH_INFO - @request.env['PATH_INFO'] = "/http_digest_authentication_test/dummy_digest" + @request.env["PATH_INFO"] = "/http_digest_authentication_test/dummy_digest" get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "authentication request with absolute uri in credentials (as in IE) ending with /" do - @request.env['PATH_INFO'] = "/http_digest_authentication_test/dummy_digest/" - @request.env['HTTP_AUTHORIZATION'] = encode_credentials(:uri => "http://test.host/http_digest_authentication_test/dummy_digest/", - :username => 'pretty', :password => 'please') + @request.env["PATH_INFO"] = "/http_digest_authentication_test/dummy_digest/" + @request.env["HTTP_AUTHORIZATION"] = encode_credentials(:uri => "http://test.host/http_digest_authentication_test/dummy_digest/", + :username => "pretty", :password => "please") # simulate normalizing PATH_INFO - @request.env['PATH_INFO'] = "/http_digest_authentication_test/dummy_digest" + @request.env["PATH_INFO"] = "/http_digest_authentication_test/dummy_digest" get :display assert_response :success - assert_equal 'Definitely Maybe', @response.body + assert_equal "Definitely Maybe", @response.body end test "when sent a basic auth header, returns Unauthorized" do - @request.env['HTTP_AUTHORIZATION'] = 'Basic Gwf2aXq8ZLF3Hxq=' + @request.env["HTTP_AUTHORIZATION"] = "Basic Gwf2aXq8ZLF3Hxq=" get :display @@ -254,20 +254,20 @@ class HttpDigestAuthenticationTest < ActionController::TestCase password = options.delete(:password) # Perform unauthenticated request to retrieve digest parameters to use on subsequent request - method = options.delete(:method) || 'GET' + method = options.delete(:method) || "GET" case method.to_s.upcase - when 'GET' + when "GET" get :index - when 'POST' + when "POST" post :index end assert_response :unauthorized - credentials = decode_credentials(@response.headers['WWW-Authenticate']) + credentials = decode_credentials(@response.headers["WWW-Authenticate"]) credentials.merge!(options) - path_info = @request.env['PATH_INFO'].to_s + path_info = @request.env["PATH_INFO"].to_s uri = options[:uri] || path_info credentials.merge!(:uri => uri) @request.env["ORIGINAL_FULLPATH"] = path_info diff --git a/actionpack/test/controller/http_token_authentication_test.rb b/actionpack/test/controller/http_token_authentication_test.rb index 98e3c891a7..b741aeb160 100644 --- a/actionpack/test/controller/http_token_authentication_test.rb +++ b/actionpack/test/controller/http_token_authentication_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class HttpTokenAuthenticationTest < ActionController::TestCase class DummyController < ActionController::Base @@ -11,23 +11,23 @@ class HttpTokenAuthenticationTest < ActionController::TestCase end def display - render plain: 'Definitely Maybe' + render plain: "Definitely Maybe" end def show - render plain: 'Only for loooooong credentials' + render plain: "Only for loooooong credentials" end private def authenticate authenticate_or_request_with_http_token do |token, _| - token == 'lifo' + token == "lifo" end end def authenticate_with_request - if authenticate_with_http_token { |token, options| token == '"quote" pretty' && options[:algorithm] == 'test' } + if authenticate_with_http_token { |token, options| token == '"quote" pretty' && options[:algorithm] == "test" } @logged_in = true else request_http_token_authentication("SuperSecret", "Authentication Failed\n") @@ -36,42 +36,42 @@ class HttpTokenAuthenticationTest < ActionController::TestCase def authenticate_long_credentials authenticate_or_request_with_http_token do |token, options| - token == '1234567890123456789012345678901234567890' && options[:algorithm] == 'test' + token == "1234567890123456789012345678901234567890" && options[:algorithm] == "test" end end end - AUTH_HEADERS = ['HTTP_AUTHORIZATION', 'X-HTTP_AUTHORIZATION', 'X_HTTP_AUTHORIZATION', 'REDIRECT_X_HTTP_AUTHORIZATION'] + AUTH_HEADERS = ["HTTP_AUTHORIZATION", "X-HTTP_AUTHORIZATION", "X_HTTP_AUTHORIZATION", "REDIRECT_X_HTTP_AUTHORIZATION"] tests DummyController AUTH_HEADERS.each do |header| test "successful authentication with #{header.downcase}" do - @request.env[header] = encode_credentials('lifo') + @request.env[header] = encode_credentials("lifo") get :index assert_response :success - assert_equal 'Hello Secret', @response.body, "Authentication failed for request header #{header}" + assert_equal "Hello Secret", @response.body, "Authentication failed for request header #{header}" end test "successful authentication with #{header.downcase} and long credentials" do - @request.env[header] = encode_credentials('1234567890123456789012345678901234567890', :algorithm => 'test') + @request.env[header] = encode_credentials("1234567890123456789012345678901234567890", :algorithm => "test") get :show assert_response :success - assert_equal 'Only for loooooong credentials', @response.body, "Authentication failed for request header #{header} and long credentials" + assert_equal "Only for loooooong credentials", @response.body, "Authentication failed for request header #{header} and long credentials" end end AUTH_HEADERS.each do |header| test "unsuccessful authentication with #{header.downcase}" do - @request.env[header] = encode_credentials('h4x0r') + @request.env[header] = encode_credentials("h4x0r") get :index assert_response :unauthorized assert_equal "HTTP Token: Access denied.\n", @response.body, "Authentication didn't fail for request header #{header}" end test "unsuccessful authentication with #{header.downcase} and long credentials" do - @request.env[header] = encode_credentials('h4x0rh4x0rh4x0rh4x0rh4x0rh4x0rh4x0rh4x0r') + @request.env[header] = encode_credentials("h4x0rh4x0rh4x0rh4x0rh4x0rh4x0rh4x0rh4x0r") get :show assert_response :unauthorized @@ -80,7 +80,7 @@ class HttpTokenAuthenticationTest < ActionController::TestCase end test "authentication request with badly formatted header" do - @request.env['HTTP_AUTHORIZATION'] = 'Token token$"lifo"' + @request.env["HTTP_AUTHORIZATION"] = 'Token token$"lifo"' get :index assert_response :unauthorized @@ -88,18 +88,18 @@ class HttpTokenAuthenticationTest < ActionController::TestCase end test "successful authentication request with Bearer instead of Token" do - @request.env['HTTP_AUTHORIZATION'] = 'Bearer lifo' + @request.env["HTTP_AUTHORIZATION"] = "Bearer lifo" get :index assert_response :success end test "authentication request with tab in header" do - @request.env['HTTP_AUTHORIZATION'] = "Token\ttoken=\"lifo\"" + @request.env["HTTP_AUTHORIZATION"] = "Token\ttoken=\"lifo\"" get :index assert_response :success - assert_equal 'Hello Secret', @response.body + assert_equal "Hello Secret", @response.body end test "authentication request without credential" do @@ -107,16 +107,16 @@ class HttpTokenAuthenticationTest < ActionController::TestCase assert_response :unauthorized assert_equal "Authentication Failed\n", @response.body - assert_equal 'Token realm="SuperSecret"', @response.headers['WWW-Authenticate'] + assert_equal 'Token realm="SuperSecret"', @response.headers["WWW-Authenticate"] end test "authentication request with invalid credential" do - @request.env['HTTP_AUTHORIZATION'] = encode_credentials('"quote" pretty') + @request.env["HTTP_AUTHORIZATION"] = encode_credentials('"quote" pretty') get :display assert_response :unauthorized assert_equal "Authentication Failed\n", @response.body - assert_equal 'Token realm="SuperSecret"', @response.headers['WWW-Authenticate'] + assert_equal 'Token realm="SuperSecret"', @response.headers["WWW-Authenticate"] end test "token_and_options returns correct token" do @@ -127,7 +127,7 @@ class HttpTokenAuthenticationTest < ActionController::TestCase end test "token_and_options returns correct token with value after the equal sign" do - token = 'rcHu+=HzSFw89Ypyhn/896A==f34' + token = "rcHu+=HzSFw89Ypyhn/896A==f34" actual = ActionController::HttpAuthentication::Token.token_and_options(sample_request(token)).first expected = token assert_equal(expected, actual) @@ -148,7 +148,7 @@ class HttpTokenAuthenticationTest < ActionController::TestCase end test "token_and_options returns empty string with empty token" do - token = '' + token = "" actual = ActionController::HttpAuthentication::Token.token_and_options(sample_request(token)).first expected = token assert_equal(expected, actual) diff --git a/actionpack/test/controller/integration_test.rb b/actionpack/test/controller/integration_test.rb index 7ad8dbb2bd..25a8eb479c 100644 --- a/actionpack/test/controller/integration_test.rb +++ b/actionpack/test/controller/integration_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' -require 'controller/fake_controllers' -require 'rails/engine' +require "abstract_unit" +require "controller/fake_controllers" +require "rails/engine" class SessionTest < ActiveSupport::TestCase StubApp = lambda { |env| @@ -32,7 +32,7 @@ class SessionTest < ActiveSupport::TestCase end def test_request_via_redirect_uses_given_method - path = "/somepath"; args = {:id => '1'}; headers = {"X-Test-Header" => "testvalue"} + path = "/somepath"; args = {:id => "1"}; headers = {"X-Test-Header" => "testvalue"} assert_called_with @session, :process, [:put, path, params: args, headers: headers] do @session.stub :redirect?, false do assert_deprecated { @session.request_via_redirect(:put, path, params: args, headers: headers) } @@ -41,7 +41,7 @@ class SessionTest < ActiveSupport::TestCase end def test_deprecated_request_via_redirect_uses_given_method - path = "/somepath"; args = { id: '1' }; headers = { "X-Test-Header" => "testvalue" } + path = "/somepath"; args = { id: "1" }; headers = { "X-Test-Header" => "testvalue" } assert_called_with @session, :process, [:put, path, params: args, headers: headers] do @session.stub :redirect?, false do assert_deprecated { @session.request_via_redirect(:put, path, args, headers) } @@ -50,7 +50,7 @@ class SessionTest < ActiveSupport::TestCase end def test_request_via_redirect_follows_redirects - path = "/somepath"; args = {:id => '1'}; headers = {"X-Test-Header" => "testvalue"} + path = "/somepath"; args = {:id => "1"}; headers = {"X-Test-Header" => "testvalue"} value_series = [true, true, false] assert_called @session, :follow_redirect!, times: 2 do @session.stub :redirect?, ->{ value_series.shift } do @@ -60,7 +60,7 @@ class SessionTest < ActiveSupport::TestCase end def test_request_via_redirect_returns_status - path = "/somepath"; args = {:id => '1'}; headers = {"X-Test-Header" => "testvalue"} + path = "/somepath"; args = {:id => "1"}; headers = {"X-Test-Header" => "testvalue"} @session.stub :redirect?, false do @session.stub :status, 200 do assert_deprecated do @@ -71,7 +71,7 @@ class SessionTest < ActiveSupport::TestCase end def test_deprecated_get_via_redirect - path = "/somepath"; args = { id: '1' }; headers = { "X-Test-Header" => "testvalue" } + path = "/somepath"; args = { id: "1" }; headers = { "X-Test-Header" => "testvalue" } assert_called_with @session, :request_via_redirect, [:get, path, args, headers] do assert_deprecated do @@ -81,7 +81,7 @@ class SessionTest < ActiveSupport::TestCase end def test_deprecated_post_via_redirect - path = "/somepath"; args = { id: '1' }; headers = { "X-Test-Header" => "testvalue" } + path = "/somepath"; args = { id: "1" }; headers = { "X-Test-Header" => "testvalue" } assert_called_with @session, :request_via_redirect, [:post, path, args, headers] do assert_deprecated do @@ -91,7 +91,7 @@ class SessionTest < ActiveSupport::TestCase end def test_deprecated_patch_via_redirect - path = "/somepath"; args = { id: '1' }; headers = { "X-Test-Header" => "testvalue" } + path = "/somepath"; args = { id: "1" }; headers = { "X-Test-Header" => "testvalue" } assert_called_with @session, :request_via_redirect, [:patch, path, args, headers] do assert_deprecated do @@ -101,7 +101,7 @@ class SessionTest < ActiveSupport::TestCase end def test_deprecated_put_via_redirect - path = "/somepath"; args = { id: '1' }; headers = { "X-Test-Header" => "testvalue" } + path = "/somepath"; args = { id: "1" }; headers = { "X-Test-Header" => "testvalue" } assert_called_with @session, :request_via_redirect, [:put, path, args, headers] do assert_deprecated do @@ -111,7 +111,7 @@ class SessionTest < ActiveSupport::TestCase end def test_deprecated_delete_via_redirect - path = "/somepath"; args = { id: '1' }; headers = { "X-Test-Header" => "testvalue" } + path = "/somepath"; args = { id: "1" }; headers = { "X-Test-Header" => "testvalue" } assert_called_with @session, :request_via_redirect, [:delete, path, args, headers] do assert_deprecated do @@ -121,7 +121,7 @@ class SessionTest < ActiveSupport::TestCase end def test_get - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:get, path, params: params, headers: headers] do @session.get(path, params: params, headers: headers) @@ -129,14 +129,14 @@ class SessionTest < ActiveSupport::TestCase end def test_get_with_env_and_headers - path = "/index"; params = "blah"; headers = { location: 'blah' }; env = { 'HTTP_X_REQUESTED_WITH' => 'XMLHttpRequest' } + path = "/index"; params = "blah"; headers = { location: "blah" }; env = { "HTTP_X_REQUESTED_WITH" => "XMLHttpRequest" } assert_called_with @session, :process, [:get, path, params: params, headers: headers, env: env] do @session.get(path, params: params, headers: headers, env: env) end end def test_deprecated_get - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:get, path, params: params, headers: headers] do assert_deprecated { @@ -146,7 +146,7 @@ class SessionTest < ActiveSupport::TestCase end def test_post - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:post, path, params: params, headers: headers] do assert_deprecated { @session.post(path, params, headers) @@ -155,21 +155,21 @@ class SessionTest < ActiveSupport::TestCase end def test_deprecated_post - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:post, path, params: params, headers: headers] do @session.post(path, params: params, headers: headers) end end def test_patch - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:patch, path, params: params, headers: headers] do @session.patch(path, params: params, headers: headers) end end def test_deprecated_patch - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:patch, path, params: params, headers: headers] do assert_deprecated { @session.patch(path, params, headers) @@ -178,14 +178,14 @@ class SessionTest < ActiveSupport::TestCase end def test_put - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:put, path, params: params, headers: headers] do @session.put(path, params: params, headers: headers) end end def test_deprecated_put - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:put, path, params: params, headers: headers] do assert_deprecated { @session.put(path, params, headers) @@ -194,7 +194,7 @@ class SessionTest < ActiveSupport::TestCase end def test_delete - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:delete, path, params: params, headers: headers] do assert_deprecated { @session.delete(path,params,headers) @@ -203,21 +203,21 @@ class SessionTest < ActiveSupport::TestCase end def test_deprecated_delete - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:delete, path, params: params, headers: headers] do @session.delete(path, params: params, headers: headers) end end def test_head - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:head, path, params: params, headers: headers] do @session.head(path, params: params, headers: headers) end end def deprecated_test_head - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:head, path, params: params, headers: headers] do assert_deprecated { @session.head(path, params, headers) @@ -226,21 +226,21 @@ class SessionTest < ActiveSupport::TestCase end def test_xml_http_request_get - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:get, path, params: params, headers: headers, xhr: true] do @session.get(path, params: params, headers: headers, xhr: true) end end def test_deprecated_xml_http_request_get - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:get, path, params: params, headers: headers, xhr: true] do @session.get(path, params: params, headers: headers, xhr: true) end end def test_deprecated_args_xml_http_request_get - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:get, path, params: params, headers: headers, xhr: true] do assert_deprecated(/xml_http_request/) { @session.xml_http_request(:get, path, params, headers) @@ -249,105 +249,105 @@ class SessionTest < ActiveSupport::TestCase end def test_xml_http_request_post - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:post, path, params: params, headers: headers, xhr: true] do @session.post(path, params: params, headers: headers, xhr: true) end end def test_deprecated_xml_http_request_post - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:post, path, params: params, headers: headers, xhr: true] do @session.post(path, params: params, headers: headers, xhr: true) end end def test_deprecated_args_xml_http_request_post - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:post, path, params: params, headers: headers, xhr: true] do assert_deprecated(/xml_http_request/) { @session.xml_http_request(:post,path,params,headers) } end end def test_xml_http_request_patch - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:patch, path, params: params, headers: headers, xhr: true] do @session.patch(path, params: params, headers: headers, xhr: true) end end def test_deprecated_xml_http_request_patch - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:patch, path, params: params, headers: headers, xhr: true] do @session.patch(path, params: params, headers: headers, xhr: true) end end def test_deprecated_args_xml_http_request_patch - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:patch, path, params: params, headers: headers, xhr: true] do assert_deprecated(/xml_http_request/) { @session.xml_http_request(:patch,path,params,headers) } end end def test_xml_http_request_put - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:put, path, params: params, headers: headers, xhr: true] do @session.put(path, params: params, headers: headers, xhr: true) end end def test_deprecated_xml_http_request_put - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:put, path, params: params, headers: headers, xhr: true] do @session.put(path, params: params, headers: headers, xhr: true) end end def test_deprecated_args_xml_http_request_put - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:put, path, params: params, headers: headers, xhr: true] do assert_deprecated(/xml_http_request/) { @session.xml_http_request(:put, path, params, headers) } end end def test_xml_http_request_delete - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:delete, path, params: params, headers: headers, xhr: true] do @session.delete(path, params: params, headers: headers, xhr: true) end end def test_deprecated_xml_http_request_delete - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:delete, path, params: params, headers: headers, xhr: true] do assert_deprecated { @session.xml_http_request(:delete, path, params: params, headers: headers) } end end def test_deprecated_args_xml_http_request_delete - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:delete, path, params: params, headers: headers, xhr: true] do assert_deprecated(/xml_http_request/) { @session.xml_http_request(:delete, path, params, headers) } end end def test_xml_http_request_head - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:head, path, params: params, headers: headers, xhr: true] do @session.head(path, params: params, headers: headers, xhr: true) end end def test_deprecated_xml_http_request_head - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:head, path, params: params, headers: headers, xhr: true] do assert_deprecated(/xml_http_request/) { @session.xml_http_request(:head, path, params: params, headers: headers) } end end def test_deprecated_args_xml_http_request_head - path = "/index"; params = "blah"; headers = { location: 'blah' } + path = "/index"; params = "blah"; headers = { location: "blah" } assert_called_with @session, :process, [:head, path, params: params, headers: headers, xhr: true] do assert_deprecated { @session.xml_http_request(:head, path, params, headers) } end @@ -372,12 +372,12 @@ class IntegrationTestTest < ActiveSupport::TestCase def test_does_not_prevent_method_missing_passing_up_to_ancestors mixin = Module.new do def method_missing(name, *args) - name.to_s == 'foo' ? 'pass' : super + name.to_s == "foo" ? "pass" : super end end @test.class.superclass.__send__(:include, mixin) begin - assert_equal 'pass', @test.foo + assert_equal "pass", @test.foo ensure # leave other tests as unaffected as possible mixin.__send__(:remove_method, :method_missing) @@ -392,7 +392,7 @@ class IntegrationTestUsesCorrectClass < ActionDispatch::IntegrationTest reset! %w( get post head patch put delete ).each do |verb| - assert_nothing_raised { __send__(verb, '/') } + assert_nothing_raised { __send__(verb, "/") } end end end @@ -428,7 +428,7 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest end def set_cookie - cookies["foo"] = 'bar' + cookies["foo"] = "bar" head :ok end @@ -437,18 +437,18 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest end def redirect - redirect_to action_url('get') + redirect_to action_url("get") end def remove_header response.headers.delete params[:header] - head :ok, 'c' => '3' + head :ok, "c" => "3" end end def test_get with_test_route_set do - get '/get' + get "/get" assert_equal 200, status assert_equal "OK", status_message assert_response 200 @@ -482,7 +482,7 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest def test_post with_test_route_set do - post '/post' + post "/post" assert_equal 201, status assert_equal "Created", status_message assert_response 201 @@ -496,25 +496,25 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest end end - test 'response cookies are added to the cookie jar for the next request' do + test "response cookies are added to the cookie jar for the next request" do with_test_route_set do - self.cookies['cookie_1'] = "sugar" - self.cookies['cookie_2'] = "oatmeal" - get '/cookie_monster' + self.cookies["cookie_1"] = "sugar" + self.cookies["cookie_2"] = "oatmeal" + get "/cookie_monster" assert_equal "cookie_1=; path=/\ncookie_3=chocolate; path=/", headers["Set-Cookie"] assert_equal({"cookie_1"=>"", "cookie_2"=>"oatmeal", "cookie_3"=>"chocolate"}, cookies.to_hash) end end - test 'cookie persist to next request' do + test "cookie persist to next request" do with_test_route_set do - get '/set_cookie' + get "/set_cookie" assert_response :success assert_equal "foo=bar; path=/", headers["Set-Cookie"] assert_equal({"foo"=>"bar"}, cookies.to_hash) - get '/get_cookie' + get "/get_cookie" assert_response :success assert_equal "bar", body @@ -523,17 +523,17 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest end end - test 'cookie persist to next request on another domain' do + test "cookie persist to next request on another domain" do with_test_route_set do host! "37s.backpack.test" - get '/set_cookie' + get "/set_cookie" assert_response :success assert_equal "foo=bar; path=/", headers["Set-Cookie"] assert_equal({"foo"=>"bar"}, cookies.to_hash) - get '/get_cookie' + get "/get_cookie" assert_response :success assert_equal "bar", body @@ -544,7 +544,7 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest def test_redirect with_test_route_set do - get '/redirect' + get "/redirect" assert_equal 302, status assert_equal "Found", status_message assert_response 302 @@ -558,15 +558,15 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest assert_response :success assert_equal "/get", path - get '/moved' + get "/moved" assert_response :redirect - assert_redirected_to '/method' + assert_redirected_to "/method" end end def test_xml_http_request_get with_test_route_set do - get '/get', xhr: true + get "/get", xhr: true assert_equal 200, status assert_equal "OK", status_message assert_response 200 @@ -578,7 +578,7 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest def test_deprecated_xml_http_request_get with_test_route_set do - assert_deprecated { xhr :get, '/get' } + assert_deprecated { xhr :get, "/get" } assert_equal 200, status assert_equal "OK", status_message assert_response 200 @@ -590,7 +590,7 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest def test_request_with_bad_format with_test_route_set do - get '/get.php', xhr: true + get "/get.php", xhr: true assert_equal 406, status assert_response 406 assert_response :not_acceptable @@ -599,12 +599,12 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest def test_get_with_query_string with_test_route_set do - get '/get_with_params?foo=bar' - assert_equal '/get_with_params?foo=bar', request.env["REQUEST_URI"] - assert_equal '/get_with_params?foo=bar', request.fullpath + get "/get_with_params?foo=bar" + assert_equal "/get_with_params?foo=bar", request.env["REQUEST_URI"] + assert_equal "/get_with_params?foo=bar", request.fullpath assert_equal "foo=bar", request.env["QUERY_STRING"] - assert_equal 'foo=bar', request.query_string - assert_equal 'bar', request.parameters['foo'] + assert_equal "foo=bar", request.query_string + assert_equal "bar", request.parameters["foo"] assert_equal 200, status assert_equal "foo: bar", response.body @@ -613,12 +613,12 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest def test_get_with_parameters with_test_route_set do - get '/get_with_params', params: { foo: "bar" } - assert_equal '/get_with_params', request.env["PATH_INFO"] - assert_equal '/get_with_params', request.path_info - assert_equal 'foo=bar', request.env["QUERY_STRING"] - assert_equal 'foo=bar', request.query_string - assert_equal 'bar', request.parameters['foo'] + get "/get_with_params", params: { foo: "bar" } + assert_equal "/get_with_params", request.env["PATH_INFO"] + assert_equal "/get_with_params", request.path_info + assert_equal "foo=bar", request.env["QUERY_STRING"] + assert_equal "foo=bar", request.query_string + assert_equal "bar", request.parameters["foo"] assert_equal 200, status assert_equal "foo: bar", response.body @@ -627,77 +627,77 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest def test_post_then_get_with_parameters_do_not_leak_across_requests with_test_route_set do - post '/post', params: { leaks: "does-leak?" } + post "/post", params: { leaks: "does-leak?" } - get '/get_with_params', params: { foo: "bar" } + get "/get_with_params", params: { foo: "bar" } - assert request.env['rack.input'].string.empty? - assert_equal 'foo=bar', request.env["QUERY_STRING"] - assert_equal 'foo=bar', request.query_string - assert_equal 'bar', request.parameters['foo'] - assert request.parameters['leaks'].nil? + assert request.env["rack.input"].string.empty? + assert_equal "foo=bar", request.env["QUERY_STRING"] + assert_equal "foo=bar", request.query_string + assert_equal "bar", request.parameters["foo"] + assert request.parameters["leaks"].nil? end end def test_head with_test_route_set do - head '/get' + head "/get" assert_equal 200, status assert_equal "", body - head '/post' + head "/post" assert_equal 201, status assert_equal "", body - get '/get/method' + get "/get/method" assert_equal 200, status assert_equal "method: get", body - head '/get/method' + head "/get/method" assert_equal 200, status assert_equal "", body end end def test_generate_url_with_controller - assert_equal 'http://www.example.com/foo', url_for(:controller => "foo") + assert_equal "http://www.example.com/foo", url_for(:controller => "foo") end def test_port_via_host! with_test_route_set do - host! 'www.example.com:8080' - get '/get' + host! "www.example.com:8080" + get "/get" assert_equal 8080, request.port end end def test_port_via_process with_test_route_set do - get 'http://www.example.com:8080/get' + get "http://www.example.com:8080/get" assert_equal 8080, request.port end end def test_https_and_port_via_host_and_https! with_test_route_set do - host! 'www.example.com' + host! "www.example.com" https! true - get '/get' + get "/get" assert_equal 443, request.port assert_equal true, request.ssl? - host! 'www.example.com:443' + host! "www.example.com:443" https! true - get '/get' + get "/get" assert_equal 443, request.port assert_equal true, request.ssl? - host! 'www.example.com:8443' + host! "www.example.com:8443" https! true - get '/get' + get "/get" assert_equal 8443, request.port assert_equal true, request.ssl? end @@ -705,11 +705,11 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest def test_https_and_port_via_process with_test_route_set do - get 'https://www.example.com/get' + get "https://www.example.com/get" assert_equal 443, request.port assert_equal true, request.ssl? - get 'https://www.example.com:8443/get' + get "https://www.example.com:8443/get" assert_equal 8443, request.port assert_equal true, request.ssl? end @@ -717,14 +717,14 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest def test_respect_removal_of_default_headers_by_a_controller_action with_test_route_set do - with_default_headers 'a' => '1', 'b' => '2' do - get '/remove_header', params: { header: 'a' } + with_default_headers "a" => "1", "b" => "2" do + get "/remove_header", params: { header: "a" } end end - assert_not_includes @response.headers, 'a', 'Response should not include default header removed by the controller action' - assert_includes @response.headers, 'b' - assert_includes @response.headers, 'c' + assert_not_includes @response.headers, "a", "Response should not include default header removed by the controller action" + assert_includes @response.headers, "b" + assert_includes @response.headers, "c" end private @@ -744,11 +744,11 @@ class IntegrationProcessTest < ActionDispatch::IntegrationTest end set.draw do - get 'moved' => redirect('/method') + get "moved" => redirect("/method") ActiveSupport::Deprecation.silence do - match ':action', :to => controller, :via => [:get, :post], :as => :action - get 'get/:action', :to => controller, :as => :get_action + match ":action", :to => controller, :via => [:get, :post], :as => :action + get "get/:action", :to => controller, :as => :get_action end end @@ -788,11 +788,11 @@ class MetalIntegrationTest < ActionDispatch::IntegrationTest get "/failure" assert_response 404 assert_response :not_found - assert_equal '', response.body + assert_equal "", response.body end def test_generate_url_without_controller - assert_equal 'http://www.example.com/foo', url_for(:controller => "foo") + assert_equal "http://www.example.com/foo", url_for(:controller => "foo") end def test_pass_headers @@ -859,7 +859,7 @@ class ApplicationIntegrationTest < ActionDispatch::IntegrationTest end routes.draw do - get 'baz', :to => 'application_integration_test/test#index', :as => :baz + get "baz", :to => "application_integration_test/test#index", :as => :baz end def self.call(*) @@ -867,14 +867,14 @@ class ApplicationIntegrationTest < ActionDispatch::IntegrationTest end routes.draw do - get '', :to => 'application_integration_test/test#index', :as => :empty_string + get "", :to => "application_integration_test/test#index", :as => :empty_string - get 'foo', :to => 'application_integration_test/test#index', :as => :foo - get 'bar', :to => 'application_integration_test/test#index', :as => :bar + get "foo", :to => "application_integration_test/test#index", :as => :foo + get "bar", :to => "application_integration_test/test#index", :as => :bar - mount MountedApp => '/mounted', :as => "mounted" - get 'fooz' => proc { |env| [ 200, {'X-Cascade' => 'pass'}, [ "omg" ] ] }, :anchor => false - get 'fooz', :to => 'application_integration_test/test#index' + mount MountedApp => "/mounted", :as => "mounted" + get "fooz" => proc { |env| [ 200, {"X-Cascade" => "pass"}, [ "omg" ] ] }, :anchor => false + get "fooz", :to => "application_integration_test/test#index" end def app @@ -882,30 +882,30 @@ class ApplicationIntegrationTest < ActionDispatch::IntegrationTest end test "includes route helpers" do - assert_equal '/', empty_string_path - assert_equal '/foo', foo_path - assert_equal '/bar', bar_path + assert_equal "/", empty_string_path + assert_equal "/foo", foo_path + assert_equal "/bar", bar_path end test "includes mounted helpers" do - assert_equal '/mounted/baz', mounted.baz_path + assert_equal "/mounted/baz", mounted.baz_path end test "path after cascade pass" do - get '/fooz' - assert_equal 'index', response.body - assert_equal '/fooz', path + get "/fooz" + assert_equal "index", response.body + assert_equal "/fooz", path end test "route helpers after controller access" do - get '/' - assert_equal '/', empty_string_path + get "/" + assert_equal "/", empty_string_path - get '/foo' - assert_equal '/foo', foo_path + get "/foo" + assert_equal "/foo", foo_path - get '/bar' - assert_equal '/bar', bar_path + get "/bar" + assert_equal "/bar", bar_path end test "missing route helper before controller access" do @@ -913,14 +913,14 @@ class ApplicationIntegrationTest < ActionDispatch::IntegrationTest end test "missing route helper after controller access" do - get '/foo' + get "/foo" assert_raise(NameError) { missing_path } end test "process do not modify the env passed as argument" do - env = { :SERVER_NAME => 'server', 'action_dispatch.custom' => 'custom' } + env = { :SERVER_NAME => "server", "action_dispatch.custom" => "custom" } old_env = env.dup - get '/foo', env: env + get "/foo", env: env assert_equal old_env, env end end @@ -942,7 +942,7 @@ class EnvironmentFilterIntegrationTest < ActionDispatch::IntegrationTest end routes.draw do - match '/post', :to => 'environment_filter_integration_test/test#post', :via => :post + match "/post", :to => "environment_filter_integration_test/test#post", :via => :post end def app @@ -950,11 +950,11 @@ class EnvironmentFilterIntegrationTest < ActionDispatch::IntegrationTest end test "filters rack request form vars" do - post "/post", params: { username: 'cjolly', password: 'secret' } + post "/post", params: { username: "cjolly", password: "secret" } - assert_equal 'cjolly', request.filtered_parameters['username'] - assert_equal '[FILTERED]', request.filtered_parameters['password'] - assert_equal '[FILTERED]', request.filtered_env['rack.request.form_vars'] + assert_equal "cjolly", request.filtered_parameters["username"] + assert_equal "[FILTERED]", request.filtered_parameters["password"] + assert_equal "[FILTERED]", request.filtered_env["rack.request.form_vars"] end end @@ -1038,7 +1038,7 @@ class UrlOptionsIntegrationTest < ActionDispatch::IntegrationTest test "current request path parameters are recalled" do get "/foo/1" assert_response :success - assert_equal "/foo/1/edit", url_for(:action => 'edit', :only_path => true) + assert_equal "/foo/1/edit", url_for(:action => "edit", :only_path => true) end end @@ -1062,12 +1062,12 @@ class HeadWithStatusActionIntegrationTest < ActionDispatch::IntegrationTest end routes.draw do - get "/foo/status" => 'head_with_status_action_integration_test/foo#status' + get "/foo/status" => "head_with_status_action_integration_test/foo#status" end test "get /foo/status with head result does not cause stack overflow error" do assert_nothing_raised do - get '/foo/status' + get "/foo/status" end assert_response :ok end @@ -1076,7 +1076,7 @@ end class IntegrationWithRoutingTest < ActionDispatch::IntegrationTest class FooController < ActionController::Base def index - render plain: 'ok' + render plain: "ok" end end @@ -1086,25 +1086,25 @@ class IntegrationWithRoutingTest < ActionDispatch::IntegrationTest with_routing do |routes| routes.draw do namespace klass_namespace do - resources :foo, path: '/with' + resources :foo, path: "/with" end end - get '/integration_with_routing_test/with' + get "/integration_with_routing_test/with" assert_response 200 - assert_equal 'ok', response.body + assert_equal "ok", response.body end with_routing do |routes| routes.draw do namespace klass_namespace do - resources :foo, path: '/routing' + resources :foo, path: "/routing" end end - get '/integration_with_routing_test/routing' + get "/integration_with_routing_test/routing" assert_response 200 - assert_equal 'ok', response.body + assert_equal "ok", response.body end end end @@ -1116,8 +1116,8 @@ class IntegrationRequestsWithoutSetup < ActionDispatch::IntegrationTest class FooController < ActionController::Base def ok - cookies[:key] = 'ok' - render plain: 'ok' + cookies[:key] = "ok" + render plain: "ok" end end @@ -1125,15 +1125,15 @@ class IntegrationRequestsWithoutSetup < ActionDispatch::IntegrationTest with_routing do |routes| routes.draw do ActiveSupport::Deprecation.silence do - get ':action' => FooController + get ":action" => FooController end end - get '/ok' + get "/ok" assert_response 200 - assert_equal 'ok', response.body - assert_equal 'ok', cookies['key'] + assert_equal "ok", response.body + assert_equal "ok", cookies["key"] end end end @@ -1141,7 +1141,7 @@ end # to ensure that session requirements in setup are persisted in the tests class IntegrationRequestsWithSessionSetup < ActionDispatch::IntegrationTest setup do - cookies['user_name'] = 'david' + cookies["user_name"] = "david" end def test_cookies_set_in_setup_are_persisted_through_the_session @@ -1157,7 +1157,7 @@ class IntegrationRequestEncodersTest < ActionDispatch::IntegrationTest end def foos_wibble - render plain: 'ok' + render plain: "ok" end end @@ -1165,25 +1165,25 @@ class IntegrationRequestEncodersTest < ActionDispatch::IntegrationTest with_routing do |routes| routes.draw do ActiveSupport::Deprecation.silence do - post ':action' => FooController + post ":action" => FooController end end - post '/foos_json.json', params: { foo: 'fighters' }.to_json, - headers: { 'Content-Type' => 'application/json' } + post "/foos_json.json", params: { foo: "fighters" }.to_json, + headers: { "Content-Type" => "application/json" } assert_response :success - assert_equal({ 'foo' => 'fighters' }, response.parsed_body) + assert_equal({ "foo" => "fighters" }, response.parsed_body) end end def test_encoding_as_json post_to_foos as: :json do assert_response :success - assert_match 'foos_json.json', request.path - assert_equal 'application/json', request.content_type - assert_equal({ 'foo' => 'fighters' }, request.request_parameters) - assert_equal({ 'foo' => 'fighters' }, response.parsed_body) + assert_match "foos_json.json", request.path + assert_equal "application/json", request.content_type + assert_equal({ "foo" => "fighters" }, request.request_parameters) + assert_equal({ "foo" => "fighters" }, response.parsed_body) end end @@ -1194,17 +1194,17 @@ class IntegrationRequestEncodersTest < ActionDispatch::IntegrationTest end def test_registering_custom_encoder - Mime::Type.register 'text/wibble', :wibble + Mime::Type.register "text/wibble", :wibble ActionDispatch::IntegrationTest.register_encoder(:wibble, param_encoder: -> params { params }) post_to_foos as: :wibble do assert_response :success - assert_match 'foos_wibble.wibble', request.path - assert_equal 'text/wibble', request.content_type + assert_match "foos_wibble.wibble", request.path + assert_equal "text/wibble", request.content_type assert_equal Hash.new, request.request_parameters # Unregistered MIME Type can't be parsed. - assert_equal 'ok', response.parsed_body + assert_equal "ok", response.parsed_body end ensure Mime::Type.unregister :wibble @@ -1214,13 +1214,13 @@ class IntegrationRequestEncodersTest < ActionDispatch::IntegrationTest with_routing do |routes| routes.draw do ActiveSupport::Deprecation.silence do - get ':action' => FooController + get ":action" => FooController end end - get '/foos_json.json', params: { foo: 'heyo' } + get "/foos_json.json", params: { foo: "heyo" } - assert_equal({ 'foo' => 'heyo' }, response.parsed_body) + assert_equal({ "foo" => "heyo" }, response.parsed_body) end end @@ -1228,13 +1228,13 @@ class IntegrationRequestEncodersTest < ActionDispatch::IntegrationTest with_routing do |routes| routes.draw do ActiveSupport::Deprecation.silence do - get ':action' => FooController + get ":action" => FooController end end - get '/foos_json?foo=heyo', as: :json + get "/foos_json?foo=heyo", as: :json - assert_equal({ 'foo' => 'heyo' }, response.parsed_body) + assert_equal({ "foo" => "heyo" }, response.parsed_body) end end @@ -1242,15 +1242,15 @@ class IntegrationRequestEncodersTest < ActionDispatch::IntegrationTest with_routing do |routes| routes.draw do ActiveSupport::Deprecation.silence do - get ':action' => FooController + get ":action" => FooController end end - get '/foos_json', params: { foo: 'heyo' }, as: :json + get "/foos_json", params: { foo: "heyo" }, as: :json - assert_equal 'POST', request.method - assert_equal 'GET', request.headers['X-Http-Method-Override'] - assert_equal({ 'foo' => 'heyo' }, response.parsed_body) + assert_equal "POST", request.method + assert_equal "GET", request.headers["X-Http-Method-Override"] + assert_equal({ "foo" => "heyo" }, response.parsed_body) end end @@ -1259,11 +1259,11 @@ class IntegrationRequestEncodersTest < ActionDispatch::IntegrationTest with_routing do |routes| routes.draw do ActiveSupport::Deprecation.silence do - post ':action' => FooController + post ":action" => FooController end end - post "/foos_#{as}", params: { foo: 'fighters' }, as: as + post "/foos_#{as}", params: { foo: "fighters" }, as: as yield end diff --git a/actionpack/test/controller/live_stream_test.rb b/actionpack/test/controller/live_stream_test.rb index 5977124594..17dff9542a 100644 --- a/actionpack/test/controller/live_stream_test.rb +++ b/actionpack/test/controller/live_stream_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'concurrent/atomic/count_down_latch' +require "abstract_unit" +require "concurrent/atomic/count_down_latch" Thread.abort_on_exception = true module ActionController @@ -8,7 +8,7 @@ module ActionController include ActionController::Live def basic_sse - response.headers['Content-Type'] = 'text/event-stream' + response.headers["Content-Type"] = "text/event-stream" sse = SSE.new(response.stream) sse.write("{\"name\":\"John\"}") sse.write({ name: "Ryan" }) @@ -115,7 +115,7 @@ module ActionController attr_accessor :latch, :tc, :error_latch def self.controller_path - 'test' + "test" end def set_cookie @@ -125,7 +125,7 @@ module ActionController end def render_text - render plain: 'zomg' + render plain: "zomg" end def default_header @@ -134,7 +134,7 @@ module ActionController end def basic_stream - response.headers['Content-Type'] = 'text/event-stream' + response.headers["Content-Type"] = "text/event-stream" %w{ hello world }.each do |word| response.stream.write word end @@ -142,7 +142,7 @@ module ActionController end def blocking_stream - response.headers['Content-Type'] = 'text/event-stream' + response.headers["Content-Type"] = "text/event-stream" %w{ hello world }.each do |word| response.stream.write word latch.wait @@ -151,9 +151,9 @@ module ActionController end def thread_locals - tc.assert_equal 'aaron', Thread.current[:setting] + tc.assert_equal "aaron", Thread.current[:setting] - response.headers['Content-Type'] = 'text/event-stream' + response.headers["Content-Type"] = "text/event-stream" %w{ hello world }.each do |word| response.stream.write word end @@ -161,20 +161,20 @@ module ActionController end def with_stale - render plain: 'stale' if stale?(etag: "123", template: false) + render plain: "stale" if stale?(etag: "123", template: false) end def exception_in_view - render 'doesntexist' + render "doesntexist" end def exception_in_view_after_commit response.stream.write "" - render 'doesntexist' + render "doesntexist" end def exception_with_callback - response.headers['Content-Type'] = 'text/event-stream' + response.headers["Content-Type"] = "text/event-stream" response.stream.on_error do response.stream.write %(data: "500 Internal Server Error"\n\n) @@ -182,11 +182,11 @@ module ActionController end response.stream.write "" # make sure the response is committed - raise 'An exception occurred...' + raise "An exception occurred..." end def exception_in_controller - raise Exception, 'Exception in controller' + raise Exception, "Exception in controller" end def bad_request_error @@ -194,50 +194,50 @@ module ActionController end def exception_in_exception_callback - response.headers['Content-Type'] = 'text/event-stream' + response.headers["Content-Type"] = "text/event-stream" response.stream.on_error do - raise 'We need to go deeper.' + raise "We need to go deeper." end - response.stream.write '' + response.stream.write "" response.stream.write params[:widget][:didnt_check_for_nil] end def overfill_buffer_and_die logger = ActionController::Base.logger || Logger.new($stdout) response.stream.on_error do - logger.warn 'Error while streaming.' + logger.warn "Error while streaming." error_latch.count_down end # Write until the buffer is full. It doesn't expose that # information directly, so we must hard-code its size: 10.times do - response.stream.write '.' + response.stream.write "." end # .. plus one more, because the #each frees up a slot: - response.stream.write '.' + response.stream.write "." latch.count_down # This write will block, and eventually raise - response.stream.write 'x' + response.stream.write "x" 20.times do - response.stream.write '.' + response.stream.write "." end end def ignore_client_disconnect response.stream.ignore_disconnect = true - response.stream.write '' # commit + response.stream.write "" # commit # These writes will be ignored 15.times do - response.stream.write 'x' + response.stream.write "x" end - logger.info 'Work complete' + logger.info "Work complete" latch.count_down end end @@ -245,9 +245,9 @@ module ActionController tests TestController def assert_stream_closed - assert response.stream.closed?, 'stream should be closed' - assert response.committed?, 'response should be committed' - assert response.sent?, 'response should be sent' + assert response.stream.closed?, "stream should be closed" + assert response.committed?, "response should be committed" + assert response.sent?, "response should be sent" end def capture_log_output @@ -271,21 +271,21 @@ module ActionController def test_set_cookie get :set_cookie - assert_equal({'hello' => 'world'}, @response.cookies) + assert_equal({"hello" => "world"}, @response.cookies) assert_equal "hello world", @response.body end def test_write_to_stream get :basic_stream assert_equal "helloworld", @response.body - assert_equal 'text/event-stream', @response.headers['Content-Type'] + assert_equal "text/event-stream", @response.headers["Content-Type"] end def test_async_stream rubinius_skip "https://github.com/rubinius/rubinius/issues/2934" @controller.latch = Concurrent::CountDownLatch.new - parts = ['hello', 'world'] + parts = ["hello", "world"] get :blocking_stream @@ -299,7 +299,7 @@ module ActionController end } - assert t.join(3), 'timeout expired before the thread terminated' + assert t.join(3), "timeout expired before the thread terminated" end def test_abort_with_full_buffer @@ -307,7 +307,7 @@ module ActionController @controller.error_latch = Concurrent::CountDownLatch.new capture_log_output do |output| - get :overfill_buffer_and_die, :format => 'plain' + get :overfill_buffer_and_die, :format => "plain" t = Thread.new(response) { |resp| resp.await_commit @@ -321,7 +321,7 @@ module ActionController t.join @controller.error_latch.wait - assert_match 'Error while streaming', output.rewind && output.read + assert_match "Error while streaming", output.rewind && output.read end end @@ -344,26 +344,26 @@ module ActionController Timeout.timeout(3) do @controller.latch.wait end - assert_match 'Work complete', output.rewind && output.read + assert_match "Work complete", output.rewind && output.read end end def test_thread_locals_get_copied @controller.tc = self Thread.current[:originating_thread] = Thread.current.object_id - Thread.current[:setting] = 'aaron' + Thread.current[:setting] = "aaron" get :thread_locals end def test_live_stream_default_header get :default_header - assert response.headers['Content-Type'] + assert response.headers["Content-Type"] end def test_render_text get :render_text - assert_equal 'zomg', response.body + assert_equal "zomg", response.body assert_stream_closed end @@ -375,7 +375,7 @@ module ActionController capture_log_output do |output| get :exception_in_view_after_commit assert_match %r((window\.location = "/500\.html")$), response.body - assert_match 'Missing template test/doesntexist', output.rewind && output.read + assert_match "Missing template test/doesntexist", output.rewind && output.read assert_stream_closed end assert response.body @@ -389,8 +389,8 @@ module ActionController capture_log_output do |output| get :exception_in_view_after_commit, format: :json - assert_equal '', response.body - assert_match 'Missing template test/doesntexist', output.rewind && output.read + assert_equal "", response.body + assert_match "Missing template test/doesntexist", output.rewind && output.read assert_stream_closed end end @@ -399,34 +399,34 @@ module ActionController current_threads = Thread.list capture_log_output do |output| - get :exception_with_callback, format: 'text/event-stream' + get :exception_with_callback, format: "text/event-stream" # Wait on the execution of all threads (Thread.list - current_threads).each(&:join) assert_equal %(data: "500 Internal Server Error"\n\n), response.body - assert_match 'An exception occurred...', output.rewind && output.read + assert_match "An exception occurred...", output.rewind && output.read assert_stream_closed end end def test_exception_in_controller_before_streaming assert_raises(ActionController::LiveStreamTest::Exception) do - get :exception_in_controller, format: 'text/event-stream' + get :exception_in_controller, format: "text/event-stream" end end def test_bad_request_in_controller_before_streaming assert_raises(ActionController::BadRequest) do - get :bad_request_error, format: 'text/event-stream' + get :bad_request_error, format: "text/event-stream" end end def test_exceptions_raised_handling_exceptions_and_committed capture_log_output do |output| - get :exception_in_exception_callback, format: 'text/event-stream' - assert_equal '', response.body - assert_match 'We need to go deeper', output.rewind && output.read + get :exception_in_exception_callback, format: "text/event-stream" + assert_equal "", response.body + assert_match "We need to go deeper", output.rewind && output.read assert_stream_closed end end @@ -456,7 +456,7 @@ class LiveStreamRouterTest < ActionDispatch::IntegrationTest include ActionController::Live def index - response.headers['Content-Type'] = 'text/event-stream' + response.headers["Content-Type"] = "text/event-stream" sse = SSE.new(response.stream) sse.write("{\"name\":\"John\"}") sse.write({ name: "Ryan" }) @@ -474,7 +474,7 @@ class LiveStreamRouterTest < ActionDispatch::IntegrationTest end routes.draw do - get '/test' => 'live_stream_router_test/test#index' + get "/test" => "live_stream_router_test/test#index" end def app diff --git a/actionpack/test/controller/localized_templates_test.rb b/actionpack/test/controller/localized_templates_test.rb index 3576015513..0f2242b693 100644 --- a/actionpack/test/controller/localized_templates_test.rb +++ b/actionpack/test/controller/localized_templates_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class LocalizedController < ActionController::Base def hello_world diff --git a/actionpack/test/controller/log_subscriber_test.rb b/actionpack/test/controller/log_subscriber_test.rb index 57cf2dafdf..d853d97f94 100644 --- a/actionpack/test/controller/log_subscriber_test.rb +++ b/actionpack/test/controller/log_subscriber_test.rb @@ -95,7 +95,7 @@ class ACLogSubscriberTest < ActionController::TestCase @old_logger = ActionController::Base.logger - @cache_path = File.join Dir.tmpdir, Dir::Tmpname.make_tmpname('tmp', 'cache') + @cache_path = File.join Dir.tmpdir, Dir::Tmpname.make_tmpname("tmp", "cache") @controller.cache_store = :file_store, @cache_path ActionController::LogSubscriber.attach_to :action_controller end @@ -140,7 +140,7 @@ class ACLogSubscriberTest < ActionController::TestCase end def test_process_action_with_parameters - get :show, params: { id: '10' } + get :show, params: { id: "10" } wait assert_equal 3, logs.size @@ -148,8 +148,8 @@ class ACLogSubscriberTest < ActionController::TestCase end def test_multiple_process_with_parameters - get :show, params: { id: '10' } - get :show, params: { id: '20' } + get :show, params: { id: "10" } + get :show, params: { id: "20" } wait @@ -159,8 +159,8 @@ class ACLogSubscriberTest < ActionController::TestCase end def test_process_action_with_wrapped_parameters - @request.env['CONTENT_TYPE'] = 'application/json' - post :show, params: { id: '10', name: 'jose' } + @request.env["CONTENT_TYPE"] = "application/json" + post :show, params: { id: "10", name: "jose" } wait assert_equal 3, logs.size @@ -186,14 +186,14 @@ class ACLogSubscriberTest < ActionController::TestCase def test_process_action_headers get :show wait - assert_equal "Rails Testing", @controller.last_payload[:headers]['User-Agent'] + assert_equal "Rails Testing", @controller.last_payload[:headers]["User-Agent"] end def test_process_action_with_filter_parameters @request.env["action_dispatch.parameter_filter"] = [:lifo, :amount] get :show, params: { - lifo: 'Pratik', amount: '420', step: '1' + lifo: "Pratik", amount: "420", step: "1" } wait @@ -212,7 +212,7 @@ class ACLogSubscriberTest < ActionController::TestCase end def test_filter_redirect_url_by_string - @request.env['action_dispatch.redirect_filter'] = ['secret'] + @request.env["action_dispatch.redirect_filter"] = ["secret"] get :filterable_redirector wait @@ -221,7 +221,7 @@ class ACLogSubscriberTest < ActionController::TestCase end def test_filter_redirect_url_by_regexp - @request.env['action_dispatch.redirect_filter'] = [/secret\.foo.+/] + @request.env["action_dispatch.redirect_filter"] = [/secret\.foo.+/] get :filterable_redirector wait diff --git a/actionpack/test/controller/metal/renderers_test.rb b/actionpack/test/controller/metal/renderers_test.rb index 247e872674..7dc3dd6a6d 100644 --- a/actionpack/test/controller/metal/renderers_test.rb +++ b/actionpack/test/controller/metal/renderers_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'active_support/core_ext/hash/conversions' +require "abstract_unit" +require "active_support/core_ext/hash/conversions" class MetalRenderingController < ActionController::Metal include AbstractController::Rendering @@ -10,11 +10,11 @@ end class MetalRenderingJsonController < MetalRenderingController class Model def to_json(options = {}) - { a: 'b' }.to_json(options) + { a: "b" }.to_json(options) end def to_xml(options = {}) - { a: 'b' }.to_xml(options) + { a: "b" }.to_xml(options) end end @@ -35,14 +35,14 @@ class RenderersMetalTest < ActionController::TestCase def test_render_json get :one assert_response :success - assert_equal({ a: 'b' }.to_json, @response.body) - assert_equal 'application/json', @response.content_type + assert_equal({ a: "b" }.to_json, @response.body) + assert_equal "application/json", @response.content_type end def test_render_xml get :two assert_response :success assert_equal(" ", @response.body) - assert_equal 'text/plain', @response.content_type + assert_equal "text/plain", @response.content_type end end diff --git a/actionpack/test/controller/mime/accept_format_test.rb b/actionpack/test/controller/mime/accept_format_test.rb index e20c08da4e..a2834c9f39 100644 --- a/actionpack/test/controller/mime/accept_format_test.rb +++ b/actionpack/test/controller/mime/accept_format_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class StarStarMimeController < ActionController::Base layout nil @@ -11,7 +11,7 @@ end class StarStarMimeControllerTest < ActionController::TestCase def test_javascript_with_format @request.accept = "text/javascript" - get :index, format: 'js' + get :index, format: "js" assert_match "function addition(a,b){ return a+b; }", @response.body end @@ -71,7 +71,7 @@ class MimeControllerLayoutsTest < ActionController::TestCase @request.accept = "text/iphone" get :index - assert_equal 'Hello iPhone', @response.body + assert_equal "Hello iPhone", @response.body end def test_format_with_inherited_layouts diff --git a/actionpack/test/controller/mime/respond_to_test.rb b/actionpack/test/controller/mime/respond_to_test.rb index 993f4001de..ef2d89e1c0 100644 --- a/actionpack/test/controller/mime/respond_to_test.rb +++ b/actionpack/test/controller/mime/respond_to_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" require "active_support/log_subscriber/test_helper" class RespondToController < ActionController::Base @@ -45,9 +45,9 @@ class RespondToController < ActionController::Base def json_xml_or_html respond_to do |type| - type.json { render body: 'JSON' } - type.xml { render :xml => 'XML' } - type.html { render body: 'HTML' } + type.json { render body: "JSON" } + type.xml { render :xml => "XML" } + type.html { render body: "HTML" } end end @@ -133,8 +133,8 @@ class RespondToController < ActionController::Base def handle_any_any respond_to do |type| - type.html { render body: 'HTML' } - type.any { render body: 'Whatever you ask for, I got it' } + type.html { render body: "HTML" } + type.any { render body: "Whatever you ask for, I got it" } end end @@ -146,7 +146,7 @@ class RespondToController < ActionController::Base def json_with_callback respond_to do |type| - type.json { render :json => 'JS', :callback => 'alert' } + type.json { render :json => "JS", :callback => "alert" } end end @@ -305,10 +305,10 @@ class RespondToControllerTest < ActionController::TestCase def test_html @request.accept = "text/html" get :js_or_html - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body get :html_or_xml - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body assert_raises(ActionController::UnknownFormat) do get :just_xml @@ -318,29 +318,29 @@ class RespondToControllerTest < ActionController::TestCase def test_all @request.accept = "*/*" get :js_or_html - assert_equal 'HTML', @response.body # js is not part of all + assert_equal "HTML", @response.body # js is not part of all get :html_or_xml - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body get :just_xml - assert_equal 'XML', @response.body + assert_equal "XML", @response.body end def test_xml @request.accept = "application/xml" get :html_xml_or_rss - assert_equal 'XML', @response.body + assert_equal "XML", @response.body end def test_js_or_html @request.accept = "text/javascript, text/html" get :js_or_html, xhr: true - assert_equal 'JS', @response.body + assert_equal "JS", @response.body @request.accept = "text/javascript, text/html" get :html_or_xml, xhr: true - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body @request.accept = "text/javascript, text/html" @@ -352,25 +352,25 @@ class RespondToControllerTest < ActionController::TestCase def test_json_or_yaml_with_leading_star_star @request.accept = "*/*, application/json" get :json_xml_or_html - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body @request.accept = "*/* , application/json" get :json_xml_or_html - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body end def test_json_or_yaml get :json_or_yaml, xhr: true - assert_equal 'JSON', @response.body + assert_equal "JSON", @response.body - get :json_or_yaml, format: 'json' - assert_equal 'JSON', @response.body + get :json_or_yaml, format: "json" + assert_equal "JSON", @response.body - get :json_or_yaml, format: 'yaml' - assert_equal 'YAML', @response.body + get :json_or_yaml, format: "yaml" + assert_equal "YAML", @response.body - { 'YAML' => %w(text/yaml), - 'JSON' => %w(application/json text/x-json) + { "YAML" => %w(text/yaml), + "JSON" => %w(application/json text/x-json) }.each do |body, content_types| content_types.each do |content_type| @request.accept = content_type @@ -383,20 +383,20 @@ class RespondToControllerTest < ActionController::TestCase def test_js_or_anything @request.accept = "text/javascript, */*" get :js_or_html, xhr: true - assert_equal 'JS', @response.body + assert_equal "JS", @response.body get :html_or_xml, xhr: true - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body get :just_xml, xhr: true - assert_equal 'XML', @response.body + assert_equal "XML", @response.body end def test_using_defaults @request.accept = "*/*" get :using_defaults assert_equal "text/html", @response.content_type - assert_equal 'Hello world!', @response.body + assert_equal "Hello world!", @response.body @request.accept = "application/xml" get :using_defaults @@ -422,7 +422,7 @@ class RespondToControllerTest < ActionController::TestCase @request.accept = "*/*" get :using_defaults_with_type_list assert_equal "text/html", @response.content_type - assert_equal 'Hello world!', @response.body + assert_equal "Hello world!", @response.body @request.accept = "application/xml" get :using_defaults_with_type_list @@ -447,7 +447,7 @@ class RespondToControllerTest < ActionController::TestCase def test_synonyms @request.accept = "application/javascript" get :js_or_html - assert_equal 'JS', @response.body + assert_equal "JS", @response.body @request.accept = "application/x-xml" get :html_xml_or_rss @@ -458,82 +458,82 @@ class RespondToControllerTest < ActionController::TestCase @request.accept = "application/crazy-xml" get :custom_type_handling assert_equal "application/crazy-xml", @response.content_type - assert_equal 'Crazy XML', @response.body + assert_equal "Crazy XML", @response.body @request.accept = "text/html" get :custom_type_handling assert_equal "text/html", @response.content_type - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body end def test_xhtml_alias @request.accept = "application/xhtml+xml,application/xml" get :html_or_xml - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body end def test_firefox_simulation @request.accept = "text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5" get :html_or_xml - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body end def test_handle_any @request.accept = "*/*" get :handle_any - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body @request.accept = "text/javascript" get :handle_any - assert_equal 'Either JS or XML', @response.body + assert_equal "Either JS or XML", @response.body @request.accept = "text/xml" get :handle_any - assert_equal 'Either JS or XML', @response.body + assert_equal "Either JS or XML", @response.body end def test_handle_any_any @request.accept = "*/*" get :handle_any_any - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body end def test_handle_any_any_parameter_format - get :handle_any_any, format: 'html' - assert_equal 'HTML', @response.body + get :handle_any_any, format: "html" + assert_equal "HTML", @response.body end def test_handle_any_any_explicit_html @request.accept = "text/html" get :handle_any_any - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body end def test_handle_any_any_javascript @request.accept = "text/javascript" get :handle_any_any - assert_equal 'Whatever you ask for, I got it', @response.body + assert_equal "Whatever you ask for, I got it", @response.body end def test_handle_any_any_xml @request.accept = "text/xml" get :handle_any_any - assert_equal 'Whatever you ask for, I got it', @response.body + assert_equal "Whatever you ask for, I got it", @response.body end def test_handle_any_any_unkown_format - get :handle_any_any, format: 'php' - assert_equal 'Whatever you ask for, I got it', @response.body + get :handle_any_any, format: "php" + assert_equal "Whatever you ask for, I got it", @response.body end def test_browser_check_with_any_any @request.accept = "application/json, application/xml" get :json_xml_or_html - assert_equal 'JSON', @response.body + assert_equal "JSON", @response.body @request.accept = "application/json, application/xml, */*" get :json_xml_or_html - assert_equal 'HTML', @response.body + assert_equal "HTML", @response.body end def test_html_type_with_layout @@ -543,15 +543,15 @@ class RespondToControllerTest < ActionController::TestCase end def test_json_with_callback_sets_javascript_content_type - @request.accept = 'application/json' + @request.accept = "application/json" get :json_with_callback - assert_equal '/**/alert(JS)', @response.body - assert_equal 'text/javascript', @response.content_type + assert_equal "/**/alert(JS)", @response.body + assert_equal "text/javascript", @response.content_type end def test_xhr get :js_or_html, xhr: true - assert_equal 'JS', @response.body + assert_equal "JS", @response.body end def test_custom_constant @@ -685,7 +685,7 @@ class RespondToControllerTest < ActionController::TestCase logger = ActiveSupport::LogSubscriber::TestHelper::MockLogger.new old_logger, ActionController::Base.logger = ActionController::Base.logger, logger - get :variant_without_implicit_template_rendering, format: 'json', params: { v: :does_not_matter } + get :variant_without_implicit_template_rendering, format: "json", params: { v: :does_not_matter } assert_response :no_content assert_equal 1, logger.logged(:info).select{ |s| s == NO_CONTENT_WARNING }.size, "Implicit head :no_content not logged" diff --git a/actionpack/test/controller/new_base/bare_metal_test.rb b/actionpack/test/controller/new_base/bare_metal_test.rb index ee3c498b1c..9956f0b107 100644 --- a/actionpack/test/controller/new_base/bare_metal_test.rb +++ b/actionpack/test/controller/new_base/bare_metal_test.rb @@ -102,38 +102,38 @@ module BareMetalTest test "head :continue (100) does not return a content-type header" do headers = HeadController.action(:continue).call(Rack::MockRequest.env_for("/")).second - assert_nil headers['Content-Type'] - assert_nil headers['Content-Length'] + assert_nil headers["Content-Type"] + assert_nil headers["Content-Length"] end test "head :switching_protocols (101) does not return a content-type header" do headers = HeadController.action(:switching_protocols).call(Rack::MockRequest.env_for("/")).second - assert_nil headers['Content-Type'] - assert_nil headers['Content-Length'] + assert_nil headers["Content-Type"] + assert_nil headers["Content-Length"] end test "head :processing (102) does not return a content-type header" do headers = HeadController.action(:processing).call(Rack::MockRequest.env_for("/")).second - assert_nil headers['Content-Type'] - assert_nil headers['Content-Length'] + assert_nil headers["Content-Type"] + assert_nil headers["Content-Length"] end test "head :no_content (204) does not return a content-type header" do headers = HeadController.action(:no_content).call(Rack::MockRequest.env_for("/")).second - assert_nil headers['Content-Type'] - assert_nil headers['Content-Length'] + assert_nil headers["Content-Type"] + assert_nil headers["Content-Length"] end test "head :reset_content (205) does not return a content-type header" do headers = HeadController.action(:reset_content).call(Rack::MockRequest.env_for("/")).second - assert_nil headers['Content-Type'] - assert_nil headers['Content-Length'] + assert_nil headers["Content-Type"] + assert_nil headers["Content-Length"] end test "head :not_modified (304) does not return a content-type header" do headers = HeadController.action(:not_modified).call(Rack::MockRequest.env_for("/")).second - assert_nil headers['Content-Type'] - assert_nil headers['Content-Length'] + assert_nil headers["Content-Type"] + assert_nil headers["Content-Length"] end test "head :no_content (204) does not return any content" do diff --git a/actionpack/test/controller/new_base/base_test.rb b/actionpack/test/controller/new_base/base_test.rb index 0755dafe93..3765d406fc 100644 --- a/actionpack/test/controller/new_base/base_test.rb +++ b/actionpack/test/controller/new_base/base_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" # Tests the controller dispatching happy path module Dispatching @@ -69,48 +69,48 @@ module Dispatching end test "controller path" do - assert_equal 'dispatching/empty', EmptyController.controller_path + assert_equal "dispatching/empty", EmptyController.controller_path assert_equal EmptyController.controller_path, EmptyController.new.controller_path end test "non-default controller path" do - assert_equal 'i_am_not_default', NonDefaultPathController.controller_path + assert_equal "i_am_not_default", NonDefaultPathController.controller_path assert_equal NonDefaultPathController.controller_path, NonDefaultPathController.new.controller_path end test "sub controller path" do - assert_equal 'dispatching/sub_empty', SubEmptyController.controller_path + assert_equal "dispatching/sub_empty", SubEmptyController.controller_path assert_equal SubEmptyController.controller_path, SubEmptyController.new.controller_path end test "namespaced controller path" do - assert_equal 'dispatching/submodule/contained_empty', Submodule::ContainedEmptyController.controller_path + assert_equal "dispatching/submodule/contained_empty", Submodule::ContainedEmptyController.controller_path assert_equal Submodule::ContainedEmptyController.controller_path, Submodule::ContainedEmptyController.new.controller_path end test "namespaced non-default controller path" do - assert_equal 'i_am_extremely_not_default', Submodule::ContainedNonDefaultPathController.controller_path + assert_equal "i_am_extremely_not_default", Submodule::ContainedNonDefaultPathController.controller_path assert_equal Submodule::ContainedNonDefaultPathController.controller_path, Submodule::ContainedNonDefaultPathController.new.controller_path end test "namespaced sub controller path" do - assert_equal 'dispatching/submodule/contained_sub_empty', Submodule::ContainedSubEmptyController.controller_path + assert_equal "dispatching/submodule/contained_sub_empty", Submodule::ContainedSubEmptyController.controller_path assert_equal Submodule::ContainedSubEmptyController.controller_path, Submodule::ContainedSubEmptyController.new.controller_path end test "controller name" do - assert_equal 'empty', EmptyController.controller_name - assert_equal 'contained_empty', Submodule::ContainedEmptyController.controller_name + assert_equal "empty", EmptyController.controller_name + assert_equal "contained_empty", Submodule::ContainedEmptyController.controller_name end test "non-default path controller name" do - assert_equal 'non_default_path', NonDefaultPathController.controller_name - assert_equal 'contained_non_default_path', Submodule::ContainedNonDefaultPathController.controller_name + assert_equal "non_default_path", NonDefaultPathController.controller_name + assert_equal "contained_non_default_path", Submodule::ContainedNonDefaultPathController.controller_name end test "sub controller name" do - assert_equal 'sub_empty', SubEmptyController.controller_name - assert_equal 'contained_sub_empty', Submodule::ContainedSubEmptyController.controller_name + assert_equal "sub_empty", SubEmptyController.controller_name + assert_equal "contained_sub_empty", Submodule::ContainedSubEmptyController.controller_name end test "action methods" do diff --git a/actionpack/test/controller/new_base/content_negotiation_test.rb b/actionpack/test/controller/new_base/content_negotiation_test.rb index c0e92b3b05..8f63a7eab1 100644 --- a/actionpack/test/controller/new_base/content_negotiation_test.rb +++ b/actionpack/test/controller/new_base/content_negotiation_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module ContentNegotiation diff --git a/actionpack/test/controller/new_base/content_type_test.rb b/actionpack/test/controller/new_base/content_type_test.rb index 0b3a26807d..15b899e282 100644 --- a/actionpack/test/controller/new_base/content_type_test.rb +++ b/actionpack/test/controller/new_base/content_type_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module ContentType class BaseController < ActionController::Base @@ -44,7 +44,7 @@ module ContentType with_routing do |set| set.draw do ActiveSupport::Deprecation.silence do - get ':controller', :action => 'index' + get ":controller", :action => "index" end end diff --git a/actionpack/test/controller/new_base/middleware_test.rb b/actionpack/test/controller/new_base/middleware_test.rb index 85a1f351f0..827eb9f31b 100644 --- a/actionpack/test/controller/new_base/middleware_test.rb +++ b/actionpack/test/controller/new_base/middleware_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module MiddlewareTest class MyMiddleware diff --git a/actionpack/test/controller/new_base/render_action_test.rb b/actionpack/test/controller/new_base/render_action_test.rb index 3bf1dd0ede..e42fea3656 100644 --- a/actionpack/test/controller/new_base/render_action_test.rb +++ b/actionpack/test/controller/new_base/render_action_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderAction # This has no layout and it works diff --git a/actionpack/test/controller/new_base/render_body_test.rb b/actionpack/test/controller/new_base/render_body_test.rb index c65c245773..b1467a0deb 100644 --- a/actionpack/test/controller/new_base/render_body_test.rb +++ b/actionpack/test/controller/new_base/render_body_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderBody class MinimalController < ActionController::Metal @@ -66,7 +66,7 @@ module RenderBody end def with_custom_content_type - response.headers['Content-Type'] = 'application/json' + response.headers["Content-Type"] = "application/json" render body: '["troll","face"]' end @@ -85,7 +85,7 @@ module RenderBody test "rendering body from an action with default options renders the body with the layout" do with_routing do |set| - set.draw { ActiveSupport::Deprecation.silence { get ':controller', action: 'index' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller", action: "index" } } get "/render_body/simple" assert_body "hello david" @@ -95,7 +95,7 @@ module RenderBody test "rendering body from an action with default options renders the body without the layout" do with_routing do |set| - set.draw { ActiveSupport::Deprecation.silence { get ':controller', action: 'index' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller", action: "index" } } get "/render_body/with_layout" @@ -150,7 +150,7 @@ module RenderBody get "/render_body/with_layout/with_custom_content_type" assert_equal %w{ troll face }, JSON.parse(response.body) - assert_equal 'application/json', response.headers['Content-Type'] + assert_equal "application/json", response.headers["Content-Type"] end test "rendering body with layout: false" do diff --git a/actionpack/test/controller/new_base/render_context_test.rb b/actionpack/test/controller/new_base/render_context_test.rb index 177a1c088d..1220349658 100644 --- a/actionpack/test/controller/new_base/render_context_test.rb +++ b/actionpack/test/controller/new_base/render_context_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" # This is testing the decoupling of view renderer and view context # by allowing the controller to be used as view context. This is diff --git a/actionpack/test/controller/new_base/render_file_test.rb b/actionpack/test/controller/new_base/render_file_test.rb index 0c21bb0719..b6ba202854 100644 --- a/actionpack/test/controller/new_base/render_file_test.rb +++ b/actionpack/test/controller/new_base/render_file_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderFile class BasicController < ActionController::Base @@ -9,28 +9,28 @@ module RenderFile end def with_instance_variables - @secret = 'in the sauce' - render :file => File.join(File.dirname(__FILE__), '../../fixtures/test/render_file_with_ivar') + @secret = "in the sauce" + render :file => File.join(File.dirname(__FILE__), "../../fixtures/test/render_file_with_ivar") end def relative_path - @secret = 'in the sauce' - render :file => '../../fixtures/test/render_file_with_ivar' + @secret = "in the sauce" + render :file => "../../fixtures/test/render_file_with_ivar" end def relative_path_with_dot - @secret = 'in the sauce' - render :file => '../../fixtures/test/dot.directory/render_file_with_ivar' + @secret = "in the sauce" + render :file => "../../fixtures/test/dot.directory/render_file_with_ivar" end def pathname - @secret = 'in the sauce' + @secret = "in the sauce" render :file => Pathname.new(File.dirname(__FILE__)).join(*%w[.. .. fixtures test dot.directory render_file_with_ivar]) end def with_locals - path = File.join(File.dirname(__FILE__), '../../fixtures/test/render_file_with_locals') - render :file => path, :locals => {:secret => 'in the sauce'} + path = File.join(File.dirname(__FILE__), "../../fixtures/test/render_file_with_locals") + render :file => path, :locals => {:secret => "in the sauce"} end end diff --git a/actionpack/test/controller/new_base/render_html_test.rb b/actionpack/test/controller/new_base/render_html_test.rb index bfed136496..8019aa1eb5 100644 --- a/actionpack/test/controller/new_base/render_html_test.rb +++ b/actionpack/test/controller/new_base/render_html_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderHtml class MinimalController < ActionController::Metal @@ -88,7 +88,7 @@ module RenderHtml test "rendering text from an action with default options renders the text with the layout" do with_routing do |set| - set.draw { ActiveSupport::Deprecation.silence { get ':controller', action: 'index' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller", action: "index" } } get "/render_html/simple" assert_body "hello david" @@ -98,7 +98,7 @@ module RenderHtml test "rendering text from an action with default options renders the text without the layout" do with_routing do |set| - set.draw { ActiveSupport::Deprecation.silence { get ':controller', action: 'index' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller", action: "index" } } get "/render_html/with_layout" diff --git a/actionpack/test/controller/new_base/render_implicit_action_test.rb b/actionpack/test/controller/new_base/render_implicit_action_test.rb index 5b4885f7e0..796283466a 100644 --- a/actionpack/test/controller/new_base/render_implicit_action_test.rb +++ b/actionpack/test/controller/new_base/render_implicit_action_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderImplicitAction class SimpleController < ::ApplicationController @@ -6,7 +6,7 @@ module RenderImplicitAction "render_implicit_action/simple/hello_world.html.erb" => "Hello world!", "render_implicit_action/simple/hyphen-ated.html.erb" => "Hello hyphen-ated!", "render_implicit_action/simple/not_implemented.html.erb" => "Not Implemented" - ), ActionView::FileSystemResolver.new(File.expand_path('../../../controller', __FILE__))] + ), ActionView::FileSystemResolver.new(File.expand_path("../../../controller", __FILE__))] def hello_world() end end diff --git a/actionpack/test/controller/new_base/render_layout_test.rb b/actionpack/test/controller/new_base/render_layout_test.rb index 7ab3777026..3b2220729e 100644 --- a/actionpack/test/controller/new_base/render_layout_test.rb +++ b/actionpack/test/controller/new_base/render_layout_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module ControllerLayouts class ImplicitController < ::ApplicationController diff --git a/actionpack/test/controller/new_base/render_partial_test.rb b/actionpack/test/controller/new_base/render_partial_test.rb index 9e5022c9f4..0438773b06 100644 --- a/actionpack/test/controller/new_base/render_partial_test.rb +++ b/actionpack/test/controller/new_base/render_partial_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderPartial @@ -20,12 +20,12 @@ module RenderPartial end def changing - @test_unchanged = 'hello' + @test_unchanged = "hello" render :action => "basic" end def overridden - @test_unchanged = 'hello' + @test_unchanged = "hello" end end diff --git a/actionpack/test/controller/new_base/render_plain_test.rb b/actionpack/test/controller/new_base/render_plain_test.rb index 94afe7bcfe..44be8dd380 100644 --- a/actionpack/test/controller/new_base/render_plain_test.rb +++ b/actionpack/test/controller/new_base/render_plain_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderPlain class MinimalController < ActionController::Metal @@ -80,7 +80,7 @@ module RenderPlain test "rendering text from an action with default options renders the text with the layout" do with_routing do |set| - set.draw { ActiveSupport::Deprecation.silence { get ':controller', action: 'index' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller", action: "index" } } get "/render_plain/simple" assert_body "hello david" @@ -90,7 +90,7 @@ module RenderPlain test "rendering text from an action with default options renders the text without the layout" do with_routing do |set| - set.draw { ActiveSupport::Deprecation.silence { get ':controller', action: 'index' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller", action: "index" } } get "/render_plain/with_layout" diff --git a/actionpack/test/controller/new_base/render_streaming_test.rb b/actionpack/test/controller/new_base/render_streaming_test.rb index 9ea056194a..97fc3b41e0 100644 --- a/actionpack/test/controller/new_base/render_streaming_test.rb +++ b/actionpack/test/controller/new_base/render_streaming_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderStreaming class BasicController < ActionController::Base diff --git a/actionpack/test/controller/new_base/render_template_test.rb b/actionpack/test/controller/new_base/render_template_test.rb index 0d4c7cdb0a..777143bef1 100644 --- a/actionpack/test/controller/new_base/render_template_test.rb +++ b/actionpack/test/controller/new_base/render_template_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderTemplate class WithoutLayoutController < ActionController::Base @@ -30,23 +30,23 @@ module RenderTemplate end def in_top_directory - render :template => 'shared' + render :template => "shared" end def in_top_directory_with_slash - render :template => '/shared' + render :template => "/shared" end def in_top_directory_with_slash_without_key - render '/shared' + render "/shared" end def with_locals - render :template => "locals", :locals => { :secret => 'area51' } + render :template => "locals", :locals => { :secret => "area51" } end def with_locals_without_key - render "locals", :locals => { :secret => 'area51' } + render "locals", :locals => { :secret => "area51" } end def builder_template @@ -126,7 +126,7 @@ module RenderTemplate assert_body "Hello this is also raw in an html template" assert_status 200 - get :with_implicit_raw, params: { format: 'text' } + get :with_implicit_raw, params: { format: "text" } assert_body "Hello this is also raw in a text template" assert_status 200 @@ -177,7 +177,7 @@ module RenderTemplate class TestWithLayout < Rack::TestCase test "rendering with implicit layout" do with_routing do |set| - set.draw { ActiveSupport::Deprecation.silence { get ':controller', :action => :index } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller", :action => :index } } get "/render_template/with_layout" diff --git a/actionpack/test/controller/new_base/render_test.rb b/actionpack/test/controller/new_base/render_test.rb index 1fb852a2c4..494f70abb7 100644 --- a/actionpack/test/controller/new_base/render_test.rb +++ b/actionpack/test/controller/new_base/render_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module Render class BlankRenderController < ActionController::Base @@ -58,7 +58,7 @@ module Render with_routing do |set| set.draw do ActiveSupport::Deprecation.silence do - get ":controller", :action => 'index' + get ":controller", :action => "index" end end @@ -73,7 +73,7 @@ module Render with_routing do |set| set.draw do ActiveSupport::Deprecation.silence do - get ":controller", :action => 'index' + get ":controller", :action => "index" end end diff --git a/actionpack/test/controller/new_base/render_text_test.rb b/actionpack/test/controller/new_base/render_text_test.rb index d4111d432c..6f55c497b4 100644 --- a/actionpack/test/controller/new_base/render_text_test.rb +++ b/actionpack/test/controller/new_base/render_text_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderText class MinimalController < ActionController::Metal @@ -83,7 +83,7 @@ module RenderText test "rendering text from an action with default options renders the text with the layout" do with_routing do |set| - set.draw { ActiveSupport::Deprecation.silence { get ':controller', action: 'index' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller", action: "index" } } ActiveSupport::Deprecation.silence do get "/render_text/simple" @@ -96,7 +96,7 @@ module RenderText test "rendering text from an action with default options renders the text without the layout" do with_routing do |set| - set.draw { ActiveSupport::Deprecation.silence { get ':controller', action: 'index' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller", action: "index" } } ActiveSupport::Deprecation.silence do get "/render_text/with_layout" diff --git a/actionpack/test/controller/new_base/render_xml_test.rb b/actionpack/test/controller/new_base/render_xml_test.rb index b8527a943d..cff6f94818 100644 --- a/actionpack/test/controller/new_base/render_xml_test.rb +++ b/actionpack/test/controller/new_base/render_xml_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module RenderXml diff --git a/actionpack/test/controller/output_escaping_test.rb b/actionpack/test/controller/output_escaping_test.rb index c3c549fbfc..64016b3641 100644 --- a/actionpack/test/controller/output_escaping_test.rb +++ b/actionpack/test/controller/output_escaping_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class OutputEscapingTest < ActiveSupport::TestCase diff --git a/actionpack/test/controller/parameters/accessors_test.rb b/actionpack/test/controller/parameters/accessors_test.rb index 17c62dc3fe..a63512e8bd 100644 --- a/actionpack/test/controller/parameters/accessors_test.rb +++ b/actionpack/test/controller/parameters/accessors_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' -require 'action_controller/metal/strong_parameters' -require 'active_support/core_ext/hash/transform_values' +require "abstract_unit" +require "action_controller/metal/strong_parameters" +require "active_support/core_ext/hash/transform_values" class ParametersAccessorsTest < ActiveSupport::TestCase setup do @@ -8,12 +8,12 @@ class ParametersAccessorsTest < ActiveSupport::TestCase @params = ActionController::Parameters.new( person: { - age: '32', + age: "32", name: { - first: 'David', - last: 'Heinemeier Hansson' + first: "David", + last: "Heinemeier Hansson" }, - addresses: [{city: 'Chicago', state: 'Illinois'}] + addresses: [{city: "Chicago", state: "Illinois"}] } ) end @@ -158,7 +158,7 @@ class ParametersAccessorsTest < ActiveSupport::TestCase assert(params2 == params1) end - test 'is not equal to an unpermitted Parameters instance with same params' do + test "is not equal to an unpermitted Parameters instance with same params" do params1 = ActionController::Parameters.new(a: 1).permit(:a) params2 = ActionController::Parameters.new(a: 1) assert(params1 != params2) @@ -173,7 +173,7 @@ class ParametersAccessorsTest < ActiveSupport::TestCase end test "equality with simple types works" do - assert(@params != 'Hello') + assert(@params != "Hello") assert(@params != 42) assert(@params != false) end diff --git a/actionpack/test/controller/parameters/always_permitted_parameters_test.rb b/actionpack/test/controller/parameters/always_permitted_parameters_test.rb index c5bfb10b53..40e2f5152a 100644 --- a/actionpack/test/controller/parameters/always_permitted_parameters_test.rb +++ b/actionpack/test/controller/parameters/always_permitted_parameters_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'action_controller/metal/strong_parameters' +require "abstract_unit" +require "action_controller/metal/strong_parameters" class AlwaysPermittedParametersTest < ActiveSupport::TestCase def setup diff --git a/actionpack/test/controller/parameters/dup_test.rb b/actionpack/test/controller/parameters/dup_test.rb index 66bc8155c8..152f608266 100644 --- a/actionpack/test/controller/parameters/dup_test.rb +++ b/actionpack/test/controller/parameters/dup_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'action_controller/metal/strong_parameters' +require "abstract_unit" +require "action_controller/metal/strong_parameters" class ParametersDupTest < ActiveSupport::TestCase setup do @@ -7,12 +7,12 @@ class ParametersDupTest < ActiveSupport::TestCase @params = ActionController::Parameters.new( person: { - age: '32', + age: "32", name: { - first: 'David', - last: 'Heinemeier Hansson' + first: "David", + last: "Heinemeier Hansson" }, - addresses: [{city: 'Chicago', state: 'Illinois'}] + addresses: [{city: "Chicago", state: "Illinois"}] } ) end diff --git a/actionpack/test/controller/parameters/log_on_unpermitted_params_test.rb b/actionpack/test/controller/parameters/log_on_unpermitted_params_test.rb index 9ce04b9aeb..b1a9b9176c 100644 --- a/actionpack/test/controller/parameters/log_on_unpermitted_params_test.rb +++ b/actionpack/test/controller/parameters/log_on_unpermitted_params_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'action_controller/metal/strong_parameters' +require "abstract_unit" +require "action_controller/metal/strong_parameters" class LogOnUnpermittedParamsTest < ActiveSupport::TestCase def setup diff --git a/actionpack/test/controller/parameters/multi_parameter_attributes_test.rb b/actionpack/test/controller/parameters/multi_parameter_attributes_test.rb index 15338059bc..1009f533a4 100644 --- a/actionpack/test/controller/parameters/multi_parameter_attributes_test.rb +++ b/actionpack/test/controller/parameters/multi_parameter_attributes_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'action_controller/metal/strong_parameters' +require "abstract_unit" +require "action_controller/metal/strong_parameters" class MultiParameterAttributesTest < ActiveSupport::TestCase test "permitted multi-parameter attribute keys" do diff --git a/actionpack/test/controller/parameters/mutators_test.rb b/actionpack/test/controller/parameters/mutators_test.rb index 744d8664be..a2dc84f2f7 100644 --- a/actionpack/test/controller/parameters/mutators_test.rb +++ b/actionpack/test/controller/parameters/mutators_test.rb @@ -1,17 +1,17 @@ -require 'abstract_unit' -require 'action_controller/metal/strong_parameters' -require 'active_support/core_ext/hash/transform_values' +require "abstract_unit" +require "action_controller/metal/strong_parameters" +require "active_support/core_ext/hash/transform_values" class ParametersMutatorsTest < ActiveSupport::TestCase setup do @params = ActionController::Parameters.new( person: { - age: '32', + age: "32", name: { - first: 'David', - last: 'Heinemeier Hansson' + first: "David", + last: "Heinemeier Hansson" }, - addresses: [{city: 'Chicago', state: 'Illinois'}] + addresses: [{city: "Chicago", state: "Illinois"}] } ) end diff --git a/actionpack/test/controller/parameters/nested_parameters_permit_test.rb b/actionpack/test/controller/parameters/nested_parameters_permit_test.rb index 5cf6f0d4e8..34c2e49fb6 100644 --- a/actionpack/test/controller/parameters/nested_parameters_permit_test.rb +++ b/actionpack/test/controller/parameters/nested_parameters_permit_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'action_controller/metal/strong_parameters' +require "abstract_unit" +require "action_controller/metal/strong_parameters" class NestedParametersPermitTest < ActiveSupport::TestCase def assert_filtered_out(params, key) @@ -23,7 +23,7 @@ class NestedParametersPermitTest < ActiveSupport::TestCase genre: "Tragedy" }, id: { - isbn: 'x' + isbn: "x" } }, magazine: "Mjallo!" @@ -47,26 +47,26 @@ class NestedParametersPermitTest < ActiveSupport::TestCase test "permitted nested parameters with a string or a symbol as a key" do params = ActionController::Parameters.new({ book: { - 'authors' => [ - { name: 'William Shakespeare', born: '1564-04-26' }, - { name: 'Christopher Marlowe' } + "authors" => [ + { name: "William Shakespeare", born: "1564-04-26" }, + { name: "Christopher Marlowe" } ] } }) - permitted = params.permit book: [ { 'authors' => [ :name ] } ] + permitted = params.permit book: [ { "authors" => [ :name ] } ] - assert_equal 'William Shakespeare', permitted[:book]['authors'][0][:name] - assert_equal 'William Shakespeare', permitted[:book][:authors][0][:name] - assert_equal 'Christopher Marlowe', permitted[:book]['authors'][1][:name] - assert_equal 'Christopher Marlowe', permitted[:book][:authors][1][:name] + assert_equal "William Shakespeare", permitted[:book]["authors"][0][:name] + assert_equal "William Shakespeare", permitted[:book][:authors][0][:name] + assert_equal "Christopher Marlowe", permitted[:book]["authors"][1][:name] + assert_equal "Christopher Marlowe", permitted[:book][:authors][1][:name] permitted = params.permit book: [ { authors: [ :name ] } ] - assert_equal 'William Shakespeare', permitted[:book]['authors'][0][:name] - assert_equal 'William Shakespeare', permitted[:book][:authors][0][:name] - assert_equal 'Christopher Marlowe', permitted[:book]['authors'][1][:name] - assert_equal 'Christopher Marlowe', permitted[:book][:authors][1][:name] + assert_equal "William Shakespeare", permitted[:book]["authors"][0][:name] + assert_equal "William Shakespeare", permitted[:book][:authors][0][:name] + assert_equal "Christopher Marlowe", permitted[:book]["authors"][1][:name] + assert_equal "Christopher Marlowe", permitted[:book][:authors][1][:name] end test "nested arrays with strings" do @@ -134,48 +134,48 @@ class NestedParametersPermitTest < ActiveSupport::TestCase params = ActionController::Parameters.new({ book: { authors_attributes: { - :'0' => { name: 'William Shakespeare', age_of_death: '52' }, - :'1' => { name: 'Unattributed Assistant' }, + :'0' => { name: "William Shakespeare", age_of_death: "52" }, + :'1' => { name: "Unattributed Assistant" }, :'2' => { name: %w(injected names) } } } }) permitted = params.permit book: { authors_attributes: [ :name ] } - assert_not_nil permitted[:book][:authors_attributes]['0'] - assert_not_nil permitted[:book][:authors_attributes]['1'] - assert_empty permitted[:book][:authors_attributes]['2'] - assert_equal 'William Shakespeare', permitted[:book][:authors_attributes]['0'][:name] - assert_equal 'Unattributed Assistant', permitted[:book][:authors_attributes]['1'][:name] + assert_not_nil permitted[:book][:authors_attributes]["0"] + assert_not_nil permitted[:book][:authors_attributes]["1"] + assert_empty permitted[:book][:authors_attributes]["2"] + assert_equal "William Shakespeare", permitted[:book][:authors_attributes]["0"][:name] + assert_equal "Unattributed Assistant", permitted[:book][:authors_attributes]["1"][:name] - assert_filtered_out permitted[:book][:authors_attributes]['0'], :age_of_death + assert_filtered_out permitted[:book][:authors_attributes]["0"], :age_of_death end test "fields_for-style nested params with negative numbers" do params = ActionController::Parameters.new({ book: { authors_attributes: { - :'-1' => { name: 'William Shakespeare', age_of_death: '52' }, - :'-2' => { name: 'Unattributed Assistant' } + :'-1' => { name: "William Shakespeare", age_of_death: "52" }, + :'-2' => { name: "Unattributed Assistant" } } } }) permitted = params.permit book: { authors_attributes: [:name] } - assert_not_nil permitted[:book][:authors_attributes]['-1'] - assert_not_nil permitted[:book][:authors_attributes]['-2'] - assert_equal 'William Shakespeare', permitted[:book][:authors_attributes]['-1'][:name] - assert_equal 'Unattributed Assistant', permitted[:book][:authors_attributes]['-2'][:name] + assert_not_nil permitted[:book][:authors_attributes]["-1"] + assert_not_nil permitted[:book][:authors_attributes]["-2"] + assert_equal "William Shakespeare", permitted[:book][:authors_attributes]["-1"][:name] + assert_equal "Unattributed Assistant", permitted[:book][:authors_attributes]["-2"][:name] - assert_filtered_out permitted[:book][:authors_attributes]['-1'], :age_of_death + assert_filtered_out permitted[:book][:authors_attributes]["-1"], :age_of_death end test "nested number as key" do params = ActionController::Parameters.new({ product: { properties: { - '0' => "prop0", - '1' => "prop1" + "0" => "prop0", + "1" => "prop1" } } }) diff --git a/actionpack/test/controller/parameters/parameters_permit_test.rb b/actionpack/test/controller/parameters/parameters_permit_test.rb index 2dd94c7230..ca59e670b9 100644 --- a/actionpack/test/controller/parameters/parameters_permit_test.rb +++ b/actionpack/test/controller/parameters/parameters_permit_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' -require 'action_dispatch/http/upload' -require 'action_controller/metal/strong_parameters' +require "abstract_unit" +require "action_dispatch/http/upload" +require "action_controller/metal/strong_parameters" class ParametersPermitTest < ActiveSupport::TestCase def assert_filtered_out(params, key) @@ -10,18 +10,18 @@ class ParametersPermitTest < ActiveSupport::TestCase setup do @params = ActionController::Parameters.new( person: { - age: '32', + age: "32", name: { - first: 'David', - last: 'Heinemeier Hansson' + first: "David", + last: "Heinemeier Hansson" }, - addresses: [{city: 'Chicago', state: 'Illinois'}] + addresses: [{city: "Chicago", state: "Illinois"}] } ) @struct_fields = [] %w(0 1 12).each do |number| - ['', 'i', 'f'].each do |suffix| + ["", "i", "f"].each do |suffix| @struct_fields << "sf(#{number}#{suffix})" end end @@ -38,7 +38,7 @@ class ParametersPermitTest < ActiveSupport::TestCase end end - test 'iteration should not impact permit' do + test "iteration should not impact permit" do hash = {"foo"=>{"bar"=>{"0"=>{"baz"=>"hello", "zot"=>"1"}}}} params = ActionController::Parameters.new(hash) @@ -48,15 +48,15 @@ class ParametersPermitTest < ActiveSupport::TestCase assert_equal({"0"=>{"baz"=>"hello"}}, sanitized[:bar].to_unsafe_h) end - test 'if nothing is permitted, the hash becomes empty' do - params = ActionController::Parameters.new(id: '1234') + test "if nothing is permitted, the hash becomes empty" do + params = ActionController::Parameters.new(id: "1234") permitted = params.permit assert permitted.permitted? assert permitted.empty? end - test 'key: permitted scalar values' do - values = ['a', :a, nil] + test "key: permitted scalar values" do + values = ["a", :a, nil] values += [0, 1.0, 2**128, BigDecimal.new(1)] values += [true, false] values += [Date.today, Time.now, DateTime.now] @@ -76,15 +76,15 @@ class ParametersPermitTest < ActiveSupport::TestCase end end - test 'key: unknown keys are filtered out' do - params = ActionController::Parameters.new(id: '1234', injected: 'injected') + test "key: unknown keys are filtered out" do + params = ActionController::Parameters.new(id: "1234", injected: "injected") permitted = params.permit(:id) - assert_equal '1234', permitted[:id] + assert_equal "1234", permitted[:id] assert_filtered_out permitted, :injected end - test 'key: arrays are filtered out' do - [[], [1], ['1']].each do |array| + test "key: arrays are filtered out" do + [[], [1], ["1"]].each do |array| params = ActionController::Parameters.new(id: array) permitted = params.permit(:id) assert_filtered_out permitted, :id @@ -97,8 +97,8 @@ class ParametersPermitTest < ActiveSupport::TestCase end end - test 'key: hashes are filtered out' do - [{}, {foo: 1}, {foo: 'bar'}].each do |hash| + test "key: hashes are filtered out" do + [{}, {foo: 1}, {foo: "bar"}].each do |hash| params = ActionController::Parameters.new(id: hash) permitted = params.permit(:id) assert_filtered_out permitted, :id @@ -111,7 +111,7 @@ class ParametersPermitTest < ActiveSupport::TestCase end end - test 'key: non-permitted scalar values are filtered out' do + test "key: non-permitted scalar values are filtered out" do params = ActionController::Parameters.new(id: Object.new) permitted = params.permit(:id) assert_filtered_out permitted, :id @@ -123,19 +123,19 @@ class ParametersPermitTest < ActiveSupport::TestCase end end - test 'key: it is not assigned if not present in params' do - params = ActionController::Parameters.new(name: 'Joe') + test "key: it is not assigned if not present in params" do + params = ActionController::Parameters.new(name: "Joe") permitted = params.permit(:id) assert !permitted.has_key?(:id) end - test 'key to empty array: empty arrays pass' do + test "key to empty array: empty arrays pass" do params = ActionController::Parameters.new(id: []) permitted = params.permit(id: []) assert_equal [], permitted[:id] end - test 'do not break params filtering on nil values' do + test "do not break params filtering on nil values" do params = ActionController::Parameters.new(a: 1, b: [1, 2, 3], c: nil) permitted = params.permit(:a, c: [], b: []) @@ -144,24 +144,24 @@ class ParametersPermitTest < ActiveSupport::TestCase assert_equal nil, permitted[:c] end - test 'key to empty array: arrays of permitted scalars pass' do - [['foo'], [1], ['foo', 'bar'], [1, 2, 3]].each do |array| + test "key to empty array: arrays of permitted scalars pass" do + [["foo"], [1], ["foo", "bar"], [1, 2, 3]].each do |array| params = ActionController::Parameters.new(id: array) permitted = params.permit(id: []) assert_equal array, permitted[:id] end end - test 'key to empty array: permitted scalar values do not pass' do - ['foo', 1].each do |permitted_scalar| + test "key to empty array: permitted scalar values do not pass" do + ["foo", 1].each do |permitted_scalar| params = ActionController::Parameters.new(id: permitted_scalar) permitted = params.permit(id: []) assert_filtered_out permitted, :id end end - test 'key to empty array: arrays of non-permitted scalar do not pass' do - [[Object.new], [[]], [[1]], [{}], [{id: '1'}]].each do |non_permitted_scalar| + test "key to empty array: arrays of non-permitted scalar do not pass" do + [[Object.new], [[]], [[1]], [{}], [{id: "1"}]].each do |non_permitted_scalar| params = ActionController::Parameters.new(id: non_permitted_scalar) permitted = params.permit(id: []) assert_filtered_out permitted, :id @@ -181,7 +181,7 @@ class ParametersPermitTest < ActiveSupport::TestCase assert_equal nil, params[:foo] end - test 'hashes in array values get wrapped' do + test "hashes in array values get wrapped" do params = ActionController::Parameters.new(foo: [{}, {}]) params[:foo].each do |hash| assert !hash.permitted? @@ -191,7 +191,7 @@ class ParametersPermitTest < ActiveSupport::TestCase # Strong params has an optimization to avoid looping every time you read # a key whose value is an array and building a new object. We check that # optimization here. - test 'arrays are converted at most once' do + test "arrays are converted at most once" do params = ActionController::Parameters.new(foo: [{}]) assert_same params[:foo], params[:foo] end @@ -202,7 +202,7 @@ class ParametersPermitTest < ActiveSupport::TestCase # This test checks that if we push a hash to an array (in-place modification) # the cache does not get fooled, the hash is still wrapped as strong params, # and not permitted. - test 'mutated arrays are detected' do + test "mutated arrays are detected" do params = ActionController::Parameters.new(users: [{id: 1}]) permitted = params.permit(users: [:id]) @@ -220,7 +220,7 @@ class ParametersPermitTest < ActiveSupport::TestCase assert_equal nil, @params.fetch(:foo) { nil } end - test 'KeyError in fetch block should not be covered up' do + test "KeyError in fetch block should not be covered up" do params = ActionController::Parameters.new e = assert_raises(KeyError) do params.fetch(:missing_key) { {}.fetch(:also_missing) } @@ -318,7 +318,7 @@ class ParametersPermitTest < ActiveSupport::TestCase params = ActionController::Parameters.new("f"=>{"language_facet"=>["Tibetan"]}) expected = {"f"=>{"language_facet"=>["Tibetan"]}} - assert params['f'].is_a? ActionController::Parameters + assert params["f"].is_a? ActionController::Parameters assert_equal expected, params.to_unsafe_h end @@ -329,10 +329,10 @@ class ParametersPermitTest < ActiveSupport::TestCase end.new params = ActionController::Parameters.new(prem: { likes: %i( dancing ) }) - assert_equal({ 'prem' => { 'likes' => %i( dancing ) } }, params.permit!.to_h) + assert_equal({ "prem" => { "likes" => %i( dancing ) } }, params.permit!.to_h) params = ActionController::Parameters.new(companies: [ company, :acme ]) - assert_equal({ 'companies' => [ company, :acme ] }, params.permit!.to_h) + assert_equal({ "companies" => [ company, :acme ] }, params.permit!.to_h) assert_not company.dupped end @@ -343,16 +343,16 @@ class ParametersPermitTest < ActiveSupport::TestCase end.new params = ActionController::Parameters.new(prem: { likes: %i( dancing ) }) - assert_equal({ 'prem' => { 'likes' => %i( dancing ) } }, params.to_unsafe_h) + assert_equal({ "prem" => { "likes" => %i( dancing ) } }, params.to_unsafe_h) params = ActionController::Parameters.new(companies: [ company, :acme ]) - assert_equal({ 'companies' => [ company, :acme ] }, params.to_unsafe_h) + assert_equal({ "companies" => [ company, :acme ] }, params.to_unsafe_h) assert_not company.dupped end test "include? returns true when the key is present" do assert @params.include? :person - assert @params.include? 'person' + assert @params.include? "person" assert_not @params.include? :gorilla end @@ -365,7 +365,7 @@ class ParametersPermitTest < ActiveSupport::TestCase refute params.permit(foo: :bar).has_key?(:foo) end - test '#permitted? is false by default' do + test "#permitted? is false by default" do params = ActionController::Parameters.new assert_equal false, params.permitted? diff --git a/actionpack/test/controller/parameters/raise_on_unpermitted_params_test.rb b/actionpack/test/controller/parameters/raise_on_unpermitted_params_test.rb index f9cc9f96f1..80a057dbac 100644 --- a/actionpack/test/controller/parameters/raise_on_unpermitted_params_test.rb +++ b/actionpack/test/controller/parameters/raise_on_unpermitted_params_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'action_controller/metal/strong_parameters' +require "abstract_unit" +require "action_controller/metal/strong_parameters" class RaiseOnUnpermittedParamsTest < ActiveSupport::TestCase def setup diff --git a/actionpack/test/controller/parameters/serialization_test.rb b/actionpack/test/controller/parameters/serialization_test.rb index c9d38c1f48..4fb1564c68 100644 --- a/actionpack/test/controller/parameters/serialization_test.rb +++ b/actionpack/test/controller/parameters/serialization_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' -require 'action_controller/metal/strong_parameters' -require 'active_support/core_ext/string/strip' +require "abstract_unit" +require "action_controller/metal/strong_parameters" +require "active_support/core_ext/string/strip" class ParametersSerializationTest < ActiveSupport::TestCase setup do @@ -12,7 +12,7 @@ class ParametersSerializationTest < ActiveSupport::TestCase ActionController::Parameters.permit_all_parameters = @old_permitted_parameters end - test 'yaml serialization' do + test "yaml serialization" do params = ActionController::Parameters.new(key: :value) assert_equal <<-end_of_yaml.strip_heredoc, YAML.dump(params) --- !ruby/object:ActionController::Parameters @@ -22,7 +22,7 @@ class ParametersSerializationTest < ActiveSupport::TestCase end_of_yaml end - test 'yaml deserialization' do + test "yaml deserialization" do params = ActionController::Parameters.new(key: :value) roundtripped = YAML.load(YAML.dump(params)) @@ -30,7 +30,7 @@ class ParametersSerializationTest < ActiveSupport::TestCase assert_not roundtripped.permitted? end - test 'yaml backwardscompatible with psych 2.0.8 format' do + test "yaml backwardscompatible with psych 2.0.8 format" do params = YAML.load <<-end_of_yaml.strip_heredoc --- !ruby/hash:ActionController::Parameters key: :value @@ -40,7 +40,7 @@ class ParametersSerializationTest < ActiveSupport::TestCase assert_not params.permitted? end - test 'yaml backwardscompatible with psych 2.0.9+ format' do + test "yaml backwardscompatible with psych 2.0.9+ format" do params = YAML.load(<<-end_of_yaml.strip_heredoc) --- !ruby/hash-with-ivars:ActionController::Parameters elements: diff --git a/actionpack/test/controller/params_wrapper_test.rb b/actionpack/test/controller/params_wrapper_test.rb index 7226beed26..d74e24437a 100644 --- a/actionpack/test/controller/params_wrapper_test.rb +++ b/actionpack/test/controller/params_wrapper_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module Admin; class User; end; end @@ -48,17 +48,17 @@ class ParamsWrapperTest < ActionController::TestCase def test_filtered_parameters with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu' } - assert_equal @request.filtered_parameters, { 'controller' => 'params_wrapper_test/users', 'action' => 'parse', 'username' => 'sikachu', 'user' => { 'username' => 'sikachu' } } + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu" } + assert_equal @request.filtered_parameters, { "controller" => "params_wrapper_test/users", "action" => "parse", "username" => "sikachu", "user" => { "username" => "sikachu" } } end end def test_derived_name_from_controller with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu' } - assert_parameters({ 'username' => 'sikachu', 'user' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu" } + assert_parameters({ "username" => "sikachu", "user" => { "username" => "sikachu" }}) end end @@ -66,9 +66,9 @@ class ParamsWrapperTest < ActionController::TestCase with_default_wrapper_options do UsersController.wrap_parameters :person - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu' } - assert_parameters({ 'username' => 'sikachu', 'person' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu" } + assert_parameters({ "username" => "sikachu", "person" => { "username" => "sikachu" }}) end end @@ -76,9 +76,9 @@ class ParamsWrapperTest < ActionController::TestCase with_default_wrapper_options do UsersController.wrap_parameters Person - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu' } - assert_parameters({ 'username' => 'sikachu', 'person' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu" } + assert_parameters({ "username" => "sikachu", "person" => { "username" => "sikachu" }}) end end @@ -86,9 +86,9 @@ class ParamsWrapperTest < ActionController::TestCase with_default_wrapper_options do UsersController.wrap_parameters :include => :username - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer', 'user' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer", "user" => { "username" => "sikachu" }}) end end @@ -96,9 +96,9 @@ class ParamsWrapperTest < ActionController::TestCase with_default_wrapper_options do UsersController.wrap_parameters :exclude => :title - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer', 'user' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer", "user" => { "username" => "sikachu" }}) end end @@ -106,26 +106,26 @@ class ParamsWrapperTest < ActionController::TestCase with_default_wrapper_options do UsersController.wrap_parameters :person, :include => :username - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer', 'person' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer", "person" => { "username" => "sikachu" }}) end end def test_not_enabled_format with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/xml' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer' }) + @request.env["CONTENT_TYPE"] = "application/xml" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer" }) end end def test_wrap_parameters_false with_default_wrapper_options do UsersController.wrap_parameters false - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer' }) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer" }) end end @@ -133,42 +133,42 @@ class ParamsWrapperTest < ActionController::TestCase with_default_wrapper_options do UsersController.wrap_parameters :format => :xml - @request.env['CONTENT_TYPE'] = 'application/xml' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer', 'user' => { 'username' => 'sikachu', 'title' => 'Developer' }}) + @request.env["CONTENT_TYPE"] = "application/xml" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer", "user" => { "username" => "sikachu", "title" => "Developer" }}) end end def test_not_wrap_reserved_parameters with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'authenticity_token' => 'pwned', '_method' => 'put', 'utf8' => '☃', 'username' => 'sikachu' } - assert_parameters({ 'authenticity_token' => 'pwned', '_method' => 'put', 'utf8' => '☃', 'username' => 'sikachu', 'user' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "authenticity_token" => "pwned", "_method" => "put", "utf8" => "☃", "username" => "sikachu" } + assert_parameters({ "authenticity_token" => "pwned", "_method" => "put", "utf8" => "☃", "username" => "sikachu", "user" => { "username" => "sikachu" }}) end end def test_no_double_wrap_if_key_exists with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'user' => { 'username' => 'sikachu' }} - assert_parameters({ 'user' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "user" => { "username" => "sikachu" }} + assert_parameters({ "user" => { "username" => "sikachu" }}) end end def test_nested_params with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'person' => { 'username' => 'sikachu' }} - assert_parameters({ 'person' => { 'username' => 'sikachu' }, 'user' => {'person' => { 'username' => 'sikachu' }}}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "person" => { "username" => "sikachu" }} + assert_parameters({ "person" => { "username" => "sikachu" }, "user" => {"person" => { "username" => "sikachu" }}}) end end def test_derived_wrapped_keys_from_matching_model assert_called(User, :attribute_names, times: 2, returns: ["username"]) do with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer', 'user' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer", "user" => { "username" => "sikachu" }}) end end end @@ -178,37 +178,37 @@ class ParamsWrapperTest < ActionController::TestCase assert_called(Person, :attribute_names, times: 2, returns: ["username"]) do UsersController.wrap_parameters Person - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer', 'person' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer", "person" => { "username" => "sikachu" }}) end end end def test_not_wrapping_abstract_model with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer', 'user' => { 'username' => 'sikachu', 'title' => 'Developer' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer", "user" => { "username" => "sikachu", "title" => "Developer" }}) end end def test_preserves_query_string_params with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - get :parse, params: { 'user' => { 'username' => 'nixon' } } + @request.env["CONTENT_TYPE"] = "application/json" + get :parse, params: { "user" => { "username" => "nixon" } } assert_parameters( - {'user' => { 'username' => 'nixon' } } + {"user" => { "username" => "nixon" } } ) end end def test_empty_parameter_set with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' + @request.env["CONTENT_TYPE"] = "application/json" post :parse, params: {} assert_parameters( - {'user' => { } } + {"user" => { } } ) end end @@ -252,9 +252,9 @@ class NamespacedParamsWrapperTest < ActionController::TestCase def test_derived_name_from_controller with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu' } - assert_parameters({'username' => 'sikachu', 'user' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu" } + assert_parameters({"username" => "sikachu", "user" => { "username" => "sikachu" }}) end end @@ -262,9 +262,9 @@ class NamespacedParamsWrapperTest < ActionController::TestCase Admin.const_set(:User, Class.new(SampleOne)) begin with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer', 'user' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer", "user" => { "username" => "sikachu" }}) end ensure Admin.send :remove_const, :User @@ -275,9 +275,9 @@ class NamespacedParamsWrapperTest < ActionController::TestCase Object.const_set(:User, Class.new(SampleTwo)) begin with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'title' => 'Developer' } - assert_parameters({ 'username' => 'sikachu', 'title' => 'Developer', 'user' => { 'title' => 'Developer' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "title" => "Developer" } + assert_parameters({ "username" => "sikachu", "title" => "Developer", "user" => { "title" => "Developer" }}) end ensure Object.send :remove_const, :User @@ -302,18 +302,18 @@ class AnonymousControllerParamsWrapperTest < ActionController::TestCase def test_does_not_implicitly_wrap_params with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu' } - assert_parameters({ 'username' => 'sikachu' }) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu" } + assert_parameters({ "username" => "sikachu" }) end end def test_does_wrap_params_if_name_provided with_default_wrapper_options do @controller.class.wrap_parameters(:name => "guest") - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu' } - assert_parameters({ 'username' => 'sikachu', 'guest' => { 'username' => 'sikachu' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu" } + assert_parameters({ "username" => "sikachu", "guest" => { "username" => "sikachu" }}) end end end @@ -323,7 +323,7 @@ class IrregularInflectionParamsWrapperTest < ActionController::TestCase class ParamswrappernewsItem def self.attribute_names - ['test_attr'] + ["test_attr"] end end @@ -343,13 +343,13 @@ class IrregularInflectionParamsWrapperTest < ActionController::TestCase def test_uses_model_attribute_names_with_irregular_inflection with_dup do ActiveSupport::Inflector.inflections do |inflect| - inflect.irregular 'paramswrappernews_item', 'paramswrappernews' + inflect.irregular "paramswrappernews_item", "paramswrappernews" end with_default_wrapper_options do - @request.env['CONTENT_TYPE'] = 'application/json' - post :parse, params: { 'username' => 'sikachu', 'test_attr' => 'test_value' } - assert_parameters({ 'username' => 'sikachu', 'test_attr' => 'test_value', 'paramswrappernews_item' => { 'test_attr' => 'test_value' }}) + @request.env["CONTENT_TYPE"] = "application/json" + post :parse, params: { "username" => "sikachu", "test_attr" => "test_value" } + assert_parameters({ "username" => "sikachu", "test_attr" => "test_value", "paramswrappernews_item" => { "test_attr" => "test_value" }}) end end end diff --git a/actionpack/test/controller/permitted_params_test.rb b/actionpack/test/controller/permitted_params_test.rb index 7c753a45a5..6205a09816 100644 --- a/actionpack/test/controller/permitted_params_test.rb +++ b/actionpack/test/controller/permitted_params_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class PeopleController < ActionController::Base def create diff --git a/actionpack/test/controller/redirect_test.rb b/actionpack/test/controller/redirect_test.rb index 4af3c628d0..ac165a9b32 100644 --- a/actionpack/test/controller/redirect_test.rb +++ b/actionpack/test/controller/redirect_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class Workshop extend ActiveModel::Naming @@ -21,8 +21,8 @@ end class RedirectController < ActionController::Base # empty method not used anywhere to ensure methods like # `status` and `location` aren't called on `redirect_to` calls - def status; render plain: 'called status'; end - def location; render plain: 'called location'; end + def status; render plain: "called status"; end + def location; render plain: "called location"; end def simple_redirect redirect_to :action => "hello_world" @@ -65,11 +65,11 @@ class RedirectController < ActionController::Base end def host_redirect - redirect_to :action => "other_host", :only_path => false, :host => 'other.test.host' + redirect_to :action => "other_host", :only_path => false, :host => "other.test.host" end def module_redirect - redirect_to :controller => 'module_test/module_redirect', :action => "hello_world" + redirect_to :controller => "module_test/module_redirect", :action => "hello_world" end def redirect_to_url @@ -105,7 +105,7 @@ class RedirectController < ActionController::Base end def redirect_to_params - redirect_to ActionController::Parameters.new(status: 200, protocol: 'javascript', f: '%0Aeval(name)') + redirect_to ActionController::Parameters.new(status: 200, protocol: "javascript", f: "%0Aeval(name)") end def redirect_to_with_block @@ -220,7 +220,7 @@ class RedirectTest < ActionController::TestCase def test_simple_redirect_using_options get :host_redirect assert_response :redirect - assert_redirected_to :action => "other_host", :only_path => false, :host => 'other.test.host' + assert_redirected_to :action => "other_host", :only_path => false, :host => "other.test.host" end def test_module_redirect @@ -232,7 +232,7 @@ class RedirectTest < ActionController::TestCase def test_module_redirect_using_options get :module_redirect assert_response :redirect - assert_redirected_to :controller => 'module_test/module_redirect', :action => 'hello_world' + assert_redirected_to :controller => "module_test/module_redirect", :action => "hello_world" end def test_redirect_to_url @@ -305,7 +305,7 @@ class RedirectTest < ActionController::TestCase resources :workshops ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end @@ -349,7 +349,7 @@ class RedirectTest < ActionController::TestCase with_routing do |set| set.draw do ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end @@ -364,7 +364,7 @@ end module ModuleTest class ModuleRedirectController < ::RedirectController def module_redirect - redirect_to :controller => '/redirect', :action => "hello_world" + redirect_to :controller => "/redirect", :action => "hello_world" end end @@ -380,7 +380,7 @@ module ModuleTest def test_simple_redirect_using_options get :host_redirect assert_response :redirect - assert_redirected_to :action => "other_host", :only_path => false, :host => 'other.test.host' + assert_redirected_to :action => "other_host", :only_path => false, :host => "other.test.host" end def test_module_redirect @@ -392,7 +392,7 @@ module ModuleTest def test_module_redirect_using_options get :module_redirect assert_response :redirect - assert_redirected_to :controller => '/redirect', :action => "hello_world" + assert_redirected_to :controller => "/redirect", :action => "hello_world" end end end diff --git a/actionpack/test/controller/render_js_test.rb b/actionpack/test/controller/render_js_test.rb index 6b661de064..e65492e2de 100644 --- a/actionpack/test/controller/render_js_test.rb +++ b/actionpack/test/controller/render_js_test.rb @@ -1,13 +1,13 @@ -require 'abstract_unit' -require 'controller/fake_models' -require 'pathname' +require "abstract_unit" +require "controller/fake_models" +require "pathname" class RenderJSTest < ActionController::TestCase class TestController < ActionController::Base protect_from_forgery def self.controller_path - 'test' + "test" end def render_vanilla_js_hello @@ -15,7 +15,7 @@ class RenderJSTest < ActionController::TestCase end def show_partial - render :partial => 'partial' + render :partial => "partial" end end @@ -28,7 +28,7 @@ class RenderJSTest < ActionController::TestCase end def test_should_render_js_partial - get :show_partial, format: 'js', xhr: true - assert_equal 'partial js', @response.body + get :show_partial, format: "js", xhr: true + assert_equal "partial js", @response.body end end diff --git a/actionpack/test/controller/render_json_test.rb b/actionpack/test/controller/render_json_test.rb index 3773900cc4..07839ce91f 100644 --- a/actionpack/test/controller/render_json_test.rb +++ b/actionpack/test/controller/render_json_test.rb @@ -1,7 +1,7 @@ -require 'abstract_unit' -require 'controller/fake_models' -require 'active_support/logger' -require 'pathname' +require "abstract_unit" +require "controller/fake_models" +require "active_support/logger" +require "pathname" class RenderJsonTest < ActionController::TestCase class JsonRenderable @@ -20,7 +20,7 @@ class RenderJsonTest < ActionController::TestCase protect_from_forgery def self.controller_path - 'test' + "test" end def render_json_nil @@ -28,31 +28,31 @@ class RenderJsonTest < ActionController::TestCase end def render_json_render_to_string - render plain: render_to_string(json: '[]') + render plain: render_to_string(json: "[]") end def render_json_hello_world - render :json => ActiveSupport::JSON.encode(:hello => 'world') + render :json => ActiveSupport::JSON.encode(:hello => "world") end def render_json_hello_world_with_status - render :json => ActiveSupport::JSON.encode(:hello => 'world'), :status => 401 + render :json => ActiveSupport::JSON.encode(:hello => "world"), :status => 401 end def render_json_hello_world_with_callback - render :json => ActiveSupport::JSON.encode(:hello => 'world'), :callback => 'alert' + render :json => ActiveSupport::JSON.encode(:hello => "world"), :callback => "alert" end def render_json_with_custom_content_type - render :json => ActiveSupport::JSON.encode(:hello => 'world'), :content_type => 'text/javascript' + render :json => ActiveSupport::JSON.encode(:hello => "world"), :content_type => "text/javascript" end def render_symbol_json - render :json => ActiveSupport::JSON.encode(:hello => 'world') + render :json => ActiveSupport::JSON.encode(:hello => "world") end def render_json_with_render_to_string - render :json => {:hello => render_to_string(:partial => 'partial')} + render :json => {:hello => render_to_string(:partial => "partial")} end def render_json_with_extra_options @@ -77,20 +77,20 @@ class RenderJsonTest < ActionController::TestCase def test_render_json_nil get :render_json_nil - assert_equal 'null', @response.body - assert_equal 'application/json', @response.content_type + assert_equal "null", @response.body + assert_equal "application/json", @response.content_type end def test_render_json_render_to_string get :render_json_render_to_string - assert_equal '[]', @response.body + assert_equal "[]", @response.body end def test_render_json get :render_json_hello_world assert_equal '{"hello":"world"}', @response.body - assert_equal 'application/json', @response.content_type + assert_equal "application/json", @response.content_type end def test_render_json_with_status @@ -102,31 +102,31 @@ class RenderJsonTest < ActionController::TestCase def test_render_json_with_callback get :render_json_hello_world_with_callback, xhr: true assert_equal '/**/alert({"hello":"world"})', @response.body - assert_equal 'text/javascript', @response.content_type + assert_equal "text/javascript", @response.content_type end def test_render_json_with_custom_content_type get :render_json_with_custom_content_type, xhr: true assert_equal '{"hello":"world"}', @response.body - assert_equal 'text/javascript', @response.content_type + assert_equal "text/javascript", @response.content_type end def test_render_symbol_json get :render_symbol_json assert_equal '{"hello":"world"}', @response.body - assert_equal 'application/json', @response.content_type + assert_equal "application/json", @response.content_type end def test_render_json_with_render_to_string get :render_json_with_render_to_string assert_equal '{"hello":"partial html"}', @response.body - assert_equal 'application/json', @response.content_type + assert_equal "application/json", @response.content_type end def test_render_json_forwards_extra_options get :render_json_with_extra_options assert_equal '{"a":"b"}', @response.body - assert_equal 'application/json', @response.content_type + assert_equal "application/json", @response.content_type end def test_render_json_calls_to_json_from_object diff --git a/actionpack/test/controller/render_test.rb b/actionpack/test/controller/render_test.rb index e56f6e840a..528c5c8dee 100644 --- a/actionpack/test/controller/render_test.rb +++ b/actionpack/test/controller/render_test.rb @@ -1,18 +1,18 @@ -require 'abstract_unit' -require 'controller/fake_models' +require "abstract_unit" +require "controller/fake_models" class TestControllerWithExtraEtags < ActionController::Base - def self.controller_name; 'test'; end - def self.controller_path; 'test'; end + def self.controller_name; "test"; end + def self.controller_path; "test"; end etag { nil } - etag { 'ab' } + etag { "ab" } etag { :cde } etag { [:f] } etag { nil } def fresh - render plain: "stale" if stale?(etag: '123', template: false) + render plain: "stale" if stale?(etag: "123", template: false) end def array @@ -20,17 +20,17 @@ class TestControllerWithExtraEtags < ActionController::Base end def strong - render plain: "stale" if stale?(strong_etag: 'strong', template: false) + render plain: "stale" if stale?(strong_etag: "strong", template: false) end def with_template - if stale? template: 'test/hello_world' - render plain: 'stale' + if stale? template: "test/hello_world" + render plain: "stale" end end def with_implicit_template - fresh_when(etag: '123') + fresh_when(etag: "123") end end @@ -45,7 +45,7 @@ end module Namespaced class ImplicitRenderTestController < ActionController::Base def hello_world - fresh_when(etag: 'abc') + fresh_when(etag: "abc") end end end @@ -72,7 +72,7 @@ class TestController < ActionController::Base def conditional_hello if stale?(:last_modified => Time.now.utc.beginning_of_day, :etag => [:foo, 123]) - render :action => 'hello_world' + render :action => "hello_world" end end @@ -80,7 +80,7 @@ class TestController < ActionController::Base record = Struct.new(:updated_at, :cache_key).new(Time.now.utc.beginning_of_day, "foo/123") if stale?(record) - render :action => 'hello_world' + render :action => "hello_world" end end @@ -115,49 +115,49 @@ class TestController < ActionController::Base old_record = Struct.new(:updated_at, :cache_key).new(ts - 1.day, "bar/123") if stale?(Collection.new([record, old_record])) - render action: 'hello_world' + render action: "hello_world" end end def conditional_hello_with_expires_in expires_in 60.1.seconds - render :action => 'hello_world' + render :action => "hello_world" end def conditional_hello_with_expires_in_with_public expires_in 1.minute, :public => true - render :action => 'hello_world' + render :action => "hello_world" end def conditional_hello_with_expires_in_with_must_revalidate expires_in 1.minute, :must_revalidate => true - render :action => 'hello_world' + render :action => "hello_world" end def conditional_hello_with_expires_in_with_public_and_must_revalidate expires_in 1.minute, :public => true, :must_revalidate => true - render :action => 'hello_world' + render :action => "hello_world" end def conditional_hello_with_expires_in_with_public_with_more_keys - expires_in 1.minute, :public => true, 's-maxage' => 5.hours - render :action => 'hello_world' + expires_in 1.minute, :public => true, "s-maxage" => 5.hours + render :action => "hello_world" end def conditional_hello_with_expires_in_with_public_with_more_keys_old_syntax - expires_in 1.minute, :public => true, :private => nil, 's-maxage' => 5.hours - render :action => 'hello_world' + expires_in 1.minute, :public => true, :private => nil, "s-maxage" => 5.hours + render :action => "hello_world" end def conditional_hello_with_expires_now expires_now - render :action => 'hello_world' + render :action => "hello_world" end def conditional_hello_with_cache_control_headers - response.headers['Cache-Control'] = 'no-transform' + response.headers["Cache-Control"] = "no-transform" expires_now - render :action => 'hello_world' + render :action => "hello_world" end def respond_with_empty_body @@ -165,7 +165,7 @@ class TestController < ActionController::Base end def conditional_hello_with_bangs - render :action => 'hello_world' + render :action => "hello_world" end before_action :handle_last_modified_and_etags, :only=>:conditional_hello_with_bangs @@ -218,7 +218,7 @@ class TestController < ActionController::Base end def head_with_www_authenticate_header - head :ok, 'WWW-Authenticate' => 'something' + head :ok, "WWW-Authenticate" => "something" end def head_with_status_code_first @@ -227,7 +227,7 @@ class TestController < ActionController::Base def head_and_return head :ok and return - raise 'should not reach this line' + raise "should not reach this line" end def head_with_no_content @@ -261,7 +261,7 @@ class TestController < ActionController::Base when "action_talk_to_layout", "layout_overriding_layout" "layouts/talk_from_action" when "render_implicit_html_template_from_xhr_request" - (request.xhr? ? 'layouts/xhr' : 'layouts/standard') + (request.xhr? ? "layouts/xhr" : "layouts/standard") end end end @@ -299,14 +299,14 @@ class ExpiresInRenderTest < ActionController::TestCase def test_dynamic_render_with_file # This is extremely bad, but should be possible to do. - assert File.exist?(File.join(File.dirname(__FILE__), '../../test/abstract_unit.rb')) + assert File.exist?(File.join(File.dirname(__FILE__), "../../test/abstract_unit.rb")) response = get :dynamic_render_with_file, params: { id: '../\\../test/abstract_unit.rb' } - assert_equal File.read(File.join(File.dirname(__FILE__), '../../test/abstract_unit.rb')), + assert_equal File.read(File.join(File.dirname(__FILE__), "../../test/abstract_unit.rb")), response.body end def test_dynamic_render_with_absolute_path - file = Tempfile.new('name') + file = Tempfile.new("name") file.write "secrets!" file.flush assert_raises ActionView::MissingTemplate do @@ -318,7 +318,7 @@ class ExpiresInRenderTest < ActionController::TestCase end def test_dynamic_render - assert File.exist?(File.join(File.dirname(__FILE__), '../../test/abstract_unit.rb')) + assert File.exist?(File.join(File.dirname(__FILE__), "../../test/abstract_unit.rb")) assert_raises ActionView::MissingTemplate do get :dynamic_render, params: { id: '../\\../test/abstract_unit.rb' } end @@ -326,9 +326,9 @@ class ExpiresInRenderTest < ActionController::TestCase def test_permitted_dynamic_render_file_hash skip "FIXME: this test passes on 4-2-stable but not master. Why?" - assert File.exist?(File.join(File.dirname(__FILE__), '../../test/abstract_unit.rb')) + assert File.exist?(File.join(File.dirname(__FILE__), "../../test/abstract_unit.rb")) response = get :dynamic_render_permit, params: { id: { file: '../\\../test/abstract_unit.rb' } } - assert_equal File.read(File.join(File.dirname(__FILE__), '../../test/abstract_unit.rb')), + assert_equal File.read(File.join(File.dirname(__FILE__), "../../test/abstract_unit.rb")), response.body end @@ -404,7 +404,7 @@ class LastModifiedRenderTest < ActionController::TestCase def test_responds_with_last_modified get :conditional_hello - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end def test_request_not_modified @@ -412,7 +412,7 @@ class LastModifiedRenderTest < ActionController::TestCase get :conditional_hello assert_equal 304, @response.status.to_i assert @response.body.blank? - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end def test_request_not_modified_but_etag_differs @@ -423,16 +423,16 @@ class LastModifiedRenderTest < ActionController::TestCase end def test_request_modified - @request.if_modified_since = 'Thu, 16 Jul 2008 00:00:00 GMT' + @request.if_modified_since = "Thu, 16 Jul 2008 00:00:00 GMT" get :conditional_hello assert_equal 200, @response.status.to_i assert @response.body.present? - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end def test_responds_with_last_modified_with_record get :conditional_hello_with_record - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end def test_request_not_modified_with_record @@ -441,7 +441,7 @@ class LastModifiedRenderTest < ActionController::TestCase assert_equal 304, @response.status.to_i assert @response.body.blank? assert_not_nil @response.etag - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end def test_request_not_modified_but_etag_differs_with_record @@ -452,16 +452,16 @@ class LastModifiedRenderTest < ActionController::TestCase end def test_request_modified_with_record - @request.if_modified_since = 'Thu, 16 Jul 2008 00:00:00 GMT' + @request.if_modified_since = "Thu, 16 Jul 2008 00:00:00 GMT" get :conditional_hello_with_record assert_equal 200, @response.status.to_i assert @response.body.present? - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end def test_responds_with_last_modified_with_collection_of_records get :conditional_hello_with_collection_of_records - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end def test_request_not_modified_with_collection_of_records @@ -469,7 +469,7 @@ class LastModifiedRenderTest < ActionController::TestCase get :conditional_hello_with_collection_of_records assert_equal 304, @response.status.to_i assert @response.body.blank? - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end def test_request_not_modified_but_etag_differs_with_collection_of_records @@ -480,16 +480,16 @@ class LastModifiedRenderTest < ActionController::TestCase end def test_request_modified_with_collection_of_records - @request.if_modified_since = 'Thu, 16 Jul 2008 00:00:00 GMT' + @request.if_modified_since = "Thu, 16 Jul 2008 00:00:00 GMT" get :conditional_hello_with_collection_of_records assert_equal 200, @response.status.to_i assert @response.body.present? - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] end def test_request_with_bang_gets_last_modified get :conditional_hello_with_bangs - assert_equal @last_modified, @response.headers['Last-Modified'] + assert_equal @last_modified, @response.headers["Last-Modified"] assert_response :success end @@ -511,11 +511,11 @@ class EtagRenderTest < ActionController::TestCase include TemplateModificationHelper def test_strong_etag - @request.if_none_match = strong_etag(['strong', 'ab', :cde, [:f]]) + @request.if_none_match = strong_etag(["strong", "ab", :cde, [:f]]) get :strong assert_response :not_modified - @request.if_none_match = '*' + @request.if_none_match = "*" get :strong assert_response :not_modified @@ -523,13 +523,13 @@ class EtagRenderTest < ActionController::TestCase get :strong assert_response :ok - @request.if_none_match = weak_etag(['strong', 'ab', :cde, [:f]]) + @request.if_none_match = weak_etag(["strong", "ab", :cde, [:f]]) get :strong assert_response :ok end def test_multiple_etags - @request.if_none_match = weak_etag(["123", 'ab', :cde, [:f]]) + @request.if_none_match = weak_etag(["123", "ab", :cde, [:f]]) get :fresh assert_response :not_modified @@ -539,7 +539,7 @@ class EtagRenderTest < ActionController::TestCase end def test_array - @request.if_none_match = weak_etag([%w(1 2 3), 'ab', :cde, [:f]]) + @request.if_none_match = weak_etag([%w(1 2 3), "ab", :cde, [:f]]) get :array assert_response :not_modified @@ -626,7 +626,7 @@ end class ActionControllerBaseRenderTest < ActionController::TestCase def test_direct_render_to_string ac = ActionController::Base.new() - assert_equal "Hello world!", ac.render_to_string(template: 'test/hello_world') + assert_equal "Hello world!", ac.render_to_string(template: "test/hello_world") end end @@ -652,7 +652,7 @@ class ImplicitRenderTest < ActionController::TestCase def test_implicit_unknown_format_response assert_raises(ActionController::UnknownFormat) do - get :empty_action_with_template, format: 'json' + get :empty_action_with_template, format: "json" end end end @@ -710,7 +710,7 @@ class HeadRenderTest < ActionController::TestCase resources :customers ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end @@ -746,7 +746,7 @@ class HeadRenderTest < ActionController::TestCase get :head_with_symbolic_status, params: { status: "no_content" } assert_equal 204, @response.status - assert !@response.headers.include?('Content-Length') + assert !@response.headers.include?("Content-Length") assert_response :no_content Rack::Utils::SYMBOL_TO_STATUS_CODE.each do |status, code| @@ -797,7 +797,7 @@ class HttpCacheForeverTest < ActionController::TestCase class HttpCacheForeverController < ActionController::Base def cache_me_forever http_cache_forever(public: params[:public]) do - render plain: 'hello' + render plain: "hello" end end end @@ -824,7 +824,7 @@ class HttpCacheForeverTest < ActionController::TestCase get :cache_me_forever assert_response :ok - @request.if_modified_since = @response.headers['Last-Modified'] + @request.if_modified_since = @response.headers["Last-Modified"] get :cache_me_forever assert_response :not_modified end diff --git a/actionpack/test/controller/render_xml_test.rb b/actionpack/test/controller/render_xml_test.rb index 137236c496..a79700d618 100644 --- a/actionpack/test/controller/render_xml_test.rb +++ b/actionpack/test/controller/render_xml_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' -require 'controller/fake_models' -require 'pathname' +require "abstract_unit" +require "controller/fake_models" +require "pathname" class RenderXmlTest < ActionController::TestCase class XmlRenderable @@ -14,7 +14,7 @@ class RenderXmlTest < ActionController::TestCase protect_from_forgery def self.controller_path - 'test' + "test" end def render_with_location @@ -74,7 +74,7 @@ class RenderXmlTest < ActionController::TestCase resources :customers ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end @@ -85,7 +85,7 @@ class RenderXmlTest < ActionController::TestCase def test_should_render_formatted_xml_erb_template get :formatted_xml_erb, format: :xml - assert_equal 'passed formatted xml erb', @response.body + assert_equal "passed formatted xml erb", @response.body end def test_should_render_xml_but_keep_custom_content_type @@ -94,7 +94,7 @@ class RenderXmlTest < ActionController::TestCase end def test_should_use_implicit_content_type - get :implicit_content_type, format: 'atom' + get :implicit_content_type, format: "atom" assert_equal Mime[:atom], @response.content_type end end diff --git a/actionpack/test/controller/renderer_test.rb b/actionpack/test/controller/renderer_test.rb index 372c09bc23..a5465f55fa 100644 --- a/actionpack/test/controller/renderer_test.rb +++ b/actionpack/test/controller/renderer_test.rb @@ -1,98 +1,98 @@ -require 'abstract_unit' +require "abstract_unit" class RendererTest < ActiveSupport::TestCase - test 'action controller base has a renderer' do + test "action controller base has a renderer" do assert ActionController::Base.renderer end - test 'creating with a controller' do + test "creating with a controller" do controller = CommentsController renderer = ActionController::Renderer.for controller assert_equal controller, renderer.controller end - test 'creating from a controller' do + test "creating from a controller" do controller = AccountsController renderer = controller.renderer assert_equal controller, renderer.controller end - test 'rendering with a class renderer' do + test "rendering with a class renderer" do renderer = ApplicationController.renderer - content = renderer.render template: 'ruby_template' + content = renderer.render template: "ruby_template" - assert_equal 'Hello from Ruby code', content + assert_equal "Hello from Ruby code", content end - test 'rendering with an instance renderer' do + test "rendering with an instance renderer" do renderer = ApplicationController.renderer.new - content = renderer.render file: 'test/hello_world' + content = renderer.render file: "test/hello_world" - assert_equal 'Hello world!', content + assert_equal "Hello world!", content end - test 'rendering with a controller class' do - assert_equal 'Hello world!', ApplicationController.render('test/hello_world') + test "rendering with a controller class" do + assert_equal "Hello world!", ApplicationController.render("test/hello_world") end - test 'rendering with locals' do + test "rendering with locals" do renderer = ApplicationController.renderer - content = renderer.render template: 'test/render_file_with_locals', - locals: { secret: 'bar' } + content = renderer.render template: "test/render_file_with_locals", + locals: { secret: "bar" } assert_equal "The secret is bar\n", content end - test 'rendering with assigns' do + test "rendering with assigns" do renderer = ApplicationController.renderer - content = renderer.render template: 'test/render_file_with_ivar', - assigns: { secret: 'foo' } + content = renderer.render template: "test/render_file_with_ivar", + assigns: { secret: "foo" } assert_equal "The secret is foo\n", content end - test 'rendering with custom env' do - renderer = ApplicationController.renderer.new method: 'post' - content = renderer.render inline: '<%= request.post? %>' + test "rendering with custom env" do + renderer = ApplicationController.renderer.new method: "post" + content = renderer.render inline: "<%= request.post? %>" - assert_equal 'true', content + assert_equal "true", content end - test 'rendering with defaults' do + test "rendering with defaults" do renderer = ApplicationController.renderer.new https: true - content = renderer.render inline: '<%= request.ssl? %>' + content = renderer.render inline: "<%= request.ssl? %>" - assert_equal 'true', content + assert_equal "true", content end - test 'same defaults from the same controller' do + test "same defaults from the same controller" do renderer_defaults = ->(controller) { controller.renderer.defaults } assert_equal renderer_defaults[AccountsController], renderer_defaults[AccountsController] assert_equal renderer_defaults[AccountsController], renderer_defaults[CommentsController] end - test 'rendering with different formats' do - html = 'Hello world!' + test "rendering with different formats" do + html = "Hello world!" xml = "

Hello world!

\n" - assert_equal html, render['respond_to/using_defaults'] - assert_equal xml, render['respond_to/using_defaults.xml.builder'] - assert_equal xml, render['respond_to/using_defaults', formats: :xml] + assert_equal html, render["respond_to/using_defaults"] + assert_equal xml, render["respond_to/using_defaults.xml.builder"] + assert_equal xml, render["respond_to/using_defaults", formats: :xml] end - test 'rendering with helpers' do + test "rendering with helpers" do assert_equal "

1\n
2

", render[inline: '<%= simple_format "1\n2" %>'] end - test 'rendering with user specified defaults' do - ApplicationController.renderer.defaults.merge!({ hello: 'hello', https: true }) + test "rendering with user specified defaults" do + ApplicationController.renderer.defaults.merge!({ hello: "hello", https: true }) renderer = ApplicationController.renderer.new - content = renderer.render inline: '<%= request.ssl? %>' + content = renderer.render inline: "<%= request.ssl? %>" - assert_equal 'true', content + assert_equal "true", content end private diff --git a/actionpack/test/controller/renderers_test.rb b/actionpack/test/controller/renderers_test.rb index e6c2e4636e..b9e4b03804 100644 --- a/actionpack/test/controller/renderers_test.rb +++ b/actionpack/test/controller/renderers_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' -require 'controller/fake_models' -require 'active_support/logger' +require "abstract_unit" +require "controller/fake_models" +require "active_support/logger" class RenderersTest < ActionController::TestCase class XmlRenderable @@ -36,7 +36,7 @@ class RenderersTest < ActionController::TestCase type.json do render json: JsonRenderable.new end - type.js { render json: 'JS', callback: 'alert' } + type.js { render json: "JS", callback: "alert" } type.csv { render csv: CsvRenderable.new } type.xml { render xml: XmlRenderable.new } type.html { render body: "HTML" } @@ -70,7 +70,7 @@ class RenderersTest < ActionController::TestCase def test_raises_missing_template_no_renderer assert_raise ActionView::MissingTemplate do - get :respond_to_mime, format: 'csv' + get :respond_to_mime, format: "csv" end assert_equal Mime[:csv], @response.content_type assert_equal "", @response.body @@ -81,7 +81,7 @@ class RenderersTest < ActionController::TestCase send_data value.to_csv, type: Mime[:csv] end @request.accept = "text/csv" - get :respond_to_mime, format: 'csv' + get :respond_to_mime, format: "csv" assert_equal Mime[:csv], @response.content_type assert_equal "c,s,v", @response.body ensure diff --git a/actionpack/test/controller/request/test_request_test.rb b/actionpack/test/controller/request/test_request_test.rb index e5d698d5c2..e697f2da74 100644 --- a/actionpack/test/controller/request/test_request_test.rb +++ b/actionpack/test/controller/request/test_request_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'stringio' +require "abstract_unit" +require "stringio" class ActionController::TestRequestTest < ActionController::TestCase diff --git a/actionpack/test/controller/request_forgery_protection_test.rb b/actionpack/test/controller/request_forgery_protection_test.rb index 37a54e7878..7ce8dfa8df 100644 --- a/actionpack/test/controller/request_forgery_protection_test.rb +++ b/actionpack/test/controller/request_forgery_protection_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" require "active_support/log_subscriber/test_helper" # common controller actions @@ -12,7 +12,7 @@ module RequestForgeryProtectionActions end def unsafe - render plain: 'pwn' + render plain: "pwn" end def meta @@ -36,7 +36,7 @@ module RequestForgeryProtectionActions end def same_origin_js - render js: 'foo();' + render js: "foo();" end def negotiate_same_origin @@ -70,12 +70,12 @@ class RequestForgeryProtectionControllerUsingNullSession < ActionController::Bas protect_from_forgery :with => :null_session def signed - cookies.signed[:foo] = 'bar' + cookies.signed[:foo] = "bar" head :ok end def encrypted - cookies.encrypted[:foo] = 'bar' + cookies.encrypted[:foo] = "bar" head :ok end @@ -90,7 +90,7 @@ class PrependProtectForgeryBaseController < ActionController::Base attr_accessor :called_callbacks def index - render inline: 'OK' + render inline: "OK" end protected @@ -124,7 +124,7 @@ end class CustomAuthenticityParamController < RequestForgeryProtectionControllerUsingResetSession def form_authenticity_param - 'foobar' + "foobar" end end @@ -141,18 +141,18 @@ class PerFormTokensController < ActionController::Base end def post_one - render plain: '' + render plain: "" end def post_two - render plain: '' + render plain: "" end end # common test methods module RequestForgeryProtectionTests def setup - @token = Base64.strict_encode64('railstestrailstestrailstestrails') + @token = Base64.strict_encode64("railstestrailstestrailstestrails") @old_request_forgery_protection_token = ActionController::Base.request_forgery_protection_token ActionController::Base.request_forgery_protection_token = :custom_authenticity_token end @@ -166,7 +166,7 @@ module RequestForgeryProtectionTests assert_not_blocked do get :index end - assert_select 'form>input[name=?][value=?]', 'custom_authenticity_token', @token + assert_select "form>input[name=?][value=?]", "custom_authenticity_token", @token end end @@ -175,7 +175,7 @@ module RequestForgeryProtectionTests assert_not_blocked do get :show_button end - assert_select 'form>input[name=?][value=?]', 'custom_authenticity_token', @token + assert_select "form>input[name=?][value=?]", "custom_authenticity_token", @token end end @@ -206,7 +206,7 @@ module RequestForgeryProtectionTests assert_not_blocked do get :form_for_remote_with_external_token end - assert_select 'form>input[name=?][value=?]', 'custom_authenticity_token', 'external_token' + assert_select "form>input[name=?][value=?]", "custom_authenticity_token", "external_token" ensure ActionView::Helpers::FormTagHelper.embed_authenticity_token_in_remote_forms = original end @@ -216,7 +216,7 @@ module RequestForgeryProtectionTests assert_not_blocked do get :form_for_remote_with_external_token end - assert_select 'form>input[name=?][value=?]', 'custom_authenticity_token', 'external_token' + assert_select "form>input[name=?][value=?]", "custom_authenticity_token", "external_token" end def test_should_render_form_with_token_tag_if_remote_and_authenticity_token_requested @@ -224,7 +224,7 @@ module RequestForgeryProtectionTests assert_not_blocked do get :form_for_remote_with_token end - assert_select 'form>input[name=?][value=?]', 'custom_authenticity_token', @token + assert_select "form>input[name=?][value=?]", "custom_authenticity_token", @token end end @@ -233,7 +233,7 @@ module RequestForgeryProtectionTests assert_not_blocked do get :form_for_with_token end - assert_select 'form>input[name=?][value=?]', 'custom_authenticity_token', @token + assert_select "form>input[name=?][value=?]", "custom_authenticity_token", @token end end @@ -254,7 +254,7 @@ module RequestForgeryProtectionTests end def test_should_not_allow_post_without_token_irrespective_of_format - assert_blocked { post :index, format: 'xml' } + assert_blocked { post :index, format: "xml" } end def test_should_not_allow_patch_without_token @@ -303,25 +303,25 @@ module RequestForgeryProtectionTests def test_should_allow_post_with_token_in_header session[:_csrf_token] = @token - @request.env['HTTP_X_CSRF_TOKEN'] = @token + @request.env["HTTP_X_CSRF_TOKEN"] = @token assert_not_blocked { post :index } end def test_should_allow_delete_with_token_in_header session[:_csrf_token] = @token - @request.env['HTTP_X_CSRF_TOKEN'] = @token + @request.env["HTTP_X_CSRF_TOKEN"] = @token assert_not_blocked { delete :index } end def test_should_allow_patch_with_token_in_header session[:_csrf_token] = @token - @request.env['HTTP_X_CSRF_TOKEN'] = @token + @request.env["HTTP_X_CSRF_TOKEN"] = @token assert_not_blocked { patch :index } end def test_should_allow_put_with_token_in_header session[:_csrf_token] = @token - @request.env['HTTP_X_CSRF_TOKEN'] = @token + @request.env["HTTP_X_CSRF_TOKEN"] = @token assert_not_blocked { put :index } end @@ -330,7 +330,7 @@ module RequestForgeryProtectionTests session[:_csrf_token] = @token @controller.stub :form_authenticity_token, @token do assert_not_blocked do - @request.set_header 'HTTP_ORIGIN', 'http://test.host' + @request.set_header "HTTP_ORIGIN", "http://test.host" post :index, params: { custom_authenticity_token: @token } end end @@ -353,7 +353,7 @@ module RequestForgeryProtectionTests session[:_csrf_token] = @token @controller.stub :form_authenticity_token, @token do assert_blocked do - @request.set_header 'HTTP_ORIGIN', 'http://bad.host' + @request.set_header "HTTP_ORIGIN", "http://bad.host" post :index, params: { custom_authenticity_token: @token } end end @@ -393,16 +393,16 @@ module RequestForgeryProtectionTests def test_should_only_allow_same_origin_js_get_with_xhr_header assert_cross_origin_blocked { get :same_origin_js } - assert_cross_origin_blocked { get :same_origin_js, format: 'js' } + assert_cross_origin_blocked { get :same_origin_js, format: "js" } assert_cross_origin_blocked do - @request.accept = 'text/javascript' + @request.accept = "text/javascript" get :negotiate_same_origin end assert_cross_origin_not_blocked { get :same_origin_js, xhr: true } - assert_cross_origin_not_blocked { get :same_origin_js, xhr: true, format: 'js'} + assert_cross_origin_not_blocked { get :same_origin_js, xhr: true, format: "js"} assert_cross_origin_not_blocked do - @request.accept = 'text/javascript' + @request.accept = "text/javascript" get :negotiate_same_origin, xhr: true end end @@ -442,32 +442,32 @@ module RequestForgeryProtectionTests def test_should_allow_non_get_js_without_xhr_header session[:_csrf_token] = @token assert_cross_origin_not_blocked { post :same_origin_js, params: { custom_authenticity_token: @token } } - assert_cross_origin_not_blocked { post :same_origin_js, params: { format: 'js', custom_authenticity_token: @token } } + assert_cross_origin_not_blocked { post :same_origin_js, params: { format: "js", custom_authenticity_token: @token } } assert_cross_origin_not_blocked do - @request.accept = 'text/javascript' + @request.accept = "text/javascript" post :negotiate_same_origin, params: { custom_authenticity_token: @token} end end def test_should_only_allow_cross_origin_js_get_without_xhr_header_if_protection_disabled assert_cross_origin_not_blocked { get :cross_origin_js } - assert_cross_origin_not_blocked { get :cross_origin_js, format: 'js' } + assert_cross_origin_not_blocked { get :cross_origin_js, format: "js" } assert_cross_origin_not_blocked do - @request.accept = 'text/javascript' + @request.accept = "text/javascript" get :negotiate_cross_origin end assert_cross_origin_not_blocked { get :cross_origin_js, xhr: true } - assert_cross_origin_not_blocked { get :cross_origin_js, xhr: true, format: 'js' } + assert_cross_origin_not_blocked { get :cross_origin_js, xhr: true, format: "js" } assert_cross_origin_not_blocked do - @request.accept = 'text/javascript' + @request.accept = "text/javascript" get :negotiate_cross_origin, xhr: true end end def test_should_not_raise_error_if_token_is_not_a_string assert_blocked do - patch :index, params: { custom_authenticity_token: { foo: 'bar' } } + patch :index, params: { custom_authenticity_token: { foo: "bar" } } end end @@ -509,11 +509,11 @@ end class RequestForgeryProtectionControllerUsingResetSessionTest < ActionController::TestCase include RequestForgeryProtectionTests - test 'should emit a csrf-param meta tag and a csrf-token meta tag' do - @controller.stub :form_authenticity_token, @token + '<=?' do + test "should emit a csrf-param meta tag and a csrf-token meta tag" do + @controller.stub :form_authenticity_token, @token + "<=?" do get :meta - assert_select 'meta[name=?][content=?]', 'csrf-param', 'custom_authenticity_token' - assert_select 'meta[name=?]', 'csrf-token' + assert_select "meta[name=?][content=?]", "csrf-param", "custom_authenticity_token" + assert_select "meta[name=?]", "csrf-token" regexp = "#{@token}<=\?" assert_match(/#{regexp}/, @response.body) end @@ -523,7 +523,7 @@ end class RequestForgeryProtectionControllerUsingNullSessionTest < ActionController::TestCase class NullSessionDummyKeyGenerator def generate_key(secret) - '03312270731a2ed0d11ed091c2338a06' + "03312270731a2ed0d11ed091c2338a06" end end @@ -531,17 +531,17 @@ class RequestForgeryProtectionControllerUsingNullSessionTest < ActionController: @request.env[ActionDispatch::Cookies::GENERATOR_KEY] = NullSessionDummyKeyGenerator.new end - test 'should allow to set signed cookies' do + test "should allow to set signed cookies" do post :signed assert_response :ok end - test 'should allow to set encrypted cookies' do + test "should allow to set encrypted cookies" do post :encrypted assert_response :ok end - test 'should allow reset_session' do + test "should allow reset_session" do post :try_to_reset_session assert_response :ok end @@ -601,14 +601,14 @@ class FreeCookieControllerTest < ActionController::TestCase def test_should_not_render_form_with_token_tag SecureRandom.stub :base64, @token do get :index - assert_select 'form>div>input[name=?][value=?]', 'authenticity_token', @token, false + assert_select "form>div>input[name=?][value=?]", "authenticity_token", @token, false end end def test_should_not_render_button_to_with_token_tag SecureRandom.stub :base64, @token do get :show_button - assert_select 'form>div>input[name=?][value=?]', 'authenticity_token', @token, false + assert_select "form>div>input[name=?][value=?]", "authenticity_token", @token, false end end @@ -620,7 +620,7 @@ class FreeCookieControllerTest < ActionController::TestCase end end - test 'should not emit a csrf-token meta tag' do + test "should not emit a csrf-token meta tag" do SecureRandom.stub :base64, @token do get :meta assert @response.body.blank? @@ -647,7 +647,7 @@ class CustomAuthenticityParamControllerTest < ActionController::TestCase ActionController::Base.logger = @logger begin @controller.stub :valid_authenticity_token?, :true do - post :index, params: { custom_token_name: 'foobar' } + post :index, params: { custom_token_name: "foobar" } assert_equal 0, @logger.logged(:warn).size end ensure @@ -659,7 +659,7 @@ class CustomAuthenticityParamControllerTest < ActionController::TestCase ActionController::Base.logger = @logger begin - post :index, params: { custom_token_name: 'bazqux' } + post :index, params: { custom_token_name: "bazqux" } assert_equal 1, @logger.logged(:warn).size ensure ActionController::Base.logger = @old_logger @@ -680,7 +680,7 @@ class PerFormTokensControllerTest < ActionController::TestCase def test_per_form_token_is_same_size_as_global_token get :index expected = ActionController::RequestForgeryProtection::AUTHENTICITY_TOKEN_LENGTH - actual = @controller.send(:per_form_csrf_token, session, '/path', 'post').size + actual = @controller.send(:per_form_csrf_token, session, "/path", "post").size assert_equal expected, actual end @@ -692,7 +692,7 @@ class PerFormTokensControllerTest < ActionController::TestCase assert_matches_session_token_on_server form_token # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one" assert_nothing_raised do post :post_one, params: {custom_authenticity_token: form_token} end @@ -707,7 +707,7 @@ class PerFormTokensControllerTest < ActionController::TestCase assert_matches_session_token_on_server form_token # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_two' + @request.env["PATH_INFO"] = "/per_form_tokens/post_two" assert_raises(ActionController::InvalidAuthenticityToken) do post :post_two, params: {custom_authenticity_token: form_token} end @@ -721,21 +721,21 @@ class PerFormTokensControllerTest < ActionController::TestCase assert_matches_session_token_on_server form_token # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one" assert_raises(ActionController::InvalidAuthenticityToken) do patch :post_one, params: {custom_authenticity_token: form_token} end end def test_rejects_token_for_incorrect_method_button_to - get :button_to, params: { form_method: 'delete' } + get :button_to, params: { form_method: "delete" } form_token = assert_presence_and_fetch_form_csrf_token - assert_matches_session_token_on_server form_token, 'delete' + assert_matches_session_token_on_server form_token, "delete" # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one" assert_raises(ActionController::InvalidAuthenticityToken) do patch :post_one, params: { custom_authenticity_token: form_token } end @@ -746,10 +746,10 @@ class PerFormTokensControllerTest < ActionController::TestCase form_token = assert_presence_and_fetch_form_csrf_token - assert_matches_session_token_on_server form_token, 'post' + assert_matches_session_token_on_server form_token, "post" # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one" assert_nothing_raised do post :post_one, params: { custom_authenticity_token: form_token } end @@ -764,7 +764,7 @@ class PerFormTokensControllerTest < ActionController::TestCase assert_matches_session_token_on_server form_token, verb # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one" assert_nothing_raised do send verb, :post_one, params: { custom_authenticity_token: form_token } end @@ -777,7 +777,7 @@ class PerFormTokensControllerTest < ActionController::TestCase token = @controller.send(:form_authenticity_token) # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one" assert_nothing_raised do post :post_one, params: {custom_authenticity_token: token} end @@ -785,27 +785,27 @@ class PerFormTokensControllerTest < ActionController::TestCase end def test_ignores_params - get :index, params: {form_path: '/per_form_tokens/post_one?foo=bar'} + get :index, params: {form_path: "/per_form_tokens/post_one?foo=bar"} form_token = assert_presence_and_fetch_form_csrf_token assert_matches_session_token_on_server form_token # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one?foo=baz' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one?foo=baz" assert_nothing_raised do - post :post_one, params: {custom_authenticity_token: form_token, baz: 'foo'} + post :post_one, params: {custom_authenticity_token: form_token, baz: "foo"} end assert_response :success end def test_ignores_trailing_slash_during_generation - get :index, params: {form_path: '/per_form_tokens/post_one/'} + get :index, params: {form_path: "/per_form_tokens/post_one/"} form_token = assert_presence_and_fetch_form_csrf_token # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one" assert_nothing_raised do post :post_one, params: {custom_authenticity_token: form_token} end @@ -813,12 +813,12 @@ class PerFormTokensControllerTest < ActionController::TestCase end def test_ignores_origin_during_generation - get :index, params: {form_path: 'https://example.com/per_form_tokens/post_one/'} + get :index, params: {form_path: "https://example.com/per_form_tokens/post_one/"} form_token = assert_presence_and_fetch_form_csrf_token # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one" assert_nothing_raised do post :post_one, params: {custom_authenticity_token: form_token} end @@ -831,7 +831,7 @@ class PerFormTokensControllerTest < ActionController::TestCase form_token = assert_presence_and_fetch_form_csrf_token # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one/' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one/" assert_nothing_raised do post :post_one, params: {custom_authenticity_token: form_token} end @@ -843,7 +843,7 @@ class PerFormTokensControllerTest < ActionController::TestCase form_token = assert_presence_and_fetch_form_csrf_token # This is required because PATH_INFO isn't reset between requests. - @request.env['PATH_INFO'] = '/per_form_tokens/post_one/' + @request.env["PATH_INFO"] = "/per_form_tokens/post_one/" assert_nothing_raised do post :post_one, params: {custom_authenticity_token: form_token} end @@ -853,15 +853,15 @@ class PerFormTokensControllerTest < ActionController::TestCase private def assert_presence_and_fetch_form_csrf_token assert_select 'input[name="custom_authenticity_token"]' do |input| - form_csrf_token = input.first['value'] + form_csrf_token = input.first["value"] assert_not_nil form_csrf_token return form_csrf_token end end - def assert_matches_session_token_on_server(form_token, method = 'post') + def assert_matches_session_token_on_server(form_token, method = "post") actual = @controller.send(:unmask_token, Base64.strict_decode64(form_token)) - expected = @controller.send(:per_form_csrf_token, session, '/per_form_tokens/post_one', method) + expected = @controller.send(:per_form_csrf_token, session, "/per_form_tokens/post_one", method) assert_equal expected, actual end end diff --git a/actionpack/test/controller/required_params_test.rb b/actionpack/test/controller/required_params_test.rb index b6efcd6f9a..6de954700f 100644 --- a/actionpack/test/controller/required_params_test.rb +++ b/actionpack/test/controller/required_params_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class BooksController < ActionController::Base def create @@ -50,17 +50,17 @@ class ParametersRequireTest < ActiveSupport::TestCase end test "require array when all required params are present" do - safe_params = ActionController::Parameters.new(person: {first_name: 'Gaurish', title: 'Mjallo', city: 'Barcelona'}) + safe_params = ActionController::Parameters.new(person: {first_name: "Gaurish", title: "Mjallo", city: "Barcelona"}) .require(:person) .require([:first_name, :title]) assert_kind_of Array, safe_params - assert_equal ['Gaurish', 'Mjallo'], safe_params + assert_equal ["Gaurish", "Mjallo"], safe_params end test "require array when a required param is missing" do assert_raises(ActionController::ParameterMissing) do - ActionController::Parameters.new(person: {first_name: 'Gaurish', title: nil}) + ActionController::Parameters.new(person: {first_name: "Gaurish", title: nil}) .require(:person) .require([:first_name, :title]) end diff --git a/actionpack/test/controller/rescue_test.rb b/actionpack/test/controller/rescue_test.rb index c088e5a043..7ff2ba5bb6 100644 --- a/actionpack/test/controller/rescue_test.rb +++ b/actionpack/test/controller/rescue_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" class RescueController < ActionController::Base class NotAuthorized < StandardError @@ -35,46 +35,46 @@ class RescueController < ActionController::Base # name in some other to test correct handling of both cases. rescue_from NotAuthorized, :with => :deny_access - rescue_from 'RescueController::NotAuthorizedToRescueAsString', :with => :deny_access + rescue_from "RescueController::NotAuthorizedToRescueAsString", :with => :deny_access rescue_from RecordInvalid, :with => :show_errors - rescue_from 'RescueController::RecordInvalidToRescueAsString', :with => :show_errors + rescue_from "RescueController::RecordInvalidToRescueAsString", :with => :show_errors rescue_from NotAllowed, :with => proc { head :forbidden } - rescue_from 'RescueController::NotAllowedToRescueAsString', :with => proc { head :forbidden } + rescue_from "RescueController::NotAllowedToRescueAsString", :with => proc { head :forbidden } rescue_from InvalidRequest, with: proc { |exception| render plain: exception.message } - rescue_from 'InvalidRequestToRescueAsString', with: proc { |exception| render plain: exception.message } + rescue_from "InvalidRequestToRescueAsString", with: proc { |exception| render plain: exception.message } rescue_from BadGateway do head 502 end - rescue_from 'BadGatewayToRescueAsString' do + rescue_from "BadGatewayToRescueAsString" do head 502 end rescue_from ResourceUnavailable do |exception| render plain: exception.message end - rescue_from 'ResourceUnavailableToRescueAsString' do |exception| + rescue_from "ResourceUnavailableToRescueAsString" do |exception| render plain: exception.message end rescue_from ActionView::TemplateError do - render plain: 'action_view templater error' + render plain: "action_view templater error" end rescue_from IOError do - render plain: 'io error' + render plain: "io error" end - before_action(only: :before_action_raises) { raise 'umm nice' } + before_action(only: :before_action_raises) { raise "umm nice" } def before_action_raises end def raises - render plain: 'already rendered' + render plain: "already rendered" raise "don't panic!" end @@ -206,7 +206,7 @@ class ControllerInheritanceRescueController < ExceptionInheritanceRescueControll class SecondExceptionInChildController < StandardError end - rescue_from FirstExceptionInChildController, 'SecondExceptionInChildController', :with => lambda { head :gone } + rescue_from FirstExceptionInChildController, "SecondExceptionInChildController", :with => lambda { head :gone } def raise_first_exception_in_child_controller raise FirstExceptionInChildController @@ -291,17 +291,17 @@ class RescueControllerTest < ActionController::TestCase assert_equal "RescueController::ResourceUnavailableToRescueAsString", @response.body end - test 'rescue when wrapper has more specific handler than cause' do + test "rescue when wrapper has more specific handler than cause" do get :exception_with_more_specific_handler_for_wrapper assert_response :forbidden end - test 'rescue when cause has more specific handler than wrapper' do + test "rescue when cause has more specific handler than wrapper" do get :exception_with_more_specific_handler_for_cause assert_response :unprocessable_entity end - test 'rescue when cause has handler, but wrapper doesnt' do + test "rescue when cause has handler, but wrapper doesnt" do get :exception_with_no_handler_for_wrapper assert_response :unprocessable_entity end @@ -311,7 +311,7 @@ class RescueTest < ActionDispatch::IntegrationTest class TestController < ActionController::Base class RecordInvalid < StandardError def message - 'invalid' + "invalid" end end rescue_from RecordInvalid, :with => :show_errors @@ -325,7 +325,7 @@ class RescueTest < ActionDispatch::IntegrationTest end def b00m - raise 'b00m' + raise "b00m" end protected @@ -334,17 +334,17 @@ class RescueTest < ActionDispatch::IntegrationTest end end - test 'normal request' do + test "normal request" do with_test_routing do - get '/foo' - assert_equal 'foo', response.body + get "/foo" + assert_equal "foo", response.body end end - test 'rescue exceptions inside controller' do + test "rescue exceptions inside controller" do with_test_routing do - get '/invalid' - assert_equal 'invalid', response.body + get "/invalid" + assert_equal "invalid", response.body end end @@ -353,9 +353,9 @@ class RescueTest < ActionDispatch::IntegrationTest def with_test_routing with_routing do |set| set.draw do - get 'foo', :to => ::RescueTest::TestController.action(:foo) - get 'invalid', :to => ::RescueTest::TestController.action(:invalid) - get 'b00m', :to => ::RescueTest::TestController.action(:b00m) + get "foo", :to => ::RescueTest::TestController.action(:foo) + get "invalid", :to => ::RescueTest::TestController.action(:invalid) + get "b00m", :to => ::RescueTest::TestController.action(:b00m) end yield end diff --git a/actionpack/test/controller/resources_test.rb b/actionpack/test/controller/resources_test.rb index 8e38af5025..c549aa0dec 100644 --- a/actionpack/test/controller/resources_test.rb +++ b/actionpack/test/controller/resources_test.rb @@ -1,7 +1,7 @@ -require 'abstract_unit' -require 'active_support/core_ext/object/try' -require 'active_support/core_ext/object/with_options' -require 'active_support/core_ext/array/extract_options' +require "abstract_unit" +require "active_support/core_ext/object/try" +require "active_support/core_ext/object/with_options" +require "active_support/core_ext/array/extract_options" class AdminController < ResourcesController; end class MessagesController < ResourcesController; end @@ -28,7 +28,7 @@ class ResourcesTest < ActionController::TestCase def test_override_paths_for_member_and_collection_methods collection_methods = { :rss => :get, :reorder => :post, :csv => :post } member_methods = { :rss => :get, :atom => :get, :upload => :post, :fix => :post } - path_names = {:new => 'nuevo', :rss => 'canal', :fix => 'corrigir' } + path_names = {:new => "nuevo", :rss => "canal", :fix => "corrigir" } with_restful_routing :messages, :collection => collection_methods, @@ -40,7 +40,7 @@ class ResourcesTest < ActionController::TestCase :member => member_methods, :path_names => path_names do |options| member_methods.each do |action, method| - assert_recognizes(options.merge(:action => action.to_s, :id => '1'), + assert_recognizes(options.merge(:action => action.to_s, :id => "1"), :path => "/messages/1/#{path_names[action] || action}", :method => method) end @@ -77,74 +77,74 @@ class ResourcesTest < ActionController::TestCase end def test_multiple_resources_with_options - expected_options = {:controller => 'threads', :action => 'index'} + expected_options = {:controller => "threads", :action => "index"} with_restful_routing :messages, :comments, expected_options.slice(:controller) do - assert_recognizes(expected_options, :path => 'comments') - assert_recognizes(expected_options, :path => 'messages') + assert_recognizes(expected_options, :path => "comments") + assert_recognizes(expected_options, :path => "messages") end end def test_with_custom_conditions - with_restful_routing :messages, :conditions => { :subdomain => 'app' } do - assert @routes.recognize_path("/messages", :method => :get, :subdomain => 'app') + with_restful_routing :messages, :conditions => { :subdomain => "app" } do + assert @routes.recognize_path("/messages", :method => :get, :subdomain => "app") end end def test_irregular_id_with_no_constraints_should_raise_error - expected_options = {:controller => 'messages', :action => 'show', :id => '1.1.1'} + expected_options = {:controller => "messages", :action => "show", :id => "1.1.1"} with_restful_routing :messages do assert_raise(Assertion) do - assert_recognizes(expected_options, :path => 'messages/1.1.1', :method => :get) + assert_recognizes(expected_options, :path => "messages/1.1.1", :method => :get) end end end def test_irregular_id_with_constraints_should_pass - expected_options = {:controller => 'messages', :action => 'show', :id => '1.1.1'} + expected_options = {:controller => "messages", :action => "show", :id => "1.1.1"} with_restful_routing(:messages, :constraints => {:id => /[0-9]\.[0-9]\.[0-9]/}) do - assert_recognizes(expected_options, :path => 'messages/1.1.1', :method => :get) + assert_recognizes(expected_options, :path => "messages/1.1.1", :method => :get) end end def test_with_path_prefix_constraints - expected_options = {:controller => 'messages', :action => 'show', :thread_id => '1.1.1', :id => '1'} - with_restful_routing :messages, :path_prefix => '/thread/:thread_id', :constraints => {:thread_id => /[0-9]\.[0-9]\.[0-9]/} do - assert_recognizes(expected_options, :path => 'thread/1.1.1/messages/1', :method => :get) + expected_options = {:controller => "messages", :action => "show", :thread_id => "1.1.1", :id => "1"} + with_restful_routing :messages, :path_prefix => "/thread/:thread_id", :constraints => {:thread_id => /[0-9]\.[0-9]\.[0-9]/} do + assert_recognizes(expected_options, :path => "thread/1.1.1/messages/1", :method => :get) end end def test_irregular_id_constraints_should_get_passed_to_member_actions - expected_options = {:controller => 'messages', :action => 'custom', :id => '1.1.1'} + expected_options = {:controller => "messages", :action => "custom", :id => "1.1.1"} with_restful_routing(:messages, :member => {:custom => :get}, :constraints => {:id => /[0-9]\.[0-9]\.[0-9]/}) do - assert_recognizes(expected_options, :path => 'messages/1.1.1/custom', :method => :get) + assert_recognizes(expected_options, :path => "messages/1.1.1/custom", :method => :get) end end def test_with_path_prefix - with_restful_routing :messages, :path_prefix => '/thread/:thread_id' do - assert_simply_restful_for :messages, :path_prefix => 'thread/5/', :options => { :thread_id => '5' } + with_restful_routing :messages, :path_prefix => "/thread/:thread_id" do + assert_simply_restful_for :messages, :path_prefix => "thread/5/", :options => { :thread_id => "5" } end end def test_multiple_with_path_prefix - with_restful_routing :messages, :comments, :path_prefix => '/thread/:thread_id' do - assert_simply_restful_for :messages, :path_prefix => 'thread/5/', :options => { :thread_id => '5' } - assert_simply_restful_for :comments, :path_prefix => 'thread/5/', :options => { :thread_id => '5' } + with_restful_routing :messages, :comments, :path_prefix => "/thread/:thread_id" do + assert_simply_restful_for :messages, :path_prefix => "thread/5/", :options => { :thread_id => "5" } + assert_simply_restful_for :comments, :path_prefix => "thread/5/", :options => { :thread_id => "5" } end end def test_with_name_prefix - with_restful_routing :messages, :as => 'post_messages' do - assert_simply_restful_for :messages, :name_prefix => 'post_' + with_restful_routing :messages, :as => "post_messages" do + assert_simply_restful_for :messages, :name_prefix => "post_" end end def test_with_collection_actions - actions = { 'a' => :get, 'b' => :put, 'c' => :post, 'd' => :delete, 'e' => :patch } + actions = { "a" => :get, "b" => :put, "c" => :post, "d" => :delete, "e" => :patch } with_routing do |set| set.draw do @@ -172,12 +172,12 @@ class ResourcesTest < ActionController::TestCase end def test_with_collection_actions_and_name_prefix - actions = { 'a' => :get, 'b' => :put, 'c' => :post, 'd' => :delete, 'e' => :patch } + actions = { "a" => :get, "b" => :put, "c" => :post, "d" => :delete, "e" => :patch } with_routing do |set| set.draw do - scope '/threads/:thread_id' do - resources :messages, :as => 'thread_messages' do + scope "/threads/:thread_id" do + resources :messages, :as => "thread_messages" do get :a, :on => :collection put :b, :on => :collection post :c, :on => :collection @@ -187,13 +187,13 @@ class ResourcesTest < ActionController::TestCase end end - assert_restful_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do |options| + assert_restful_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do |options| actions.each do |action, method| assert_recognizes(options.merge(:action => action), :path => "/threads/1/messages/#{action}", :method => method) end end - assert_restful_named_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do + assert_restful_named_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do actions.each_key do |action| assert_named_route "/threads/1/messages/#{action}", "#{action}_thread_messages_path", :action => action end @@ -202,25 +202,25 @@ class ResourcesTest < ActionController::TestCase end def test_with_collection_actions_and_name_prefix_and_member_action_with_same_name - actions = { 'a' => :get } + actions = { "a" => :get } with_routing do |set| set.draw do - scope '/threads/:thread_id' do - resources :messages, :as => 'thread_messages' do + scope "/threads/:thread_id" do + resources :messages, :as => "thread_messages" do get :a, :on => :collection get :a, :on => :member end end end - assert_restful_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do |options| + assert_restful_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do |options| actions.each do |action, method| assert_recognizes(options.merge(:action => action), :path => "/threads/1/messages/#{action}", :method => method) end end - assert_restful_named_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do + assert_restful_named_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do actions.each_key do |action| assert_named_route "/threads/1/messages/#{action}", "#{action}_thread_messages_path", :action => action end @@ -229,12 +229,12 @@ class ResourcesTest < ActionController::TestCase end def test_with_collection_action_and_name_prefix_and_formatted - actions = { 'a' => :get, 'b' => :put, 'c' => :post, 'd' => :delete, 'e' => :patch } + actions = { "a" => :get, "b" => :put, "c" => :post, "d" => :delete, "e" => :patch } with_routing do |set| set.draw do - scope '/threads/:thread_id' do - resources :messages, :as => 'thread_messages' do + scope "/threads/:thread_id" do + resources :messages, :as => "thread_messages" do get :a, :on => :collection put :b, :on => :collection post :c, :on => :collection @@ -244,15 +244,15 @@ class ResourcesTest < ActionController::TestCase end end - assert_restful_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do |options| + assert_restful_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do |options| actions.each do |action, method| - assert_recognizes(options.merge(:action => action, :format => 'xml'), :path => "/threads/1/messages/#{action}.xml", :method => method) + assert_recognizes(options.merge(:action => action, :format => "xml"), :path => "/threads/1/messages/#{action}.xml", :method => method) end end - assert_restful_named_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do + assert_restful_named_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do actions.each_key do |action| - assert_named_route "/threads/1/messages/#{action}.xml", "#{action}_thread_messages_path", :action => action, :format => 'xml' + assert_named_route "/threads/1/messages/#{action}.xml", "#{action}_thread_messages_path", :action => action, :format => "xml" end end end @@ -261,7 +261,7 @@ class ResourcesTest < ActionController::TestCase def test_with_member_action [:patch, :put, :post].each do |method| with_restful_routing :messages, :member => { :mark => method } do - mark_options = {:action => 'mark', :id => '1'} + mark_options = {:action => "mark", :id => "1"} mark_path = "/messages/1/mark" assert_restful_routes_for :messages do |options| assert_recognizes(options.merge(mark_options), :path => mark_path, :method => method) @@ -275,24 +275,24 @@ class ResourcesTest < ActionController::TestCase end def test_with_member_action_and_requirement - expected_options = {:controller => 'messages', :action => 'mark', :id => '1.1.1'} + expected_options = {:controller => "messages", :action => "mark", :id => "1.1.1"} with_restful_routing(:messages, :constraints => {:id => /[0-9]\.[0-9]\.[0-9]/}, :member => { :mark => :get }) do - assert_recognizes(expected_options, :path => 'messages/1.1.1/mark', :method => :get) + assert_recognizes(expected_options, :path => "messages/1.1.1/mark", :method => :get) end end def test_member_when_override_paths_for_default_restful_actions_with [:patch, :put, :post].each do |method| - with_restful_routing :messages, :member => { :mark => method }, :path_names => {:new => 'nuevo'} do - mark_options = {:action => 'mark', :id => '1', :controller => "messages"} + with_restful_routing :messages, :member => { :mark => method }, :path_names => {:new => "nuevo"} do + mark_options = {:action => "mark", :id => "1", :controller => "messages"} mark_path = "/messages/1/mark" - assert_restful_routes_for :messages, :path_names => {:new => 'nuevo'} do |options| + assert_restful_routes_for :messages, :path_names => {:new => "nuevo"} do |options| assert_recognizes(options.merge(mark_options), :path => mark_path, :method => method) end - assert_restful_named_routes_for :messages, :path_names => {:new => 'nuevo'} do + assert_restful_named_routes_for :messages, :path_names => {:new => "nuevo"} do assert_named_route mark_path, :mark_message_path, mark_options end end @@ -312,7 +312,7 @@ class ResourcesTest < ActionController::TestCase end %w(mark unmark).each do |action| - action_options = {:action => action, :id => '1'} + action_options = {:action => action, :id => "1"} action_path = "/messages/1/#{action}" assert_restful_routes_for :messages do |options| assert_recognizes(options.merge(action_options), :path => action_path, :method => method) @@ -342,10 +342,10 @@ class ResourcesTest < ActionController::TestCase assert_restful_routes_for :messages do |options| [:get, :post].each do |method| - assert_recognizes(options.merge(:action => 'search'), :path => "/messages/search", :method => method) + assert_recognizes(options.merge(:action => "search"), :path => "/messages/search", :method => method) end [:get, :post].each do |method| - assert_recognizes(options.merge(:action => 'toggle', :id => '1'), :path => '/messages/1/toggle', :method => method) + assert_recognizes(options.merge(:action => "toggle", :id => "1"), :path => "/messages/1/toggle", :method => method) end end end @@ -359,7 +359,7 @@ class ResourcesTest < ActionController::TestCase end end - preview_options = {:action => 'preview'} + preview_options = {:action => "preview"} preview_path = "/messages/new/preview" assert_restful_routes_for :messages do |options| assert_recognizes(options.merge(preview_options), :path => preview_path, :method => :post) @@ -374,20 +374,20 @@ class ResourcesTest < ActionController::TestCase def test_with_new_action_with_name_prefix with_routing do |set| set.draw do - scope('/threads/:thread_id') do + scope("/threads/:thread_id") do resources :messages, :as => "thread_messages" do post :preview, :on => :new end end end - preview_options = {:action => 'preview', :thread_id => '1'} + preview_options = {:action => "preview", :thread_id => "1"} preview_path = "/threads/1/messages/new/preview" - assert_restful_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do |options| + assert_restful_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do |options| assert_recognizes(options.merge(preview_options), :path => preview_path, :method => :post) end - assert_restful_named_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do + assert_restful_named_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do assert_named_route preview_path, :preview_new_thread_message_path, preview_options end end @@ -396,20 +396,20 @@ class ResourcesTest < ActionController::TestCase def test_with_formatted_new_action_with_name_prefix with_routing do |set| set.draw do - scope('/threads/:thread_id') do + scope("/threads/:thread_id") do resources :messages, :as => "thread_messages" do post :preview, :on => :new end end end - preview_options = {:action => 'preview', :thread_id => '1', :format => 'xml'} + preview_options = {:action => "preview", :thread_id => "1", :format => "xml"} preview_path = "/threads/1/messages/new/preview.xml" - assert_restful_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do |options| + assert_restful_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do |options| assert_recognizes(options.merge(preview_options), :path => preview_path, :method => :post) end - assert_restful_named_routes_for :messages, :path_prefix => 'threads/1/', :name_prefix => 'thread_', :options => { :thread_id => '1' } do + assert_restful_named_routes_for :messages, :path_prefix => "threads/1/", :name_prefix => "thread_", :options => { :thread_id => "1" } do assert_named_route preview_path, :preview_new_thread_message_path, preview_options end end @@ -451,13 +451,13 @@ class ResourcesTest < ActionController::TestCase assert_simply_restful_for :threads assert_simply_restful_for :messages, - :name_prefix => 'thread_', - :path_prefix => 'threads/1/', - :options => { :thread_id => '1' } + :name_prefix => "thread_", + :path_prefix => "threads/1/", + :options => { :thread_id => "1" } assert_simply_restful_for :comments, - :name_prefix => 'thread_message_', - :path_prefix => 'threads/1/messages/2/', - :options => { :thread_id => '1', :message_id => '2' } + :name_prefix => "thread_message_", + :path_prefix => "threads/1/messages/2/", + :options => { :thread_id => "1", :message_id => "2" } end end @@ -474,15 +474,15 @@ class ResourcesTest < ActionController::TestCase assert_simply_restful_for :threads, :shallow => true assert_simply_restful_for :messages, - :name_prefix => 'thread_', - :path_prefix => 'threads/1/', + :name_prefix => "thread_", + :path_prefix => "threads/1/", :shallow => true, - :options => { :thread_id => '1' } + :options => { :thread_id => "1" } assert_simply_restful_for :comments, - :name_prefix => 'message_', - :path_prefix => 'messages/2/', + :name_prefix => "message_", + :path_prefix => "messages/2/", :shallow => true, - :options => { :message_id => '2' } + :options => { :message_id => "2" } end end @@ -499,18 +499,18 @@ class ResourcesTest < ActionController::TestCase end assert_simply_restful_for :products, - :controller => 'backoffice/admin/products', - :namespace => 'backoffice/admin/', - :name_prefix => 'backoffice_admin_', - :path_prefix => 'backoffice/admin/', + :controller => "backoffice/admin/products", + :namespace => "backoffice/admin/", + :name_prefix => "backoffice_admin_", + :path_prefix => "backoffice/admin/", :shallow => true assert_simply_restful_for :images, - :controller => 'backoffice/admin/images', - :namespace => 'backoffice/admin/', - :name_prefix => 'backoffice_admin_product_', - :path_prefix => 'backoffice/admin/products/1/', + :controller => "backoffice/admin/images", + :namespace => "backoffice/admin/", + :name_prefix => "backoffice_admin_product_", + :path_prefix => "backoffice/admin/products/1/", :shallow => true, - :options => { :product_id => '1' } + :options => { :product_id => "1" } end end @@ -542,13 +542,13 @@ class ResourcesTest < ActionController::TestCase def test_should_create_nested_singleton_resource_routes with_routing do |set| set.draw do - resource :admin, :controller => 'admin' do + resource :admin, :controller => "admin" do resource :account end end - assert_singleton_restful_for :admin, :controller => 'admin' - assert_singleton_restful_for :account, :name_prefix => "admin_", :path_prefix => 'admin/' + assert_singleton_restful_for :admin, :controller => "admin" + assert_singleton_restful_for :account, :name_prefix => "admin_", :path_prefix => "admin/" end end @@ -561,7 +561,7 @@ class ResourcesTest < ActionController::TestCase end end - reset_options = {:action => 'reset'} + reset_options = {:action => "reset"} reset_path = "/account/reset" assert_singleton_routes_for :account do |options| assert_recognizes(options.merge(reset_options), :path => reset_path, :method => method) @@ -608,22 +608,22 @@ class ResourcesTest < ActionController::TestCase end assert_singleton_restful_for :account - assert_simply_restful_for :messages, :name_prefix => "account_", :path_prefix => 'account/' + assert_simply_restful_for :messages, :name_prefix => "account_", :path_prefix => "account/" end end def test_should_nest_resources_in_singleton_resource_with_path_scope with_routing do |set| set.draw do - scope ':site_id' do + scope ":site_id" do resource(:account) do resources :messages end end end - assert_singleton_restful_for :account, :path_prefix => '7/', :options => { :site_id => '7' } - assert_simply_restful_for :messages, :name_prefix => "account_", :path_prefix => '7/account/', :options => { :site_id => '7' } + assert_singleton_restful_for :account, :path_prefix => "7/", :options => { :site_id => "7" } + assert_simply_restful_for :messages, :name_prefix => "account_", :path_prefix => "7/account/", :options => { :site_id => "7" } end end @@ -631,12 +631,12 @@ class ResourcesTest < ActionController::TestCase with_routing do |set| set.draw do resources :threads do - resource :admin, :controller => 'admin' + resource :admin, :controller => "admin" end end assert_simply_restful_for :threads - assert_singleton_restful_for :admin, :controller => 'admin', :name_prefix => 'thread_', :path_prefix => 'threads/5/', :options => { :thread_id => '5' } + assert_singleton_restful_for :admin, :controller => "admin", :name_prefix => "thread_", :path_prefix => "threads/5/", :options => { :thread_id => "5" } end end @@ -647,15 +647,15 @@ class ResourcesTest < ActionController::TestCase collection_path = "/#{controller_name}" assert_raise(Assertion) do - assert_recognizes(options.merge(:action => 'update'), :path => collection_path, :method => :patch) + assert_recognizes(options.merge(:action => "update"), :path => collection_path, :method => :patch) end assert_raise(Assertion) do - assert_recognizes(options.merge(:action => 'update'), :path => collection_path, :method => :put) + assert_recognizes(options.merge(:action => "update"), :path => collection_path, :method => :put) end assert_raise(Assertion) do - assert_recognizes(options.merge(:action => 'destroy'), :path => collection_path, :method => :delete) + assert_recognizes(options.merge(:action => "destroy"), :path => collection_path, :method => :delete) end end end @@ -663,15 +663,15 @@ class ResourcesTest < ActionController::TestCase def test_new_style_named_routes_for_resource with_routing do |set| set.draw do - scope '/threads/:thread_id' do - resources :messages, :as => 'thread_messages' do + scope "/threads/:thread_id" do + resources :messages, :as => "thread_messages" do get :search, :on => :collection get :preview, :on => :new end end end - assert_simply_restful_for :messages, :name_prefix => 'thread_', :path_prefix => 'threads/1/', :options => { :thread_id => '1' } + assert_simply_restful_for :messages, :name_prefix => "thread_", :path_prefix => "threads/1/", :options => { :thread_id => "1" } assert_named_route "/threads/1/messages/search", "search_thread_messages_path", {} assert_named_route "/threads/1/messages/new", "new_thread_message_path", {} assert_named_route "/threads/1/messages/new/preview", "preview_new_thread_message_path", {} @@ -681,14 +681,14 @@ class ResourcesTest < ActionController::TestCase def test_new_style_named_routes_for_singleton_resource with_routing do |set| set.draw do - scope '/admin' do + scope "/admin" do resource :account, :as => :admin_account do get :login, :on => :member get :preview, :on => :new end end end - assert_singleton_restful_for :account, :name_prefix => 'admin_', :path_prefix => 'admin/' + assert_singleton_restful_for :account, :name_prefix => "admin_", :path_prefix => "admin/" assert_named_route "/admin/account/login", "login_admin_account_path", {} assert_named_route "/admin/account/new", "new_admin_account_path", {} assert_named_route "/admin/account/new/preview", "preview_new_admin_account_path", {} @@ -703,7 +703,7 @@ class ResourcesTest < ActionController::TestCase end end - assert_simply_restful_for :products, :controller => "backoffice/products", :name_prefix => 'backoffice_', :path_prefix => 'backoffice/' + assert_simply_restful_for :products, :controller => "backoffice/products", :name_prefix => "backoffice_", :path_prefix => "backoffice/" end end @@ -717,7 +717,7 @@ class ResourcesTest < ActionController::TestCase end end - assert_simply_restful_for :products, :controller => "backoffice/admin/products", :name_prefix => 'backoffice_admin_', :path_prefix => 'backoffice/admin/' + assert_simply_restful_for :products, :controller => "backoffice/admin/products", :name_prefix => "backoffice_admin_", :path_prefix => "backoffice/admin/" end end @@ -743,7 +743,7 @@ class ResourcesTest < ActionController::TestCase end end - assert_simply_restful_for :images, :controller => "backoffice/images", :name_prefix => 'backoffice_product_', :path_prefix => 'backoffice/products/1/', :options => {:product_id => '1'} + assert_simply_restful_for :images, :controller => "backoffice/images", :name_prefix => "backoffice_product_", :path_prefix => "backoffice/products/1/", :options => {:product_id => "1"} end end @@ -759,7 +759,7 @@ class ResourcesTest < ActionController::TestCase end end - assert_simply_restful_for :images, :controller => "backoffice/admin/images", :name_prefix => 'backoffice_admin_product_', :path_prefix => 'backoffice/admin/products/1/', :options => {:product_id => '1'} + assert_simply_restful_for :images, :controller => "backoffice/admin/images", :name_prefix => "backoffice_admin_product_", :path_prefix => "backoffice/admin/products/1/", :options => {:product_id => "1"} end end @@ -772,9 +772,9 @@ class ResourcesTest < ActionController::TestCase with_routing do |set| set.draw do - resources :messages, :path => 'reviews' + resources :messages, :path => "reviews" end - assert_simply_restful_for :messages, :as => 'reviews' + assert_simply_restful_for :messages, :as => "reviews" assert_recognizes({:controller => "messages", :action => "index"}, "/reviews") assert_recognizes({:controller => "messages", :action => "index"}, "/reviews/") end @@ -784,27 +784,27 @@ class ResourcesTest < ActionController::TestCase with_routing do |set| set.draw do resources :products do - resources :product_reviews, :path => 'reviews', :controller => 'messages' + resources :product_reviews, :path => "reviews", :controller => "messages" end resources :tutors do - resources :tutor_reviews, :path => 'reviews', :controller => 'comments' + resources :tutor_reviews, :path => "reviews", :controller => "comments" end end - assert_simply_restful_for :product_reviews, :controller=>'messages', :as => 'reviews', :name_prefix => 'product_', :path_prefix => 'products/1/', :options => {:product_id => '1'} - assert_simply_restful_for :tutor_reviews,:controller=>'comments', :as => 'reviews', :name_prefix => 'tutor_', :path_prefix => 'tutors/1/', :options => {:tutor_id => '1'} + assert_simply_restful_for :product_reviews, :controller=>"messages", :as => "reviews", :name_prefix => "product_", :path_prefix => "products/1/", :options => {:product_id => "1"} + assert_simply_restful_for :tutor_reviews,:controller=>"comments", :as => "reviews", :name_prefix => "tutor_", :path_prefix => "tutors/1/", :options => {:tutor_id => "1"} end end def test_with_path_segment_path_prefix_constraints - expected_options = {:controller => 'messages', :action => 'show', :thread_id => '1.1.1', :id => '1'} + expected_options = {:controller => "messages", :action => "show", :thread_id => "1.1.1", :id => "1"} with_routing do |set| set.draw do - scope '/thread/:thread_id', :constraints => { :thread_id => /[0-9]\.[0-9]\.[0-9]/ } do - resources :messages, :path => 'comments' + scope "/thread/:thread_id", :constraints => { :thread_id => /[0-9]\.[0-9]\.[0-9]/ } do + resources :messages, :path => "comments" end end - assert_recognizes(expected_options, :path => 'thread/1.1.1/comments/1', :method => :get) + assert_recognizes(expected_options, :path => "thread/1.1.1/comments/1", :method => :get) end end @@ -814,8 +814,8 @@ class ResourcesTest < ActionController::TestCase resources :products, :only => :show end - assert_resource_allowed_routes('products', {}, { :id => '1' }, :show, [:index, :new, :create, :edit, :update, :destroy]) - assert_resource_allowed_routes('products', { :format => 'xml' }, { :id => '1' }, :show, [:index, :new, :create, :edit, :update, :destroy]) + assert_resource_allowed_routes("products", {}, { :id => "1" }, :show, [:index, :new, :create, :edit, :update, :destroy]) + assert_resource_allowed_routes("products", { :format => "xml" }, { :id => "1" }, :show, [:index, :new, :create, :edit, :update, :destroy]) end end @@ -825,8 +825,8 @@ class ResourcesTest < ActionController::TestCase resource :account, :only => :show end - assert_singleton_resource_allowed_routes('accounts', {}, :show, [:index, :new, :create, :edit, :update, :destroy]) - assert_singleton_resource_allowed_routes('accounts', { :format => 'xml' }, :show, [:index, :new, :create, :edit, :update, :destroy]) + assert_singleton_resource_allowed_routes("accounts", {}, :show, [:index, :new, :create, :edit, :update, :destroy]) + assert_singleton_resource_allowed_routes("accounts", { :format => "xml" }, :show, [:index, :new, :create, :edit, :update, :destroy]) end end @@ -836,8 +836,8 @@ class ResourcesTest < ActionController::TestCase resources :products, :except => :destroy end - assert_resource_allowed_routes('products', {}, { :id => '1' }, [:index, :new, :create, :show, :edit, :update], :destroy) - assert_resource_allowed_routes('products', { :format => 'xml' }, { :id => '1' }, [:index, :new, :create, :show, :edit, :update], :destroy) + assert_resource_allowed_routes("products", {}, { :id => "1" }, [:index, :new, :create, :show, :edit, :update], :destroy) + assert_resource_allowed_routes("products", { :format => "xml" }, { :id => "1" }, [:index, :new, :create, :show, :edit, :update], :destroy) end end @@ -847,8 +847,8 @@ class ResourcesTest < ActionController::TestCase resource :account, :except => :destroy end - assert_singleton_resource_allowed_routes('accounts', {}, [:new, :create, :show, :edit, :update], :destroy) - assert_singleton_resource_allowed_routes('accounts', { :format => 'xml' }, [:new, :create, :show, :edit, :update], :destroy) + assert_singleton_resource_allowed_routes("accounts", {}, [:new, :create, :show, :edit, :update], :destroy) + assert_singleton_resource_allowed_routes("accounts", { :format => "xml" }, [:new, :create, :show, :edit, :update], :destroy) end end @@ -858,8 +858,8 @@ class ResourcesTest < ActionController::TestCase resources :products, :only => :create end - assert_resource_allowed_routes('products', {}, { :id => '1' }, :create, [:index, :new, :show, :edit, :update, :destroy]) - assert_resource_allowed_routes('products', { :format => 'xml' }, { :id => '1' }, :create, [:index, :new, :show, :edit, :update, :destroy]) + assert_resource_allowed_routes("products", {}, { :id => "1" }, :create, [:index, :new, :show, :edit, :update, :destroy]) + assert_resource_allowed_routes("products", { :format => "xml" }, { :id => "1" }, :create, [:index, :new, :show, :edit, :update, :destroy]) assert_not_nil set.named_routes[:products] end @@ -871,8 +871,8 @@ class ResourcesTest < ActionController::TestCase resources :products, :only => :update end - assert_resource_allowed_routes('products', {}, { :id => '1' }, :update, [:index, :new, :create, :show, :edit, :destroy]) - assert_resource_allowed_routes('products', { :format => 'xml' }, { :id => '1' }, :update, [:index, :new, :create, :show, :edit, :destroy]) + assert_resource_allowed_routes("products", {}, { :id => "1" }, :update, [:index, :new, :create, :show, :edit, :destroy]) + assert_resource_allowed_routes("products", { :format => "xml" }, { :id => "1" }, :update, [:index, :new, :create, :show, :edit, :destroy]) assert_not_nil set.named_routes[:product] end @@ -884,8 +884,8 @@ class ResourcesTest < ActionController::TestCase resources :products, :only => :destroy end - assert_resource_allowed_routes('products', {}, { :id => '1' }, :destroy, [:index, :new, :create, :show, :edit, :update]) - assert_resource_allowed_routes('products', { :format => 'xml' }, { :id => '1' }, :destroy, [:index, :new, :create, :show, :edit, :update]) + assert_resource_allowed_routes("products", {}, { :id => "1" }, :destroy, [:index, :new, :create, :show, :edit, :update]) + assert_resource_allowed_routes("products", { :format => "xml" }, { :id => "1" }, :destroy, [:index, :new, :create, :show, :edit, :update]) assert_not_nil set.named_routes[:product] end @@ -897,8 +897,8 @@ class ResourcesTest < ActionController::TestCase resource :account, :only => :create end - assert_singleton_resource_allowed_routes('accounts', {}, :create, [:new, :show, :edit, :update, :destroy]) - assert_singleton_resource_allowed_routes('accounts', { :format => 'xml' }, :create, [:new, :show, :edit, :update, :destroy]) + assert_singleton_resource_allowed_routes("accounts", {}, :create, [:new, :show, :edit, :update, :destroy]) + assert_singleton_resource_allowed_routes("accounts", { :format => "xml" }, :create, [:new, :show, :edit, :update, :destroy]) assert_not_nil set.named_routes[:account] end @@ -910,8 +910,8 @@ class ResourcesTest < ActionController::TestCase resource :account, :only => :update end - assert_singleton_resource_allowed_routes('accounts', {}, :update, [:new, :create, :show, :edit, :destroy]) - assert_singleton_resource_allowed_routes('accounts', { :format => 'xml' }, :update, [:new, :create, :show, :edit, :destroy]) + assert_singleton_resource_allowed_routes("accounts", {}, :update, [:new, :create, :show, :edit, :destroy]) + assert_singleton_resource_allowed_routes("accounts", { :format => "xml" }, :update, [:new, :create, :show, :edit, :destroy]) assert_not_nil set.named_routes[:account] end @@ -923,8 +923,8 @@ class ResourcesTest < ActionController::TestCase resource :account, :only => :destroy end - assert_singleton_resource_allowed_routes('accounts', {}, :destroy, [:new, :create, :show, :edit, :update]) - assert_singleton_resource_allowed_routes('accounts', { :format => 'xml' }, :destroy, [:new, :create, :show, :edit, :update]) + assert_singleton_resource_allowed_routes("accounts", {}, :destroy, [:new, :create, :show, :edit, :update]) + assert_singleton_resource_allowed_routes("accounts", { :format => "xml" }, :destroy, [:new, :create, :show, :edit, :update]) assert_not_nil set.named_routes[:account] end @@ -938,11 +938,11 @@ class ResourcesTest < ActionController::TestCase end end - assert_resource_allowed_routes('products', {}, { :id => '1' }, [], [:index, :new, :create, :show, :edit, :update, :destroy]) - assert_resource_allowed_routes('products', { :format => 'xml' }, { :id => '1' }, [], [:index, :new, :create, :show, :edit, :update, :destroy]) + assert_resource_allowed_routes("products", {}, { :id => "1" }, [], [:index, :new, :create, :show, :edit, :update, :destroy]) + assert_resource_allowed_routes("products", { :format => "xml" }, { :id => "1" }, [], [:index, :new, :create, :show, :edit, :update, :destroy]) - assert_recognizes({ :controller => 'products', :action => 'sale' }, :path => 'products/sale', :method => :get) - assert_recognizes({ :controller => 'products', :action => 'sale', :format => 'xml' }, :path => 'products/sale.xml', :method => :get) + assert_recognizes({ :controller => "products", :action => "sale" }, :path => "products/sale", :method => :get) + assert_recognizes({ :controller => "products", :action => "sale", :format => "xml" }, :path => "products/sale.xml", :method => :get) end end @@ -954,11 +954,11 @@ class ResourcesTest < ActionController::TestCase end end - assert_resource_allowed_routes('products', {}, { :id => '1' }, [], [:index, :new, :create, :show, :edit, :update, :destroy]) - assert_resource_allowed_routes('products', { :format => 'xml' }, { :id => '1' }, [], [:index, :new, :create, :show, :edit, :update, :destroy]) + assert_resource_allowed_routes("products", {}, { :id => "1" }, [], [:index, :new, :create, :show, :edit, :update, :destroy]) + assert_resource_allowed_routes("products", { :format => "xml" }, { :id => "1" }, [], [:index, :new, :create, :show, :edit, :update, :destroy]) - assert_recognizes({ :controller => 'products', :action => 'preview', :id => '1' }, :path => 'products/1/preview', :method => :get) - assert_recognizes({ :controller => 'products', :action => 'preview', :id => '1', :format => 'xml' }, :path => 'products/1/preview.xml', :method => :get) + assert_recognizes({ :controller => "products", :action => "preview", :id => "1" }, :path => "products/1/preview", :method => :get) + assert_recognizes({ :controller => "products", :action => "preview", :id => "1", :format => "xml" }, :path => "products/1/preview.xml", :method => :get) end end @@ -972,11 +972,11 @@ class ResourcesTest < ActionController::TestCase end end - assert_singleton_resource_allowed_routes('accounts', {}, [], [:new, :create, :show, :edit, :update, :destroy]) - assert_singleton_resource_allowed_routes('accounts', { :format => 'xml' }, [], [:new, :create, :show, :edit, :update, :destroy]) + assert_singleton_resource_allowed_routes("accounts", {}, [], [:new, :create, :show, :edit, :update, :destroy]) + assert_singleton_resource_allowed_routes("accounts", { :format => "xml" }, [], [:new, :create, :show, :edit, :update, :destroy]) - assert_recognizes({ :controller => 'accounts', :action => 'signup' }, :path => 'account/signup', :method => :get) - assert_recognizes({ :controller => 'accounts', :action => 'signup', :format => 'xml' }, :path => 'account/signup.xml', :method => :get) + assert_recognizes({ :controller => "accounts", :action => "signup" }, :path => "account/signup", :method => :get) + assert_recognizes({ :controller => "accounts", :action => "signup", :format => "xml" }, :path => "account/signup.xml", :method => :get) end end @@ -990,11 +990,11 @@ class ResourcesTest < ActionController::TestCase end end - assert_resource_allowed_routes('images', { :product_id => '1' }, { :id => '2' }, :show, [:index, :new, :create, :edit, :update, :destroy], 'products/1/images') - assert_resource_allowed_routes('images', { :product_id => '1', :format => 'xml' }, { :id => '2' }, :show, [:index, :new, :create, :edit, :update, :destroy], 'products/1/images') + assert_resource_allowed_routes("images", { :product_id => "1" }, { :id => "2" }, :show, [:index, :new, :create, :edit, :update, :destroy], "products/1/images") + assert_resource_allowed_routes("images", { :product_id => "1", :format => "xml" }, { :id => "2" }, :show, [:index, :new, :create, :edit, :update, :destroy], "products/1/images") - assert_recognizes({ :controller => 'images', :action => 'thumbnail', :product_id => '1', :id => '2' }, :path => 'products/1/images/2/thumbnail', :method => :get) - assert_recognizes({ :controller => 'images', :action => 'thumbnail', :product_id => '1', :id => '2', :format => 'jpg' }, :path => 'products/1/images/2/thumbnail.jpg', :method => :get) + assert_recognizes({ :controller => "images", :action => "thumbnail", :product_id => "1", :id => "2" }, :path => "products/1/images/2/thumbnail", :method => :get) + assert_recognizes({ :controller => "images", :action => "thumbnail", :product_id => "1", :id => "2", :format => "jpg" }, :path => "products/1/images/2/thumbnail.jpg", :method => :get) end end @@ -1006,8 +1006,8 @@ class ResourcesTest < ActionController::TestCase end end - assert_resource_allowed_routes('images', { :product_id => '1' }, { :id => '2' }, [:index, :new, :create, :show, :edit, :update], :destroy, 'products/1/images') - assert_resource_allowed_routes('images', { :product_id => '1', :format => 'xml' }, { :id => '2' }, [:index, :new, :create, :show, :edit, :update], :destroy, 'products/1/images') + assert_resource_allowed_routes("images", { :product_id => "1" }, { :id => "2" }, [:index, :new, :create, :show, :edit, :update], :destroy, "products/1/images") + assert_resource_allowed_routes("images", { :product_id => "1", :format => "xml" }, { :id => "2" }, [:index, :new, :create, :show, :edit, :update], :destroy, "products/1/images") end end @@ -1019,8 +1019,8 @@ class ResourcesTest < ActionController::TestCase end end - assert_resource_allowed_routes('images', { :product_id => '1' }, { :id => '2' }, [:index, :new, :create, :show, :edit, :update, :destroy], [], 'products/1/images') - assert_resource_allowed_routes('images', { :product_id => '1', :format => 'xml' }, { :id => '2' }, [:index, :new, :create, :show, :edit, :update, :destroy], [], 'products/1/images') + assert_resource_allowed_routes("images", { :product_id => "1" }, { :id => "2" }, [:index, :new, :create, :show, :edit, :update, :destroy], [], "products/1/images") + assert_resource_allowed_routes("images", { :product_id => "1", :format => "xml" }, { :id => "2" }, [:index, :new, :create, :show, :edit, :update, :destroy], [], "products/1/images") end end @@ -1032,8 +1032,8 @@ class ResourcesTest < ActionController::TestCase end end - assert_resource_allowed_routes('images', { :product_id => '1' }, { :id => '2' }, :destroy, [:index, :new, :create, :show, :edit, :update], 'products/1/images') - assert_resource_allowed_routes('images', { :product_id => '1', :format => 'xml' }, { :id => '2' }, :destroy, [:index, :new, :create, :show, :edit, :update], 'products/1/images') + assert_resource_allowed_routes("images", { :product_id => "1" }, { :id => "2" }, :destroy, [:index, :new, :create, :show, :edit, :update], "products/1/images") + assert_resource_allowed_routes("images", { :product_id => "1", :format => "xml" }, { :id => "2" }, :destroy, [:index, :new, :create, :show, :edit, :update], "products/1/images") end end @@ -1045,8 +1045,8 @@ class ResourcesTest < ActionController::TestCase end end - assert_resource_allowed_routes('images', { :product_id => '1' }, { :id => '2' }, [:index, :new, :create, :show, :edit, :update, :destroy], [], 'products/1/images') - assert_resource_allowed_routes('images', { :product_id => '1', :format => 'xml' }, { :id => '2' }, [:index, :new, :create, :show, :edit, :update, :destroy], [], 'products/1/images') + assert_resource_allowed_routes("images", { :product_id => "1" }, { :id => "2" }, [:index, :new, :create, :show, :edit, :update, :destroy], [], "products/1/images") + assert_resource_allowed_routes("images", { :product_id => "1", :format => "xml" }, { :id => "2" }, [:index, :new, :create, :show, :edit, :update, :destroy], [], "products/1/images") end end @@ -1056,7 +1056,7 @@ class ResourcesTest < ActionController::TestCase resource :product end - assert_routing '/product', :controller => 'products', :action => 'show' + assert_routing "/product", :controller => "products", :action => "show" assert set.recognize_path("/product", :method => :get) end end @@ -1099,7 +1099,7 @@ class ResourcesTest < ActionController::TestCase with_routing do |set| set.draw do - scope(path_prefix || '') do + scope(path_prefix || "") do resources(*args) do if collection_methods collection do @@ -1169,34 +1169,34 @@ class ResourcesTest < ActionController::TestCase formatted_edit_member_path = "#{member_path}/#{edit_action}.xml" with_options(route_options) do |controller| - controller.assert_routing collection_path, :action => 'index' - controller.assert_routing new_path, :action => 'new' - controller.assert_routing "#{collection_path}.xml", :action => 'index', :format => 'xml' - controller.assert_routing "#{new_path}.xml", :action => 'new', :format => 'xml' + controller.assert_routing collection_path, :action => "index" + controller.assert_routing new_path, :action => "new" + controller.assert_routing "#{collection_path}.xml", :action => "index", :format => "xml" + controller.assert_routing "#{new_path}.xml", :action => "new", :format => "xml" end with_options(options[:shallow_options]) do |controller| - controller.assert_routing member_path, :action => 'show', :id => '1' - controller.assert_routing edit_member_path, :action => 'edit', :id => '1' - controller.assert_routing "#{member_path}.xml", :action => 'show', :id => '1', :format => 'xml' - controller.assert_routing formatted_edit_member_path, :action => 'edit', :id => '1', :format => 'xml' - end - - assert_recognizes(route_options.merge(:action => 'index'), :path => collection_path, :method => :get) - assert_recognizes(route_options.merge(:action => 'new'), :path => new_path, :method => :get) - assert_recognizes(route_options.merge(:action => 'create'), :path => collection_path, :method => :post) - assert_recognizes(options[:shallow_options].merge(:action => 'show', :id => '1'), :path => member_path, :method => :get) - assert_recognizes(options[:shallow_options].merge(:action => 'edit', :id => '1'), :path => edit_member_path, :method => :get) - assert_recognizes(options[:shallow_options].merge(:action => 'update', :id => '1'), :path => member_path, :method => :put) - assert_recognizes(options[:shallow_options].merge(:action => 'destroy', :id => '1'), :path => member_path, :method => :delete) - - assert_recognizes(route_options.merge(:action => 'index', :format => 'xml'), :path => "#{collection_path}.xml", :method => :get) - assert_recognizes(route_options.merge(:action => 'new', :format => 'xml'), :path => "#{new_path}.xml", :method => :get) - assert_recognizes(route_options.merge(:action => 'create', :format => 'xml'), :path => "#{collection_path}.xml", :method => :post) - assert_recognizes(options[:shallow_options].merge(:action => 'show', :id => '1', :format => 'xml'), :path => "#{member_path}.xml", :method => :get) - assert_recognizes(options[:shallow_options].merge(:action => 'edit', :id => '1', :format => 'xml'), :path => formatted_edit_member_path, :method => :get) - assert_recognizes(options[:shallow_options].merge(:action => 'update', :id => '1', :format => 'xml'), :path => "#{member_path}.xml", :method => :put) - assert_recognizes(options[:shallow_options].merge(:action => 'destroy', :id => '1', :format => 'xml'), :path => "#{member_path}.xml", :method => :delete) + controller.assert_routing member_path, :action => "show", :id => "1" + controller.assert_routing edit_member_path, :action => "edit", :id => "1" + controller.assert_routing "#{member_path}.xml", :action => "show", :id => "1", :format => "xml" + controller.assert_routing formatted_edit_member_path, :action => "edit", :id => "1", :format => "xml" + end + + assert_recognizes(route_options.merge(:action => "index"), :path => collection_path, :method => :get) + assert_recognizes(route_options.merge(:action => "new"), :path => new_path, :method => :get) + assert_recognizes(route_options.merge(:action => "create"), :path => collection_path, :method => :post) + assert_recognizes(options[:shallow_options].merge(:action => "show", :id => "1"), :path => member_path, :method => :get) + assert_recognizes(options[:shallow_options].merge(:action => "edit", :id => "1"), :path => edit_member_path, :method => :get) + assert_recognizes(options[:shallow_options].merge(:action => "update", :id => "1"), :path => member_path, :method => :put) + assert_recognizes(options[:shallow_options].merge(:action => "destroy", :id => "1"), :path => member_path, :method => :delete) + + assert_recognizes(route_options.merge(:action => "index", :format => "xml"), :path => "#{collection_path}.xml", :method => :get) + assert_recognizes(route_options.merge(:action => "new", :format => "xml"), :path => "#{new_path}.xml", :method => :get) + assert_recognizes(route_options.merge(:action => "create", :format => "xml"), :path => "#{collection_path}.xml", :method => :post) + assert_recognizes(options[:shallow_options].merge(:action => "show", :id => "1", :format => "xml"), :path => "#{member_path}.xml", :method => :get) + assert_recognizes(options[:shallow_options].merge(:action => "edit", :id => "1", :format => "xml"), :path => formatted_edit_member_path, :method => :get) + assert_recognizes(options[:shallow_options].merge(:action => "update", :id => "1", :format => "xml"), :path => "#{member_path}.xml", :method => :put) + assert_recognizes(options[:shallow_options].merge(:action => "destroy", :id => "1", :format => "xml"), :path => "#{member_path}.xml", :method => :delete) yield route_options if block_given? end @@ -1228,7 +1228,7 @@ class ResourcesTest < ActionController::TestCase shallow_path = "/#{options[:shallow] ? options[:namespace] : options[:path_prefix]}#{path}" full_path = "/#{options[:path_prefix]}#{path}" name_prefix = options[:name_prefix] - shallow_prefix = options[:shallow] ? options[:namespace].try(:gsub, /\//, '_') : options[:name_prefix] + shallow_prefix = options[:shallow] ? options[:namespace].try(:gsub, /\//, "_") : options[:name_prefix] new_action = "new" edit_action = "edit" @@ -1238,14 +1238,14 @@ class ResourcesTest < ActionController::TestCase end assert_named_route "#{full_path}", "#{name_prefix}#{controller_name}_path", route_options - assert_named_route "#{full_path}.xml", "#{name_prefix}#{controller_name}_path", route_options.merge(:format => 'xml') - assert_named_route "#{shallow_path}/1", "#{shallow_prefix}#{singular_name}_path", options[:shallow_options].merge(:id => '1') - assert_named_route "#{shallow_path}/1.xml", "#{shallow_prefix}#{singular_name}_path", options[:shallow_options].merge(:id => '1', :format => 'xml') + assert_named_route "#{full_path}.xml", "#{name_prefix}#{controller_name}_path", route_options.merge(:format => "xml") + assert_named_route "#{shallow_path}/1", "#{shallow_prefix}#{singular_name}_path", options[:shallow_options].merge(:id => "1") + assert_named_route "#{shallow_path}/1.xml", "#{shallow_prefix}#{singular_name}_path", options[:shallow_options].merge(:id => "1", :format => "xml") assert_named_route "#{full_path}/#{new_action}", "new_#{name_prefix}#{singular_name}_path", route_options - assert_named_route "#{full_path}/#{new_action}.xml", "new_#{name_prefix}#{singular_name}_path", route_options.merge(:format => 'xml') - assert_named_route "#{shallow_path}/1/#{edit_action}", "edit_#{shallow_prefix}#{singular_name}_path", options[:shallow_options].merge(:id => '1') - assert_named_route "#{shallow_path}/1/#{edit_action}.xml", "edit_#{shallow_prefix}#{singular_name}_path", options[:shallow_options].merge(:id => '1', :format => 'xml') + assert_named_route "#{full_path}/#{new_action}.xml", "new_#{name_prefix}#{singular_name}_path", route_options.merge(:format => "xml") + assert_named_route "#{shallow_path}/1/#{edit_action}", "edit_#{shallow_prefix}#{singular_name}_path", options[:shallow_options].merge(:id => "1") + assert_named_route "#{shallow_path}/1/#{edit_action}.xml", "edit_#{shallow_prefix}#{singular_name}_path", options[:shallow_options].merge(:id => "1", :format => "xml") yield route_options if block_given? end @@ -1260,27 +1260,27 @@ class ResourcesTest < ActionController::TestCase formatted_edit_path = "#{full_path}/edit.xml" with_options route_options do |controller| - controller.assert_routing full_path, :action => 'show' - controller.assert_routing new_path, :action => 'new' - controller.assert_routing edit_path, :action => 'edit' - controller.assert_routing "#{full_path}.xml", :action => 'show', :format => 'xml' - controller.assert_routing "#{new_path}.xml", :action => 'new', :format => 'xml' - controller.assert_routing formatted_edit_path, :action => 'edit', :format => 'xml' - end - - assert_recognizes(route_options.merge(:action => 'show'), :path => full_path, :method => :get) - assert_recognizes(route_options.merge(:action => 'new'), :path => new_path, :method => :get) - assert_recognizes(route_options.merge(:action => 'edit'), :path => edit_path, :method => :get) - assert_recognizes(route_options.merge(:action => 'create'), :path => full_path, :method => :post) - assert_recognizes(route_options.merge(:action => 'update'), :path => full_path, :method => :put) - assert_recognizes(route_options.merge(:action => 'destroy'), :path => full_path, :method => :delete) - - assert_recognizes(route_options.merge(:action => 'show', :format => 'xml'), :path => "#{full_path}.xml", :method => :get) - assert_recognizes(route_options.merge(:action => 'new', :format => 'xml'), :path => "#{new_path}.xml", :method => :get) - assert_recognizes(route_options.merge(:action => 'edit', :format => 'xml'), :path => formatted_edit_path, :method => :get) - assert_recognizes(route_options.merge(:action => 'create', :format => 'xml'), :path => "#{full_path}.xml", :method => :post) - assert_recognizes(route_options.merge(:action => 'update', :format => 'xml'), :path => "#{full_path}.xml", :method => :put) - assert_recognizes(route_options.merge(:action => 'destroy', :format => 'xml'), :path => "#{full_path}.xml", :method => :delete) + controller.assert_routing full_path, :action => "show" + controller.assert_routing new_path, :action => "new" + controller.assert_routing edit_path, :action => "edit" + controller.assert_routing "#{full_path}.xml", :action => "show", :format => "xml" + controller.assert_routing "#{new_path}.xml", :action => "new", :format => "xml" + controller.assert_routing formatted_edit_path, :action => "edit", :format => "xml" + end + + assert_recognizes(route_options.merge(:action => "show"), :path => full_path, :method => :get) + assert_recognizes(route_options.merge(:action => "new"), :path => new_path, :method => :get) + assert_recognizes(route_options.merge(:action => "edit"), :path => edit_path, :method => :get) + assert_recognizes(route_options.merge(:action => "create"), :path => full_path, :method => :post) + assert_recognizes(route_options.merge(:action => "update"), :path => full_path, :method => :put) + assert_recognizes(route_options.merge(:action => "destroy"), :path => full_path, :method => :delete) + + assert_recognizes(route_options.merge(:action => "show", :format => "xml"), :path => "#{full_path}.xml", :method => :get) + assert_recognizes(route_options.merge(:action => "new", :format => "xml"), :path => "#{new_path}.xml", :method => :get) + assert_recognizes(route_options.merge(:action => "edit", :format => "xml"), :path => formatted_edit_path, :method => :get) + assert_recognizes(route_options.merge(:action => "create", :format => "xml"), :path => "#{full_path}.xml", :method => :post) + assert_recognizes(route_options.merge(:action => "update", :format => "xml"), :path => "#{full_path}.xml", :method => :put) + assert_recognizes(route_options.merge(:action => "destroy", :format => "xml"), :path => "#{full_path}.xml", :method => :delete) yield route_options if block_given? end @@ -1297,12 +1297,12 @@ class ResourcesTest < ActionController::TestCase name_prefix = options[:name_prefix] assert_named_route "#{full_path}", "#{name_prefix}#{singleton_name}_path", route_options - assert_named_route "#{full_path}.xml", "#{name_prefix}#{singleton_name}_path", route_options.merge(:format => 'xml') + assert_named_route "#{full_path}.xml", "#{name_prefix}#{singleton_name}_path", route_options.merge(:format => "xml") assert_named_route "#{full_path}/new", "new_#{name_prefix}#{singleton_name}_path", route_options - assert_named_route "#{full_path}/new.xml", "new_#{name_prefix}#{singleton_name}_path", route_options.merge(:format => 'xml') + assert_named_route "#{full_path}/new.xml", "new_#{name_prefix}#{singleton_name}_path", route_options.merge(:format => "xml") assert_named_route "#{full_path}/edit", "edit_#{name_prefix}#{singleton_name}_path", route_options - assert_named_route "#{full_path}/edit.xml", "edit_#{name_prefix}#{singleton_name}_path", route_options.merge(:format => 'xml') + assert_named_route "#{full_path}/edit.xml", "edit_#{name_prefix}#{singleton_name}_path", route_options.merge(:format => "xml") end def assert_named_route(expected, route, options) @@ -1324,25 +1324,25 @@ class ResourcesTest < ActionController::TestCase options.merge!(:controller => controller) shallow_options.merge!(options) - assert_whether_allowed(allowed, not_allowed, options, 'index', "#{path}#{format}", :get) - assert_whether_allowed(allowed, not_allowed, options, 'new', "#{path}/new#{format}", :get) - assert_whether_allowed(allowed, not_allowed, options, 'create', "#{path}#{format}", :post) - assert_whether_allowed(allowed, not_allowed, shallow_options, 'show', "#{shallow_path}#{format}", :get) - assert_whether_allowed(allowed, not_allowed, shallow_options, 'edit', "#{shallow_path}/edit#{format}", :get) - assert_whether_allowed(allowed, not_allowed, shallow_options, 'update', "#{shallow_path}#{format}", :put) - assert_whether_allowed(allowed, not_allowed, shallow_options, 'destroy', "#{shallow_path}#{format}", :delete) + assert_whether_allowed(allowed, not_allowed, options, "index", "#{path}#{format}", :get) + assert_whether_allowed(allowed, not_allowed, options, "new", "#{path}/new#{format}", :get) + assert_whether_allowed(allowed, not_allowed, options, "create", "#{path}#{format}", :post) + assert_whether_allowed(allowed, not_allowed, shallow_options, "show", "#{shallow_path}#{format}", :get) + assert_whether_allowed(allowed, not_allowed, shallow_options, "edit", "#{shallow_path}/edit#{format}", :get) + assert_whether_allowed(allowed, not_allowed, shallow_options, "update", "#{shallow_path}#{format}", :put) + assert_whether_allowed(allowed, not_allowed, shallow_options, "destroy", "#{shallow_path}#{format}", :delete) end def assert_singleton_resource_allowed_routes(controller, options, allowed, not_allowed, path = controller.singularize) format = options[:format] && ".#{options[:format]}" options.merge!(:controller => controller) - assert_whether_allowed(allowed, not_allowed, options, 'new', "#{path}/new#{format}", :get) - assert_whether_allowed(allowed, not_allowed, options, 'create', "#{path}#{format}", :post) - assert_whether_allowed(allowed, not_allowed, options, 'show', "#{path}#{format}", :get) - assert_whether_allowed(allowed, not_allowed, options, 'edit', "#{path}/edit#{format}", :get) - assert_whether_allowed(allowed, not_allowed, options, 'update', "#{path}#{format}", :put) - assert_whether_allowed(allowed, not_allowed, options, 'destroy', "#{path}#{format}", :delete) + assert_whether_allowed(allowed, not_allowed, options, "new", "#{path}/new#{format}", :get) + assert_whether_allowed(allowed, not_allowed, options, "create", "#{path}#{format}", :post) + assert_whether_allowed(allowed, not_allowed, options, "show", "#{path}#{format}", :get) + assert_whether_allowed(allowed, not_allowed, options, "edit", "#{path}/edit#{format}", :get) + assert_whether_allowed(allowed, not_allowed, options, "update", "#{path}#{format}", :put) + assert_whether_allowed(allowed, not_allowed, options, "destroy", "#{path}#{format}", :delete) end def assert_whether_allowed(allowed, not_allowed, options, action, path, method) @@ -1355,7 +1355,7 @@ class ResourcesTest < ActionController::TestCase elsif Array(not_allowed).include?(action) assert_not_recognizes options, path_options else - raise Assertion, 'Invalid Action has passed' + raise Assertion, "Invalid Action has passed" end end diff --git a/actionpack/test/controller/routing_test.rb b/actionpack/test/controller/routing_test.rb index 03bf8f8295..f8a3d7cd5b 100644 --- a/actionpack/test/controller/routing_test.rb +++ b/actionpack/test/controller/routing_test.rb @@ -1,7 +1,7 @@ -require 'abstract_unit' -require 'controller/fake_controllers' -require 'active_support/core_ext/object/with_options' -require 'active_support/core_ext/object/json' +require "abstract_unit" +require "controller/fake_controllers" +require "active_support/core_ext/object/with_options" +require "active_support/core_ext/object/json" class MilestonesController < ActionController::Base def index() head :ok end @@ -16,12 +16,12 @@ class UriReservedCharactersRoutingTest < ActiveSupport::TestCase @set = ActionDispatch::Routing::RouteSet.new @set.draw do ActiveSupport::Deprecation.silence do - get ':controller/:action/:variable/*additional' + get ":controller/:action/:variable/*additional" end end safe, unsafe = %w(: @ & = + $ , ;), %w(^ ? # [ ]) - hex = unsafe.map { |char| '%' + char.unpack('H2').first.upcase } + hex = unsafe.map { |char| "%" + char.unpack("H2").first.upcase } @segment = "#{safe.join}#{unsafe.join}".freeze @escaped = "#{safe.join}#{hex.join}".freeze @@ -86,64 +86,64 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_symbols_with_dashes rs.draw do - get '/:artist/:song-omg', :to => lambda { |env| + get "/:artist/:song-omg", :to => lambda { |env| resp = ActiveSupport::JSON.encode ActionDispatch::Request.new(env).path_parameters [200, {}, [resp]] } end - hash = ActiveSupport::JSON.decode get(URI('http://example.org/journey/faithfully-omg')) + hash = ActiveSupport::JSON.decode get(URI("http://example.org/journey/faithfully-omg")) assert_equal({"artist"=>"journey", "song"=>"faithfully"}, hash) end def test_id_with_dash rs.draw do - get '/journey/:id', :to => lambda { |env| + get "/journey/:id", :to => lambda { |env| resp = ActiveSupport::JSON.encode ActionDispatch::Request.new(env).path_parameters [200, {}, [resp]] } end - hash = ActiveSupport::JSON.decode get(URI('http://example.org/journey/faithfully-omg')) + hash = ActiveSupport::JSON.decode get(URI("http://example.org/journey/faithfully-omg")) assert_equal({"id"=>"faithfully-omg"}, hash) end def test_dash_with_custom_regexp rs.draw do - get '/:artist/:song-omg', :constraints => { :song => /\d+/ }, :to => lambda { |env| + get "/:artist/:song-omg", :constraints => { :song => /\d+/ }, :to => lambda { |env| resp = ActiveSupport::JSON.encode ActionDispatch::Request.new(env).path_parameters [200, {}, [resp]] } end - hash = ActiveSupport::JSON.decode get(URI('http://example.org/journey/123-omg')) + hash = ActiveSupport::JSON.decode get(URI("http://example.org/journey/123-omg")) assert_equal({"artist"=>"journey", "song"=>"123"}, hash) - assert_equal 'Not Found', get(URI('http://example.org/journey/faithfully-omg')) + assert_equal "Not Found", get(URI("http://example.org/journey/faithfully-omg")) end def test_pre_dash rs.draw do - get '/:artist/omg-:song', :to => lambda { |env| + get "/:artist/omg-:song", :to => lambda { |env| resp = ActiveSupport::JSON.encode ActionDispatch::Request.new(env).path_parameters [200, {}, [resp]] } end - hash = ActiveSupport::JSON.decode get(URI('http://example.org/journey/omg-faithfully')) + hash = ActiveSupport::JSON.decode get(URI("http://example.org/journey/omg-faithfully")) assert_equal({"artist"=>"journey", "song"=>"faithfully"}, hash) end def test_pre_dash_with_custom_regexp rs.draw do - get '/:artist/omg-:song', :constraints => { :song => /\d+/ }, :to => lambda { |env| + get "/:artist/omg-:song", :constraints => { :song => /\d+/ }, :to => lambda { |env| resp = ActiveSupport::JSON.encode ActionDispatch::Request.new(env).path_parameters [200, {}, [resp]] } end - hash = ActiveSupport::JSON.decode get(URI('http://example.org/journey/omg-123')) + hash = ActiveSupport::JSON.decode get(URI("http://example.org/journey/omg-123")) assert_equal({"artist"=>"journey", "song"=>"123"}, hash) - assert_equal 'Not Found', get(URI('http://example.org/journey/omg-faithfully')) + assert_equal "Not Found", get(URI("http://example.org/journey/omg-faithfully")) end def test_star_paths_are_greedy @@ -154,8 +154,8 @@ class LegacyRouteSetTests < ActiveSupport::TestCase }, :format => false end - u = URI('http://example.org/foo/bar.html') - assert_equal u.path.sub(/^\//, ''), get(u) + u = URI("http://example.org/foo/bar.html") + assert_equal u.path.sub(/^\//, ""), get(u) end def test_star_paths_are_greedy_but_not_too_much @@ -167,7 +167,7 @@ class LegacyRouteSetTests < ActiveSupport::TestCase end expected = { "path" => "foo/bar", "format" => "html" } - u = URI('http://example.org/foo/bar.html') + u = URI("http://example.org/foo/bar.html") assert_equal expected, ActiveSupport::JSON.decode(get(u)) end @@ -179,8 +179,8 @@ class LegacyRouteSetTests < ActiveSupport::TestCase }, :format => false end - u = URI('http://example.org/ne_27.065938,-80.6092/sw_25.489856,-82.542794') - assert_equal u.path.sub(/^\//, ''), get(u) + u = URI("http://example.org/ne_27.065938,-80.6092/sw_25.489856,-82.542794") + assert_equal u.path.sub(/^\//, ""), get(u) end def test_optional_star_paths_are_greedy_but_not_too_much @@ -193,65 +193,65 @@ class LegacyRouteSetTests < ActiveSupport::TestCase expected = { "filters" => "ne_27.065938,-80.6092/sw_25.489856,-82", "format" => "542794" } - u = URI('http://example.org/ne_27.065938,-80.6092/sw_25.489856,-82.542794') + u = URI("http://example.org/ne_27.065938,-80.6092/sw_25.489856,-82.542794") assert_equal expected, ActiveSupport::JSON.decode(get(u)) end def test_regexp_precidence rs.draw do - get '/whois/:domain', :constraints => { + get "/whois/:domain", :constraints => { :domain => /\w+\.[\w\.]+/ }, :to => lambda { |env| [200, {}, %w{regexp}] } - get '/whois/:id', :to => lambda { |env| [200, {}, %w{id}] } + get "/whois/:id", :to => lambda { |env| [200, {}, %w{id}] } end - assert_equal 'regexp', get(URI('http://example.org/whois/example.org')) - assert_equal 'id', get(URI('http://example.org/whois/123')) + assert_equal "regexp", get(URI("http://example.org/whois/example.org")) + assert_equal "id", get(URI("http://example.org/whois/123")) end def test_class_and_lambda_constraints subdomain = Class.new { def matches? request - request.subdomain.present? and request.subdomain != 'clients' + request.subdomain.present? and request.subdomain != "clients" end } rs.draw do - get '/', :constraints => subdomain.new, + get "/", :constraints => subdomain.new, :to => lambda { |env| [200, {}, %w{default}] } - get '/', :constraints => { :subdomain => 'clients' }, + get "/", :constraints => { :subdomain => "clients" }, :to => lambda { |env| [200, {}, %w{clients}] } end - assert_equal 'default', get(URI('http://www.example.org/')) - assert_equal 'clients', get(URI('http://clients.example.org/')) + assert_equal "default", get(URI("http://www.example.org/")) + assert_equal "clients", get(URI("http://clients.example.org/")) end def test_lambda_constraints rs.draw do - get '/', :constraints => lambda { |req| + get "/", :constraints => lambda { |req| req.subdomain.present? and req.subdomain != "clients" }, :to => lambda { |env| [200, {}, %w{default}] } - get '/', :constraints => lambda { |req| + get "/", :constraints => lambda { |req| req.subdomain.present? && req.subdomain == "clients" }, :to => lambda { |env| [200, {}, %w{clients}] } end - assert_equal 'default', get(URI('http://www.example.org/')) - assert_equal 'clients', get(URI('http://clients.example.org/')) + assert_equal "default", get(URI("http://www.example.org/")) + assert_equal "clients", get(URI("http://clients.example.org/")) end def test_scoped_lambda scope_called = false rs.draw do - scope '/foo', :constraints => lambda { |req| scope_called = true } do - get '/', :to => lambda { |env| [200, {}, %w{default}] } + scope "/foo", :constraints => lambda { |req| scope_called = true } do + get "/", :to => lambda { |env| [200, {}, %w{default}] } end end - assert_equal 'default', get(URI('http://www.example.org/foo/')) + assert_equal "default", get(URI("http://www.example.org/foo/")) assert scope_called, "scope constraint should be called" end @@ -259,35 +259,35 @@ class LegacyRouteSetTests < ActiveSupport::TestCase inner_called = false rs.draw do - scope '/foo', :constraints => lambda { |req| flunk "should not be called" } do - get '/', :constraints => lambda { |req| inner_called = true }, + scope "/foo", :constraints => lambda { |req| flunk "should not be called" } do + get "/", :constraints => lambda { |req| inner_called = true }, :to => lambda { |env| [200, {}, %w{default}] } end end - assert_equal 'default', get(URI('http://www.example.org/foo/')) + assert_equal "default", get(URI("http://www.example.org/foo/")) assert inner_called, "inner constraint should be called" end def test_empty_string_match rs.draw do - get '/:username', :constraints => { :username => /[^\/]+/ }, - :to => lambda { |e| [200, {}, ['foo']] } + get "/:username", :constraints => { :username => /[^\/]+/ }, + :to => lambda { |e| [200, {}, ["foo"]] } end - assert_equal 'Not Found', get(URI('http://example.org/')) - assert_equal 'foo', get(URI('http://example.org/hello')) + assert_equal "Not Found", get(URI("http://example.org/")) + assert_equal "foo", get(URI("http://example.org/hello")) end def test_non_greedy_glob_regexp params = nil rs.draw do - get '/posts/:id(/*filters)', :constraints => { :filters => /.+?/ }, + get "/posts/:id(/*filters)", :constraints => { :filters => /.+?/ }, :to => lambda { |e| params = e["action_dispatch.request.path_parameters"] - [200, {}, ['foo']] + [200, {}, ["foo"]] } end - assert_equal 'foo', get(URI('http://example.org/posts/1/foo.js')) + assert_equal "foo", get(URI("http://example.org/posts/1/foo.js")) assert_equal({:id=>"1", :filters=>"foo", :format=>"js"}, params) end @@ -302,54 +302,54 @@ class LegacyRouteSetTests < ActiveSupport::TestCase end def test_default_setup - rs.draw { ActiveSupport::Deprecation.silence { get '/:controller(/:action(/:id))' } } - assert_equal({:controller => "content", :action => 'index'}, rs.recognize_path("/content")) - assert_equal({:controller => "content", :action => 'list'}, rs.recognize_path("/content/list")) - assert_equal({:controller => "content", :action => 'show', :id => '10'}, rs.recognize_path("/content/show/10")) + rs.draw { ActiveSupport::Deprecation.silence { get "/:controller(/:action(/:id))" } } + assert_equal({:controller => "content", :action => "index"}, rs.recognize_path("/content")) + assert_equal({:controller => "content", :action => "list"}, rs.recognize_path("/content/list")) + assert_equal({:controller => "content", :action => "show", :id => "10"}, rs.recognize_path("/content/show/10")) - assert_equal({:controller => "admin/user", :action => 'show', :id => '10'}, rs.recognize_path("/admin/user/show/10")) + assert_equal({:controller => "admin/user", :action => "show", :id => "10"}, rs.recognize_path("/admin/user/show/10")) - assert_equal '/admin/user/show/10', url_for(rs, { :controller => 'admin/user', :action => 'show', :id => 10 }) + assert_equal "/admin/user/show/10", url_for(rs, { :controller => "admin/user", :action => "show", :id => 10 }) - get URI('http://test.host/admin/user/list/10') + get URI("http://test.host/admin/user/list/10") - assert_equal({ :controller => 'admin/user', :action => 'list', :id => '10' }, + assert_equal({ :controller => "admin/user", :action => "list", :id => "10" }, controller.request.path_parameters) - assert_equal '/admin/user/show', controller.url_for({ :action => 'show', :only_path => true }) - assert_equal '/admin/user/list/10', controller.url_for({:only_path => true}) + assert_equal "/admin/user/show", controller.url_for({ :action => "show", :only_path => true }) + assert_equal "/admin/user/list/10", controller.url_for({:only_path => true}) - assert_equal '/admin/stuff', controller.url_for({ :controller => 'stuff', :only_path => true }) - assert_equal '/stuff', controller.url_for({ :controller => '/stuff', :only_path => true }) + assert_equal "/admin/stuff", controller.url_for({ :controller => "stuff", :only_path => true }) + assert_equal "/stuff", controller.url_for({ :controller => "/stuff", :only_path => true }) end def test_route_with_colon_first rs.draw do ActiveSupport::Deprecation.silence do - get '/:controller/:action/:id', action: 'index', id: nil + get "/:controller/:action/:id", action: "index", id: nil end - get ':url', controller: 'content', action: 'translate' + get ":url", controller: "content", action: "translate" end - assert_equal({controller: 'content', action: 'translate', url: 'example'}, rs.recognize_path('/example')) + assert_equal({controller: "content", action: "translate", url: "example"}, rs.recognize_path("/example")) end def test_route_with_regexp_for_action - rs.draw { ActiveSupport::Deprecation.silence { get '/:controller/:action', action: /auth[-|_].+/ } } + rs.draw { ActiveSupport::Deprecation.silence { get "/:controller/:action", action: /auth[-|_].+/ } } - assert_equal({ action: 'auth_google', controller: 'content' }, rs.recognize_path('/content/auth_google')) - assert_equal({ action: 'auth-facebook', controller: 'content' }, rs.recognize_path('/content/auth-facebook')) + assert_equal({ action: "auth_google", controller: "content" }, rs.recognize_path("/content/auth_google")) + assert_equal({ action: "auth-facebook", controller: "content" }, rs.recognize_path("/content/auth-facebook")) - assert_equal '/content/auth_google', url_for(rs, { controller: "content", action: "auth_google" }) - assert_equal '/content/auth-facebook', url_for(rs, { controller: "content", action: "auth-facebook" }) + assert_equal "/content/auth_google", url_for(rs, { controller: "content", action: "auth_google" }) + assert_equal "/content/auth-facebook", url_for(rs, { controller: "content", action: "auth-facebook" }) end def test_route_with_regexp_for_controller rs.draw do ActiveSupport::Deprecation.silence do - get ':controller/:admintoken(/:action(/:id))', :controller => /admin\/.+/ - get '/:controller(/:action(/:id))' + get ":controller/:admintoken(/:action(/:id))", :controller => /admin\/.+/ + get "/:controller(/:action(/:id))" end end @@ -358,14 +358,14 @@ class LegacyRouteSetTests < ActiveSupport::TestCase assert_equal({:controller => "content", :action => "foo"}, rs.recognize_path("/content/foo")) - assert_equal '/admin/user/foo', url_for(rs, { :controller => "admin/user", :admintoken => "foo", :action => "index" }) - assert_equal '/content/foo', url_for(rs, { :controller => "content", :action => "foo" }) + assert_equal "/admin/user/foo", url_for(rs, { :controller => "admin/user", :admintoken => "foo", :action => "index" }) + assert_equal "/content/foo", url_for(rs, { :controller => "content", :action => "foo" }) end def test_route_with_regexp_and_captures_for_controller rs.draw do ActiveSupport::Deprecation.silence do - get '/:controller(/:action(/:id))', :controller => /admin\/(accounts|users)/ + get "/:controller(/:action(/:id))", :controller => /admin\/(accounts|users)/ end end assert_equal({:controller => "admin/accounts", :action => "index"}, rs.recognize_path("/admin/accounts")) @@ -376,7 +376,7 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_route_with_regexp_and_dot rs.draw do ActiveSupport::Deprecation.silence do - get ':controller/:action/:file', + get ":controller/:action/:file", :controller => /admin|user/, :action => /upload|download/, :defaults => {:file => nil}, @@ -384,14 +384,14 @@ class LegacyRouteSetTests < ActiveSupport::TestCase end end # Without a file extension - assert_equal '/user/download/file', + assert_equal "/user/download/file", url_for(rs, { :controller => "user", :action => "download", :file => "file" }) assert_equal({:controller => "user", :action => "download", :file => "file"}, rs.recognize_path("/user/download/file")) # Now, let's try a file with an extension, really a dot (.) - assert_equal '/user/download/file.jpg', + assert_equal "/user/download/file.jpg", url_for(rs, { :controller => "user", :action => "download", :file => "file.jpg" }) assert_equal({:controller => "user", :action => "download", :file => "file.jpg"}, @@ -400,23 +400,23 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_basic_named_route rs.draw do - root :to => 'content#list', :as => 'home' + root :to => "content#list", :as => "home" end assert_equal("http://test.host/", setup_for_named_route.send(:home_url)) end def test_named_route_with_option rs.draw do - get 'page/:title' => 'content#show_page', :as => 'page' + get "page/:title" => "content#show_page", :as => "page" end assert_equal("http://test.host/page/new%20stuff", - setup_for_named_route.send(:page_url, :title => 'new stuff')) + setup_for_named_route.send(:page_url, :title => "new stuff")) end def test_named_route_with_default rs.draw do - get 'page/:title' => 'content#show_page', :title => 'AboutPage', :as => 'page' + get "page/:title" => "content#show_page", :title => "AboutPage", :as => "page" end assert_equal("http://test.host/page/AboutRails", @@ -426,7 +426,7 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_named_route_with_path_prefix rs.draw do scope "my" do - get 'page' => 'content#show_page', :as => 'page' + get "page" => "content#show_page", :as => "page" end end @@ -437,7 +437,7 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_named_route_with_blank_path_prefix rs.draw do scope "" do - get 'page' => 'content#show_page', :as => 'page' + get "page" => "content#show_page", :as => "page" end end @@ -447,7 +447,7 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_named_route_with_nested_controller rs.draw do - get 'admin/user' => 'admin/user#index', :as => "users" + get "admin/user" => "admin/user#index", :as => "users" end assert_equal("http://test.host/admin/user", @@ -456,7 +456,7 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_optimised_named_route_with_host rs.draw do - get 'page' => 'content#show_page', :as => 'pages', :host => 'foo.com' + get "page" => "content#show_page", :as => "pages", :host => "foo.com" end routes = setup_for_named_route assert_equal "http://foo.com/page", routes.pages_url @@ -469,7 +469,7 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_named_route_without_hash rs.draw do ActiveSupport::Deprecation.silence do - get ':controller/:action/:id', :as => 'normal' + get ":controller/:action/:id", :as => "normal" end end end @@ -520,62 +520,62 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_named_route_with_regexps rs.draw do - get 'page/:year/:month/:day/:title' => 'page#show', :as => 'article', + get "page/:year/:month/:day/:title" => "page#show", :as => "article", :year => /\d+/, :month => /\d+/, :day => /\d+/ ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end routes = setup_for_named_route assert_equal "http://test.host/page/2005/6/10/hi", - routes.send(:article_url, :title => 'hi', :day => 10, :year => 2005, :month => 6) + routes.send(:article_url, :title => "hi", :day => 10, :year => 2005, :month => 6) end def test_changing_controller - rs.draw { ActiveSupport::Deprecation.silence { get ':controller/:action/:id' } } + rs.draw { ActiveSupport::Deprecation.silence { get ":controller/:action/:id" } } - get URI('http://test.host/admin/user/index/10') + get URI("http://test.host/admin/user/index/10") - assert_equal '/admin/stuff/show/10', - controller.url_for({:controller => 'stuff', :action => 'show', :id => 10, :only_path => true}) + assert_equal "/admin/stuff/show/10", + controller.url_for({:controller => "stuff", :action => "show", :id => 10, :only_path => true}) end def test_paths_escaped rs.draw do - get 'file/*path' => 'content#show_file', :as => 'path' + get "file/*path" => "content#show_file", :as => "path" ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end # No + to space in URI escaping, only for query params. results = rs.recognize_path "/file/hello+world/how+are+you%3F" assert results, "Recognition should have succeeded" - assert_equal 'hello+world/how+are+you?', results[:path] + assert_equal "hello+world/how+are+you?", results[:path] # Use %20 for space instead. results = rs.recognize_path "/file/hello%20world/how%20are%20you%3F" assert results, "Recognition should have succeeded" - assert_equal 'hello world/how are you?', results[:path] + assert_equal "hello world/how are you?", results[:path] end def test_paths_slashes_unescaped_with_ordered_parameters rs.draw do - get '/file/*path' => 'content#index', :as => 'path' + get "/file/*path" => "content#index", :as => "path" end # No / to %2F in URI, only for query params. - assert_equal("/file/hello/world", setup_for_named_route.send(:path_path, ['hello', 'world'])) + assert_equal("/file/hello/world", setup_for_named_route.send(:path_path, ["hello", "world"])) end def test_non_controllers_cannot_be_matched rs.draw do ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end assert_raise(ActionController::RoutingError) { rs.recognize_path("/not_a/show/10") } @@ -583,152 +583,152 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_should_list_options_diff_when_routing_constraints_dont_match rs.draw do - get 'post/:id' => 'post#show', :constraints => { :id => /\d+/ }, :as => 'post' + get "post/:id" => "post#show", :constraints => { :id => /\d+/ }, :as => "post" end assert_raise(ActionController::UrlGenerationError) do - url_for(rs, { :controller => 'post', :action => 'show', :bad_param => "foo", :use_route => "post" }) + url_for(rs, { :controller => "post", :action => "show", :bad_param => "foo", :use_route => "post" }) end end def test_dynamic_path_allowed rs.draw do - get '*path' => 'content#show_file' + get "*path" => "content#show_file" end - assert_equal '/pages/boo', - url_for(rs, { :controller => 'content', :action => 'show_file', :path => %w(pages boo) }) + assert_equal "/pages/boo", + url_for(rs, { :controller => "content", :action => "show_file", :path => %w(pages boo) }) end def test_dynamic_recall_paths_allowed rs.draw do - get '*path' => 'content#show_file' + get "*path" => "content#show_file" end - get URI('http://test.host/pages/boo') + get URI("http://test.host/pages/boo") assert_equal({:controller=>"content", :action=>"show_file", :path=>"pages/boo"}, controller.request.path_parameters) - assert_equal '/pages/boo', + assert_equal "/pages/boo", controller.url_for(:only_path => true) end def test_backwards rs.draw do ActiveSupport::Deprecation.silence do - get 'page/:id(/:action)' => 'pages#show' - get ':controller(/:action(/:id))' + get "page/:id(/:action)" => "pages#show" + get ":controller(/:action(/:id))" end end - get URI('http://test.host/pages/show') - assert_equal '/page/20', controller.url_for({ :id => 20, :only_path => true }) - assert_equal '/page/20', url_for(rs, { :controller => 'pages', :id => 20, :action => 'show' }) - assert_equal '/pages/boo', url_for(rs, { :controller => 'pages', :action => 'boo' }) + get URI("http://test.host/pages/show") + assert_equal "/page/20", controller.url_for({ :id => 20, :only_path => true }) + assert_equal "/page/20", url_for(rs, { :controller => "pages", :id => 20, :action => "show" }) + assert_equal "/pages/boo", url_for(rs, { :controller => "pages", :action => "boo" }) end def test_route_with_integer_default rs.draw do - get 'page(/:id)' => 'content#show_page', :id => 1 + get "page(/:id)" => "content#show_page", :id => 1 ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end - assert_equal '/page', url_for(rs, { :controller => 'content', :action => 'show_page' }) - assert_equal '/page', url_for(rs, { :controller => 'content', :action => 'show_page', :id => 1 }) - assert_equal '/page', url_for(rs, { :controller => 'content', :action => 'show_page', :id => '1' }) - assert_equal '/page/10', url_for(rs, { :controller => 'content', :action => 'show_page', :id => 10 }) + assert_equal "/page", url_for(rs, { :controller => "content", :action => "show_page" }) + assert_equal "/page", url_for(rs, { :controller => "content", :action => "show_page", :id => 1 }) + assert_equal "/page", url_for(rs, { :controller => "content", :action => "show_page", :id => "1" }) + assert_equal "/page/10", url_for(rs, { :controller => "content", :action => "show_page", :id => 10 }) - assert_equal({:controller => "content", :action => 'show_page', :id => 1 }, rs.recognize_path("/page")) - assert_equal({:controller => "content", :action => 'show_page', :id => '1'}, rs.recognize_path("/page/1")) - assert_equal({:controller => "content", :action => 'show_page', :id => '10'}, rs.recognize_path("/page/10")) + assert_equal({:controller => "content", :action => "show_page", :id => 1 }, rs.recognize_path("/page")) + assert_equal({:controller => "content", :action => "show_page", :id => "1"}, rs.recognize_path("/page/1")) + assert_equal({:controller => "content", :action => "show_page", :id => "10"}, rs.recognize_path("/page/10")) end # For newer revision def test_route_with_text_default rs.draw do - get 'page/:id' => 'content#show_page', :id => 1 + get "page/:id" => "content#show_page", :id => 1 ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end - assert_equal '/page/foo', url_for(rs, { :controller => 'content', :action => 'show_page', :id => 'foo' }) - assert_equal({ :controller => "content", :action => 'show_page', :id => 'foo' }, rs.recognize_path("/page/foo")) + assert_equal "/page/foo", url_for(rs, { :controller => "content", :action => "show_page", :id => "foo" }) + assert_equal({ :controller => "content", :action => "show_page", :id => "foo" }, rs.recognize_path("/page/foo")) token = "\321\202\320\265\320\272\321\201\321\202" # 'text' in Russian token.force_encoding(Encoding::BINARY) escaped_token = CGI::escape(token) - assert_equal '/page/' + escaped_token, url_for(rs, { :controller => 'content', :action => 'show_page', :id => token }) - assert_equal({ :controller => "content", :action => 'show_page', :id => token }, rs.recognize_path("/page/#{escaped_token}")) + assert_equal "/page/" + escaped_token, url_for(rs, { :controller => "content", :action => "show_page", :id => token }) + assert_equal({ :controller => "content", :action => "show_page", :id => token }, rs.recognize_path("/page/#{escaped_token}")) end def test_action_expiry - rs.draw { ActiveSupport::Deprecation.silence { get ':controller(/:action(/:id))' } } - get URI('http://test.host/content/show') - assert_equal '/content', controller.url_for(:controller => 'content', :only_path => true) + rs.draw { ActiveSupport::Deprecation.silence { get ":controller(/:action(/:id))" } } + get URI("http://test.host/content/show") + assert_equal "/content", controller.url_for(:controller => "content", :only_path => true) end def test_requirement_should_prevent_optional_id rs.draw do - get 'post/:id' => 'post#show', :constraints => {:id => /\d+/}, :as => 'post' + get "post/:id" => "post#show", :constraints => {:id => /\d+/}, :as => "post" end - assert_equal '/post/10', url_for(rs, { :controller => 'post', :action => 'show', :id => 10 }) + assert_equal "/post/10", url_for(rs, { :controller => "post", :action => "show", :id => 10 }) assert_raise(ActionController::UrlGenerationError) do - url_for(rs, { :controller => 'post', :action => 'show' }) + url_for(rs, { :controller => "post", :action => "show" }) end end def test_both_requirement_and_optional rs.draw do - get('test(/:year)' => 'post#show', :as => 'blog', + get("test(/:year)" => "post#show", :as => "blog", :defaults => { :year => nil }, :constraints => { :year => /\d{4}/ } ) ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end - assert_equal '/test', url_for(rs, { :controller => 'post', :action => 'show' }) - assert_equal '/test', url_for(rs, { :controller => 'post', :action => 'show', :year => nil }) + assert_equal "/test", url_for(rs, { :controller => "post", :action => "show" }) + assert_equal "/test", url_for(rs, { :controller => "post", :action => "show", :year => nil }) assert_equal("http://test.host/test", setup_for_named_route.send(:blog_url)) end def test_set_to_nil_forgets rs.draw do - get 'pages(/:year(/:month(/:day)))' => 'content#list_pages', :month => nil, :day => nil + get "pages(/:year(/:month(/:day)))" => "content#list_pages", :month => nil, :day => nil ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end - assert_equal '/pages/2005', - url_for(rs, { :controller => 'content', :action => 'list_pages', :year => 2005 }) - assert_equal '/pages/2005/6', - url_for(rs, { :controller => 'content', :action => 'list_pages', :year => 2005, :month => 6 }) - assert_equal '/pages/2005/6/12', - url_for(rs, { :controller => 'content', :action => 'list_pages', :year => 2005, :month => 6, :day => 12 }) + assert_equal "/pages/2005", + url_for(rs, { :controller => "content", :action => "list_pages", :year => 2005 }) + assert_equal "/pages/2005/6", + url_for(rs, { :controller => "content", :action => "list_pages", :year => 2005, :month => 6 }) + assert_equal "/pages/2005/6/12", + url_for(rs, { :controller => "content", :action => "list_pages", :year => 2005, :month => 6, :day => 12 }) - get URI('http://test.host/pages/2005/6/12') - assert_equal({ :controller => 'content', :action => 'list_pages', :year => '2005', :month => '6', :day => '12' }, + get URI("http://test.host/pages/2005/6/12") + assert_equal({ :controller => "content", :action => "list_pages", :year => "2005", :month => "6", :day => "12" }, controller.request.path_parameters) - assert_equal '/pages/2005/6/4', + assert_equal "/pages/2005/6/4", controller.url_for({ :day => 4, :only_path => true }) - assert_equal '/pages/2005/6', + assert_equal "/pages/2005/6", controller.url_for({ :day => nil, :only_path => true }) - assert_equal '/pages/2005', + assert_equal "/pages/2005", controller.url_for({ :day => nil, :month => nil, :only_path => true }) end @@ -737,32 +737,32 @@ class LegacyRouteSetTests < ActiveSupport::TestCase root :to => "content#index" end - assert_equal '/', url_for(rs, { :controller => 'content', :action => 'index' }) - assert_equal '/', url_for(rs, { :controller => 'content' }) + assert_equal "/", url_for(rs, { :controller => "content", :action => "index" }) + assert_equal "/", url_for(rs, { :controller => "content" }) end def test_named_root_url_generation_with_controller_and_action rs.draw do - root :to => "content#index", :as => 'home' + root :to => "content#index", :as => "home" end - assert_equal '/', url_for(rs, { :controller => 'content', :action => 'index' }) - assert_equal '/', url_for(rs, { :controller => 'content' }) + assert_equal "/", url_for(rs, { :controller => "content", :action => "index" }) + assert_equal "/", url_for(rs, { :controller => "content" }) assert_equal("http://test.host/", setup_for_named_route.send(:home_url)) end def test_named_route_method rs.draw do - get 'categories' => 'content#categories', :as => 'categories' + get "categories" => "content#categories", :as => "categories" ActiveSupport::Deprecation.silence do - get ':controller(/:action(/:id))' + get ":controller(/:action(/:id))" end end - assert_equal '/categories', url_for(rs, { :controller => 'content', :action => 'categories' }) - assert_equal '/content/hi', url_for(rs, { :controller => 'content', :action => 'hi' }) + assert_equal "/categories", url_for(rs, { :controller => "content", :action => "categories" }) + assert_equal "/content/hi", url_for(rs, { :controller => "content", :action => "hi" }) end def test_named_routes_array @@ -772,17 +772,17 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_nil_defaults rs.draw do - get 'journal' => 'content#list_journal', + get "journal" => "content#list_journal", :date => nil, :user_id => nil ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end - assert_equal '/journal', url_for(rs, { - :controller => 'content', - :action => 'list_journal', + assert_equal "/journal", url_for(rs, { + :controller => "content", + :action => "list_journal", :date => nil, :user_id => nil }) @@ -790,7 +790,7 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def setup_request_method_routes_for(method) rs.draw do - match '/match' => "books##{method}", :via => method.to_sym + match "/match" => "books##{method}", :via => method.to_sym end end @@ -804,24 +804,24 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_recognize_array_of_methods rs.draw do - match '/match' => 'books#get_or_post', :via => [:get, :post] - put '/match' => 'books#not_get_or_post' + match "/match" => "books#get_or_post", :via => [:get, :post] + put "/match" => "books#not_get_or_post" end params = rs.recognize_path("/match", :method => :post) - assert_equal 'get_or_post', params[:action] + assert_equal "get_or_post", params[:action] params = rs.recognize_path("/match", :method => :put) - assert_equal 'not_get_or_post', params[:action] + assert_equal "not_get_or_post", params[:action] end def test_subpath_recognized rs.draw do ActiveSupport::Deprecation.silence do - get '/books/:id/edit' => 'subpath_books#edit' - get '/items/:id/:action' => 'subpath_books' - get '/posts/new/:action' => 'subpath_books' - get '/posts/:id' => 'subpath_books#show' + get "/books/:id/edit" => "subpath_books#edit" + get "/items/:id/:action" => "subpath_books" + get "/posts/new/:action" => "subpath_books" + get "/posts/:id" => "subpath_books#show" end end @@ -845,9 +845,9 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_subpath_generated rs.draw do ActiveSupport::Deprecation.silence do - get '/books/:id/edit' => 'subpath_books#edit' - get '/items/:id/:action' => 'subpath_books' - get '/posts/new/:action' => 'subpath_books' + get "/books/:id/edit" => "subpath_books#edit" + get "/items/:id/:action" => "subpath_books" + get "/posts/new/:action" => "subpath_books" end end @@ -858,7 +858,7 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_failed_constraints_raises_exception_with_violated_constraints rs.draw do - get 'foos/:id' => 'foos#show', :as => 'foo_with_requirement', :constraints => { :id => /\d+/ } + get "foos/:id" => "foos#show", :as => "foo_with_requirement", :constraints => { :id => /\d+/ } end assert_raise(ActionController::UrlGenerationError) do @@ -869,13 +869,13 @@ class LegacyRouteSetTests < ActiveSupport::TestCase def test_routes_changed_correctly_after_clear rs = ::ActionDispatch::Routing::RouteSet.new rs.draw do - get 'ca' => 'ca#aa' - get 'cb' => 'cb#ab' - get 'cc' => 'cc#ac' + get "ca" => "ca#aa" + get "cb" => "cb#ab" + get "cc" => "cc#ac" ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' - get ':controller/:action/:id.:format' + get ":controller/:action/:id" + get ":controller/:action/:id.:format" end end @@ -885,12 +885,12 @@ class LegacyRouteSetTests < ActiveSupport::TestCase assert_equal %w(cc ac), [hash[:controller], hash[:action]] rs.draw do - get 'cb' => 'cb#ab' - get 'cc' => 'cc#ac' + get "cb" => "cb#ab" + get "cc" => "cc#ac" ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' - get ':controller/:action/:id.:format' + get ":controller/:action/:id" + get ":controller/:action/:id.:format" end end @@ -924,7 +924,7 @@ class RouteSetTest < ActiveSupport::TestCase set.draw do ActiveSupport::Deprecation.silence do - get '/:controller(/:action(/:id))' + get "/:controller(/:action(/:id))" end end set @@ -932,14 +932,14 @@ class RouteSetTest < ActiveSupport::TestCase end def test_generate_extras - set.draw { ActiveSupport::Deprecation.silence { get ':controller/(:action(/:id))' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller/(:action(/:id))" } } path, extras = set.generate_extras(:controller => "foo", :action => "bar", :id => 15, :this => "hello", :that => "world") assert_equal "/foo/bar/15", path assert_equal %w(that this), extras.map(&:to_s).sort end def test_extra_keys - set.draw { ActiveSupport::Deprecation.silence { get ':controller/:action/:id' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller/:action/:id" } } extras = set.extra_keys(:controller => "foo", :action => "bar", :id => 15, :this => "hello", :that => "world") assert_equal %w(that this), extras.map(&:to_s).sort end @@ -947,8 +947,8 @@ class RouteSetTest < ActiveSupport::TestCase def test_generate_extras_not_first set.draw do ActiveSupport::Deprecation.silence do - get ':controller/:action/:id.:format' - get ':controller/:action/:id' + get ":controller/:action/:id.:format" + get ":controller/:action/:id" end end path, extras = set.generate_extras(:controller => "foo", :action => "bar", :id => 15, :this => "hello", :that => "world") @@ -959,8 +959,8 @@ class RouteSetTest < ActiveSupport::TestCase def test_generate_not_first set.draw do ActiveSupport::Deprecation.silence do - get ':controller/:action/:id.:format' - get ':controller/:action/:id' + get ":controller/:action/:id.:format" + get ":controller/:action/:id" end end assert_equal "/foo/bar/15?this=hello", @@ -970,8 +970,8 @@ class RouteSetTest < ActiveSupport::TestCase def test_extra_keys_not_first set.draw do ActiveSupport::Deprecation.silence do - get ':controller/:action/:id.:format' - get ':controller/:action/:id' + get ":controller/:action/:id.:format" + get ":controller/:action/:id" end end extras = set.extra_keys(:controller => "foo", :action => "bar", :id => 15, :this => "hello", :that => "world") @@ -981,7 +981,7 @@ class RouteSetTest < ActiveSupport::TestCase def test_draw assert_equal 0, set.routes.size set.draw do - get '/hello/world' => 'a#b' + get "/hello/world" => "a#b" end assert_equal 1, set.routes.size end @@ -989,16 +989,16 @@ class RouteSetTest < ActiveSupport::TestCase def test_draw_symbol_controller_name assert_equal 0, set.routes.size set.draw do - get '/users/index' => 'users#index' + get "/users/index" => "users#index" end - set.recognize_path('/users/index', :method => :get) + set.recognize_path("/users/index", :method => :get) assert_equal 1, set.routes.size end def test_named_draw assert_equal 0, set.routes.size set.draw do - get '/hello/world' => 'a#b', :as => 'hello' + get "/hello/world" => "a#b", :as => "hello" end assert_equal 1, set.routes.size assert_equal set.routes.first, set.named_routes[:hello] @@ -1007,21 +1007,21 @@ class RouteSetTest < ActiveSupport::TestCase def test_duplicate_named_route_raises_rather_than_pick_precedence assert_raise ArgumentError do set.draw do - get '/hello/world' => 'a#b', :as => 'hello' - get '/hello' => 'a#b', :as => 'hello' + get "/hello/world" => "a#b", :as => "hello" + get "/hello" => "a#b", :as => "hello" end end end def setup_named_route_test set.draw do - get '/people(/:id)' => 'people#show', :as => 'show' - get '/people' => 'people#index', :as => 'index' - get '/people/go/:foo/:bar/joe(/:id)' => 'people#multi', :as => 'multi' - get '/admin/users' => 'admin/users#index', :as => "users" + get "/people(/:id)" => "people#show", :as => "show" + get "/people" => "people#index", :as => "index" + get "/people/go/:foo/:bar/joe(/:id)" => "people#multi", :as => "multi" + get "/admin/users" => "admin/users#index", :as => "users" end - get URI('http://test.host/people') + get URI("http://test.host/people") controller end @@ -1035,29 +1035,29 @@ class RouteSetTest < ActiveSupport::TestCase assert_equal "/people", controller.send(:index_path) assert_equal "http://test.host/admin/users", controller.send(:users_url) - assert_equal '/admin/users', controller.send(:users_path) + assert_equal "/admin/users", controller.send(:users_path) end def test_named_route_url_method_with_anchor controller = setup_named_route_test - assert_equal "http://test.host/people/5#location", controller.send(:show_url, :id => 5, :anchor => 'location') - assert_equal "/people/5#location", controller.send(:show_path, :id => 5, :anchor => 'location') + assert_equal "http://test.host/people/5#location", controller.send(:show_url, :id => 5, :anchor => "location") + assert_equal "/people/5#location", controller.send(:show_path, :id => 5, :anchor => "location") - assert_equal "http://test.host/people#location", controller.send(:index_url, :anchor => 'location') - assert_equal "/people#location", controller.send(:index_path, :anchor => 'location') + assert_equal "http://test.host/people#location", controller.send(:index_url, :anchor => "location") + assert_equal "/people#location", controller.send(:index_path, :anchor => "location") - assert_equal "http://test.host/admin/users#location", controller.send(:users_url, :anchor => 'location') - assert_equal '/admin/users#location', controller.send(:users_path, :anchor => 'location') + assert_equal "http://test.host/admin/users#location", controller.send(:users_url, :anchor => "location") + assert_equal "/admin/users#location", controller.send(:users_path, :anchor => "location") assert_equal "http://test.host/people/go/7/hello/joe/5#location", - controller.send(:multi_url, 7, "hello", 5, :anchor => 'location') + controller.send(:multi_url, 7, "hello", 5, :anchor => "location") assert_equal "http://test.host/people/go/7/hello/joe/5?baz=bar#location", - controller.send(:multi_url, 7, "hello", 5, :baz => "bar", :anchor => 'location') + controller.send(:multi_url, 7, "hello", 5, :baz => "bar", :anchor => "location") assert_equal "http://test.host/people?baz=bar#location", - controller.send(:index_url, :baz => "bar", :anchor => 'location') + controller.send(:index_url, :baz => "bar", :anchor => "location") assert_equal "http://test.host/people", controller.send(:index_url, anchor: nil) assert_equal "http://test.host/people", controller.send(:index_url, anchor: false) @@ -1105,40 +1105,40 @@ class RouteSetTest < ActiveSupport::TestCase def test_draw_default_route set.draw do ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end assert_equal 1, set.routes.size - assert_equal '/users/show/10', url_for(set, { :controller => 'users', :action => 'show', :id => 10 }) - assert_equal '/users/index/10', url_for(set, { :controller => 'users', :id => 10 }) + assert_equal "/users/show/10", url_for(set, { :controller => "users", :action => "show", :id => 10 }) + assert_equal "/users/index/10", url_for(set, { :controller => "users", :id => 10 }) - assert_equal({:controller => 'users', :action => 'index', :id => '10'}, set.recognize_path('/users/index/10')) - assert_equal({:controller => 'users', :action => 'index', :id => '10'}, set.recognize_path('/users/index/10/')) + assert_equal({:controller => "users", :action => "index", :id => "10"}, set.recognize_path("/users/index/10")) + assert_equal({:controller => "users", :action => "index", :id => "10"}, set.recognize_path("/users/index/10/")) end def test_route_with_parameter_shell set.draw do - get 'page/:id' => 'pages#show', :id => /\d+/ + get "page/:id" => "pages#show", :id => /\d+/ ActiveSupport::Deprecation.silence do - get '/:controller(/:action(/:id))' + get "/:controller(/:action(/:id))" end end - assert_equal({:controller => 'pages', :action => 'index'}, request_path_params('/pages')) - assert_equal({:controller => 'pages', :action => 'index'}, request_path_params('/pages/index')) - assert_equal({:controller => 'pages', :action => 'list'}, request_path_params('/pages/list')) + assert_equal({:controller => "pages", :action => "index"}, request_path_params("/pages")) + assert_equal({:controller => "pages", :action => "index"}, request_path_params("/pages/index")) + assert_equal({:controller => "pages", :action => "list"}, request_path_params("/pages/list")) - assert_equal({:controller => 'pages', :action => 'show', :id => '10'}, request_path_params('/pages/show/10')) - assert_equal({:controller => 'pages', :action => 'show', :id => '10'}, request_path_params('/page/10')) + assert_equal({:controller => "pages", :action => "show", :id => "10"}, request_path_params("/pages/show/10")) + assert_equal({:controller => "pages", :action => "show", :id => "10"}, request_path_params("/page/10")) end def test_route_constraints_on_request_object_with_anchors_are_valid assert_nothing_raised do set.draw do - get 'page/:id' => 'pages#show', :constraints => { :host => /^foo$/ } + get "page/:id" => "pages#show", :constraints => { :host => /^foo$/ } end end end @@ -1146,27 +1146,27 @@ class RouteSetTest < ActiveSupport::TestCase def test_route_constraints_with_anchor_chars_are_invalid assert_raise ArgumentError do set.draw do - get 'page/:id' => 'pages#show', :id => /^\d+/ + get "page/:id" => "pages#show", :id => /^\d+/ end end assert_raise ArgumentError do set.draw do - get 'page/:id' => 'pages#show', :id => /\A\d+/ + get "page/:id" => "pages#show", :id => /\A\d+/ end end assert_raise ArgumentError do set.draw do - get 'page/:id' => 'pages#show', :id => /\d+$/ + get "page/:id" => "pages#show", :id => /\d+$/ end end assert_raise ArgumentError do set.draw do - get 'page/:id' => 'pages#show', :id => /\d+\Z/ + get "page/:id" => "pages#show", :id => /\d+\Z/ end end assert_raise ArgumentError do set.draw do - get 'page/:id' => 'pages#show', :id => /\d+\z/ + get "page/:id" => "pages#show", :id => /\d+\z/ end end end @@ -1174,7 +1174,7 @@ class RouteSetTest < ActiveSupport::TestCase def test_route_constraints_with_options_method_condition_is_valid assert_nothing_raised do set.draw do - match 'valid/route' => 'pages#show', :via => :options + match "valid/route" => "pages#show", :via => :options end end end @@ -1184,16 +1184,16 @@ class RouteSetTest < ActiveSupport::TestCase get "/people" => "missing#index" end - assert_raises(ActionController::RoutingError) { request_path_params '/people' } + assert_raises(ActionController::RoutingError) { request_path_params "/people" } end def test_recognize_with_encoded_id_and_regex set.draw do - get 'page/:id' => 'pages#show', :id => /[a-zA-Z0-9\+]+/ + get "page/:id" => "pages#show", :id => /[a-zA-Z0-9\+]+/ end - assert_equal({:controller => 'pages', :action => 'show', :id => '10'}, request_path_params('/page/10')) - assert_equal({:controller => 'pages', :action => 'show', :id => 'hello+world'}, request_path_params('/page/hello+world')) + assert_equal({:controller => "pages", :action => "show", :id => "10"}, request_path_params("/page/10")) + assert_equal({:controller => "pages", :action => "show", :id => "hello+world"}, request_path_params("/page/hello+world")) end def test_recognize_with_http_methods @@ -1245,7 +1245,7 @@ class RouteSetTest < ActiveSupport::TestCase def test_recognize_with_alias_in_conditions set.draw do - match "/people" => 'people#index', :as => 'people', :via => :get + match "/people" => "people#index", :as => "people", :via => :get root :to => "people#index" end @@ -1260,7 +1260,7 @@ class RouteSetTest < ActiveSupport::TestCase def test_typo_recognition set.draw do - get 'articles/:year/:month/:day/:title' => 'articles#permalink', + get "articles/:year/:month/:day/:title" => "articles#permalink", :year => /\d{4}/, :day => /\d{1,2}/, :month => /\d{1,2}/ end @@ -1275,7 +1275,7 @@ class RouteSetTest < ActiveSupport::TestCase def test_routing_traversal_does_not_load_extra_classes assert !Object.const_defined?("Profiler__"), "Profiler should not be loaded" set.draw do - get '/profile' => 'profile#index' + get "/profile" => "profile#index" end request_path_params("/profile") rescue nil @@ -1318,7 +1318,7 @@ class RouteSetTest < ActiveSupport::TestCase end def test_root_map - set.draw { root :to => 'people#index' } + set.draw { root :to => "people#index" } params = request_path_params("", :method => :get) assert_equal("people", params[:controller]) @@ -1328,8 +1328,8 @@ class RouteSetTest < ActiveSupport::TestCase def test_namespace set.draw do - namespace 'api' do - get 'inventory' => 'products#inventory' + namespace "api" do + get "inventory" => "products#inventory" end end @@ -1341,8 +1341,8 @@ class RouteSetTest < ActiveSupport::TestCase def test_namespaced_root_map set.draw do - namespace 'api' do - root :to => 'products#index' + namespace "api" do + root :to => "products#index" end end @@ -1354,7 +1354,7 @@ class RouteSetTest < ActiveSupport::TestCase def test_namespace_with_path_prefix set.draw do scope :module => "api", :path => "prefix" do - get 'inventory' => 'products#inventory' + get "inventory" => "products#inventory" end end @@ -1366,7 +1366,7 @@ class RouteSetTest < ActiveSupport::TestCase def test_namespace_with_blank_path_prefix set.draw do scope :module => "api", :path => "" do - get 'inventory' => 'products#inventory' + get "inventory" => "products#inventory" end end @@ -1380,35 +1380,35 @@ class RouteSetTest < ActiveSupport::TestCase set.draw do ActiveSupport::Deprecation.silence do - get ':controller/:id/:action' + get ":controller/:id/:action" end end - get URI('http://test.host/people/7/show') + get URI("http://test.host/people/7/show") - assert_equal "/people/7/destroy", controller.url_for(:action => 'destroy', :only_path => true) + assert_equal "/people/7/destroy", controller.url_for(:action => "destroy", :only_path => true) end def test_use_static_path_when_possible @set = make_set false set.draw do - get 'about' => "welcome#about" + get "about" => "welcome#about" ActiveSupport::Deprecation.silence do - get ':controller/:id/:action' + get ":controller/:id/:action" end end - get URI('http://test.host/welcom/get/7') + get URI("http://test.host/welcom/get/7") - assert_equal "/about", controller.url_for(:controller => 'welcome', - :action => 'about', + assert_equal "/about", controller.url_for(:controller => "welcome", + :action => "about", :only_path => true) end def test_generate - set.draw { ActiveSupport::Deprecation.silence { get ':controller/:action/:id' } } + set.draw { ActiveSupport::Deprecation.silence { get ":controller/:action/:id" } } args = { :controller => "foo", :action => "bar", :id => "7", :x => "y" } assert_equal "/foo/bar/7?x=y", url_for(set, args) @@ -1420,7 +1420,7 @@ class RouteSetTest < ActiveSupport::TestCase set.draw do scope "my" do ActiveSupport::Deprecation.silence do - get ':controller(/:action(/:id))' + get ":controller(/:action(/:id))" end end end @@ -1433,7 +1433,7 @@ class RouteSetTest < ActiveSupport::TestCase set.draw do scope "" do ActiveSupport::Deprecation.silence do - get ':controller(/:action(/:id))' + get ":controller(/:action(/:id))" end end end @@ -1447,14 +1447,14 @@ class RouteSetTest < ActiveSupport::TestCase set.draw do ActiveSupport::Deprecation.silence do - get "/connection/manage(/:action)" => 'connection/manage#index' + get "/connection/manage(/:action)" => "connection/manage#index" get "/connection/connection" => "connection/connection#index" - get '/connection' => 'connection#index', :as => 'family_connection' + get "/connection" => "connection#index", :as => "family_connection" end end - assert_equal({ :controller => 'connection/manage', - :action => 'index', }, request_path_params('/connection/manage')) + assert_equal({ :controller => "connection/manage", + :action => "index", }, request_path_params("/connection/manage")) url = controller.url_for({ :controller => "connection", :only_path => true }) assert_equal "/connection/connection", url @@ -1469,70 +1469,70 @@ class RouteSetTest < ActiveSupport::TestCase set.draw do ActiveSupport::Deprecation.silence do - get ':controller(/:action(/:id))' + get ":controller(/:action(/:id))" end end - get URI('http://test.host/books/show/10') + get URI("http://test.host/books/show/10") - assert_equal '/books', controller.url_for(:controller => 'books', + assert_equal "/books", controller.url_for(:controller => "books", :only_path => true, - :action => 'index') + :action => "index") end def test_query_params_will_be_shown_when_recalled @set = make_set false set.draw do - get 'show_weblog/:parameter' => 'weblog#show' + get "show_weblog/:parameter" => "weblog#show" ActiveSupport::Deprecation.silence do - get ':controller(/:action(/:id))' + get ":controller(/:action(/:id))" end end - get URI('http://test.host/weblog/show/1') + get URI("http://test.host/weblog/show/1") - assert_equal '/weblog/edit?parameter=1', controller.url_for( - {:action => 'edit', :parameter => 1, :only_path => true}) + assert_equal "/weblog/edit?parameter=1", controller.url_for( + {:action => "edit", :parameter => 1, :only_path => true}) end def test_format_is_not_inherit set.draw do - get '/posts(.:format)' => 'posts#index' + get "/posts(.:format)" => "posts#index" end - get URI('http://test.host/posts.xml') - assert_equal({:controller => 'posts', :action => 'index', :format => 'xml'}, + get URI("http://test.host/posts.xml") + assert_equal({:controller => "posts", :action => "index", :format => "xml"}, controller.request.path_parameters) - assert_equal '/posts', controller.url_for( - {:controller => 'posts', :only_path => true}) + assert_equal "/posts", controller.url_for( + {:controller => "posts", :only_path => true}) - assert_equal '/posts.xml', controller.url_for( - {:controller => 'posts', :format => 'xml', :only_path => true}) + assert_equal "/posts.xml", controller.url_for( + {:controller => "posts", :format => "xml", :only_path => true}) end def test_expiry_determination_should_consider_values_with_to_param @set = make_set false - set.draw { ActiveSupport::Deprecation.silence { get 'projects/:project_id/:controller/:action' } } + set.draw { ActiveSupport::Deprecation.silence { get "projects/:project_id/:controller/:action" } } - get URI('http://test.host/projects/1/weblog/show') + get URI("http://test.host/projects/1/weblog/show") assert_equal( - { :controller => 'weblog', :action => 'show', :project_id => '1' }, + { :controller => "weblog", :action => "show", :project_id => "1" }, controller.request.path_parameters) - assert_equal '/projects/1/weblog/show', - controller.url_for({ :action => 'show', :project_id => 1, :only_path => true }) + assert_equal "/projects/1/weblog/show", + controller.url_for({ :action => "show", :project_id => 1, :only_path => true }) end def test_named_route_in_nested_resource set.draw do resources :projects do member do - get 'milestones' => 'milestones#index', :as => 'milestones' + get "milestones" => "milestones#index", :as => "milestones" end end end @@ -1555,7 +1555,7 @@ class RouteSetTest < ActiveSupport::TestCase def test_setting_root_in_namespace_using_string assert_nothing_raised do set.draw do - namespace 'admin' do + namespace "admin" do root :to => "home#index" end end @@ -1565,7 +1565,7 @@ class RouteSetTest < ActiveSupport::TestCase def test_route_constraints_with_unsupported_regexp_options_must_error assert_raise ArgumentError do set.draw do - get 'page/:name' => 'pages#show', + get "page/:name" => "pages#show", :constraints => { :name => /(david|jamis)/m } end end @@ -1574,13 +1574,13 @@ class RouteSetTest < ActiveSupport::TestCase def test_route_constraints_with_supported_options_must_not_error assert_nothing_raised do set.draw do - get 'page/:name' => 'pages#show', + get "page/:name" => "pages#show", :constraints => { :name => /(david|jamis)/i } end end assert_nothing_raised do set.draw do - get 'page/:name' => 'pages#show', + get "page/:name" => "pages#show", :constraints => { :name => / # Desperately overcommented regexp ( #Either david #The Creator @@ -1594,46 +1594,46 @@ class RouteSetTest < ActiveSupport::TestCase def test_route_with_subdomain_and_constraints_must_receive_params name_param = nil set.draw do - get 'page/:name' => 'pages#show', :constraints => lambda {|request| + get "page/:name" => "pages#show", :constraints => lambda {|request| name_param = request.params[:name] return true } end - assert_equal({:controller => 'pages', :action => 'show', :name => 'mypage'}, - set.recognize_path('http://subdomain.example.org/page/mypage')) - assert_equal(name_param, 'mypage') + assert_equal({:controller => "pages", :action => "show", :name => "mypage"}, + set.recognize_path("http://subdomain.example.org/page/mypage")) + assert_equal(name_param, "mypage") end def test_route_requirement_recognize_with_ignore_case set.draw do - get 'page/:name' => 'pages#show', + get "page/:name" => "pages#show", :constraints => {:name => /(david|jamis)/i} end - assert_equal({:controller => 'pages', :action => 'show', :name => 'jamis'}, set.recognize_path('/page/jamis')) + assert_equal({:controller => "pages", :action => "show", :name => "jamis"}, set.recognize_path("/page/jamis")) assert_raise ActionController::RoutingError do - set.recognize_path('/page/davidjamis') + set.recognize_path("/page/davidjamis") end - assert_equal({:controller => 'pages', :action => 'show', :name => 'DAVID'}, set.recognize_path('/page/DAVID')) + assert_equal({:controller => "pages", :action => "show", :name => "DAVID"}, set.recognize_path("/page/DAVID")) end def test_route_requirement_generate_with_ignore_case set.draw do - get 'page/:name' => 'pages#show', + get "page/:name" => "pages#show", :constraints => {:name => /(david|jamis)/i} end - url = url_for(set, { :controller => 'pages', :action => 'show', :name => 'david' }) + url = url_for(set, { :controller => "pages", :action => "show", :name => "david" }) assert_equal "/page/david", url assert_raise(ActionController::UrlGenerationError) do - url_for(set, { :controller => 'pages', :action => 'show', :name => 'davidjamis' }) + url_for(set, { :controller => "pages", :action => "show", :name => "davidjamis" }) end - url = url_for(set, { :controller => 'pages', :action => 'show', :name => 'JAMIS' }) + url = url_for(set, { :controller => "pages", :action => "show", :name => "JAMIS" }) assert_equal "/page/JAMIS", url end def test_route_requirement_recognize_with_extended_syntax set.draw do - get 'page/:name' => 'pages#show', + get "page/:name" => "pages#show", :constraints => {:name => / # Desperately overcommented regexp ( #Either david #The Creator @@ -1641,19 +1641,19 @@ class RouteSetTest < ActiveSupport::TestCase jamis #The Deployer )/x} end - assert_equal({:controller => 'pages', :action => 'show', :name => 'jamis'}, set.recognize_path('/page/jamis')) - assert_equal({:controller => 'pages', :action => 'show', :name => 'david'}, set.recognize_path('/page/david')) + assert_equal({:controller => "pages", :action => "show", :name => "jamis"}, set.recognize_path("/page/jamis")) + assert_equal({:controller => "pages", :action => "show", :name => "david"}, set.recognize_path("/page/david")) assert_raise ActionController::RoutingError do - set.recognize_path('/page/david #The Creator') + set.recognize_path("/page/david #The Creator") end assert_raise ActionController::RoutingError do - set.recognize_path('/page/David') + set.recognize_path("/page/David") end end def test_route_requirement_with_xi_modifiers set.draw do - get 'page/:name' => 'pages#show', + get "page/:name" => "pages#show", :constraints => {:name => / # Desperately overcommented regexp ( #Either david #The Creator @@ -1662,175 +1662,175 @@ class RouteSetTest < ActiveSupport::TestCase )/xi} end - assert_equal({:controller => 'pages', :action => 'show', :name => 'JAMIS'}, - set.recognize_path('/page/JAMIS')) + assert_equal({:controller => "pages", :action => "show", :name => "JAMIS"}, + set.recognize_path("/page/JAMIS")) assert_equal "/page/JAMIS", - url_for(set, { :controller => 'pages', :action => 'show', :name => 'JAMIS' }) + url_for(set, { :controller => "pages", :action => "show", :name => "JAMIS" }) end def test_routes_with_symbols set.draw do - get 'unnamed', :controller => :pages, :action => :show, :name => :as_symbol - get 'named' , :controller => :pages, :action => :show, :name => :as_symbol, :as => :named + get "unnamed", :controller => :pages, :action => :show, :name => :as_symbol + get "named" , :controller => :pages, :action => :show, :name => :as_symbol, :as => :named end - assert_equal({:controller => 'pages', :action => 'show', :name => :as_symbol}, set.recognize_path('/unnamed')) - assert_equal({:controller => 'pages', :action => 'show', :name => :as_symbol}, set.recognize_path('/named')) + assert_equal({:controller => "pages", :action => "show", :name => :as_symbol}, set.recognize_path("/unnamed")) + assert_equal({:controller => "pages", :action => "show", :name => :as_symbol}, set.recognize_path("/named")) end def test_regexp_chunk_should_add_question_mark_for_optionals set.draw do - get '/' => 'foo#index' - get '/hello' => 'bar#index' + get "/" => "foo#index" + get "/hello" => "bar#index" end - assert_equal '/', url_for(set, { :controller => 'foo' }) - assert_equal '/hello', url_for(set, { :controller => 'bar' }) + assert_equal "/", url_for(set, { :controller => "foo" }) + assert_equal "/hello", url_for(set, { :controller => "bar" }) - assert_equal({:controller => "foo", :action => "index"}, set.recognize_path('/')) - assert_equal({:controller => "bar", :action => "index"}, set.recognize_path('/hello')) + assert_equal({:controller => "foo", :action => "index"}, set.recognize_path("/")) + assert_equal({:controller => "bar", :action => "index"}, set.recognize_path("/hello")) end def test_assign_route_options_with_anchor_chars set.draw do ActiveSupport::Deprecation.silence do - get '/cars/:action/:person/:car/', :controller => 'cars' + get "/cars/:action/:person/:car/", :controller => "cars" end end - assert_equal '/cars/buy/1/2', url_for(set, { :controller => 'cars', :action => 'buy', :person => '1', :car => '2' }) + assert_equal "/cars/buy/1/2", url_for(set, { :controller => "cars", :action => "buy", :person => "1", :car => "2" }) - assert_equal({:controller => "cars", :action => "buy", :person => "1", :car => "2"}, set.recognize_path('/cars/buy/1/2')) + assert_equal({:controller => "cars", :action => "buy", :person => "1", :car => "2"}, set.recognize_path("/cars/buy/1/2")) end def test_segmentation_of_dot_path set.draw do ActiveSupport::Deprecation.silence do - get '/books/:action.rss', :controller => 'books' + get "/books/:action.rss", :controller => "books" end end - assert_equal '/books/list.rss', url_for(set, { :controller => 'books', :action => 'list' }) + assert_equal "/books/list.rss", url_for(set, { :controller => "books", :action => "list" }) - assert_equal({:controller => "books", :action => "list"}, set.recognize_path('/books/list.rss')) + assert_equal({:controller => "books", :action => "list"}, set.recognize_path("/books/list.rss")) end def test_segmentation_of_dynamic_dot_path set.draw do ActiveSupport::Deprecation.silence do - get '/books(/:action(.:format))', :controller => 'books' + get "/books(/:action(.:format))", :controller => "books" end end - assert_equal '/books/list.rss', url_for(set, { :controller => 'books', :action => 'list', :format => 'rss' }) - assert_equal '/books/list.xml', url_for(set, { :controller => 'books', :action => 'list', :format => 'xml' }) - assert_equal '/books/list', url_for(set, { :controller => 'books', :action => 'list' }) - assert_equal '/books', url_for(set, { :controller => 'books', :action => 'index' }) + assert_equal "/books/list.rss", url_for(set, { :controller => "books", :action => "list", :format => "rss" }) + assert_equal "/books/list.xml", url_for(set, { :controller => "books", :action => "list", :format => "xml" }) + assert_equal "/books/list", url_for(set, { :controller => "books", :action => "list" }) + assert_equal "/books", url_for(set, { :controller => "books", :action => "index" }) - assert_equal({:controller => "books", :action => "list", :format => "rss"}, set.recognize_path('/books/list.rss')) - assert_equal({:controller => "books", :action => "list", :format => "xml"}, set.recognize_path('/books/list.xml')) - assert_equal({:controller => "books", :action => "list"}, set.recognize_path('/books/list')) - assert_equal({:controller => "books", :action => "index"}, set.recognize_path('/books')) + assert_equal({:controller => "books", :action => "list", :format => "rss"}, set.recognize_path("/books/list.rss")) + assert_equal({:controller => "books", :action => "list", :format => "xml"}, set.recognize_path("/books/list.xml")) + assert_equal({:controller => "books", :action => "list"}, set.recognize_path("/books/list")) + assert_equal({:controller => "books", :action => "index"}, set.recognize_path("/books")) end def test_slashes_are_implied set.draw { ActiveSupport::Deprecation.silence { get("/:controller(/:action(/:id))") } } - assert_equal '/content', url_for(set, { :controller => 'content', :action => 'index' }) - assert_equal '/content/list', url_for(set, { :controller => 'content', :action => 'list' }) - assert_equal '/content/show/1', url_for(set, { :controller => 'content', :action => 'show', :id => '1' }) + assert_equal "/content", url_for(set, { :controller => "content", :action => "index" }) + assert_equal "/content/list", url_for(set, { :controller => "content", :action => "list" }) + assert_equal "/content/show/1", url_for(set, { :controller => "content", :action => "show", :id => "1" }) - assert_equal({:controller => "content", :action => "index"}, set.recognize_path('/content')) - assert_equal({:controller => "content", :action => "index"}, set.recognize_path('/content/index')) - assert_equal({:controller => "content", :action => "list"}, set.recognize_path('/content/list')) - assert_equal({:controller => "content", :action => "show", :id => "1"}, set.recognize_path('/content/show/1')) + assert_equal({:controller => "content", :action => "index"}, set.recognize_path("/content")) + assert_equal({:controller => "content", :action => "index"}, set.recognize_path("/content/index")) + assert_equal({:controller => "content", :action => "list"}, set.recognize_path("/content/list")) + assert_equal({:controller => "content", :action => "show", :id => "1"}, set.recognize_path("/content/show/1")) end def test_default_route_recognition - expected = {:controller => 'pages', :action => 'show', :id => '10'} - assert_equal expected, default_route_set.recognize_path('/pages/show/10') - assert_equal expected, default_route_set.recognize_path('/pages/show/10/') + expected = {:controller => "pages", :action => "show", :id => "10"} + assert_equal expected, default_route_set.recognize_path("/pages/show/10") + assert_equal expected, default_route_set.recognize_path("/pages/show/10/") - expected[:id] = 'jamis' - assert_equal expected, default_route_set.recognize_path('/pages/show/jamis/') + expected[:id] = "jamis" + assert_equal expected, default_route_set.recognize_path("/pages/show/jamis/") expected.delete :id - assert_equal expected, default_route_set.recognize_path('/pages/show') - assert_equal expected, default_route_set.recognize_path('/pages/show/') + assert_equal expected, default_route_set.recognize_path("/pages/show") + assert_equal expected, default_route_set.recognize_path("/pages/show/") - expected[:action] = 'index' - assert_equal expected, default_route_set.recognize_path('/pages/') - assert_equal expected, default_route_set.recognize_path('/pages') + expected[:action] = "index" + assert_equal expected, default_route_set.recognize_path("/pages/") + assert_equal expected, default_route_set.recognize_path("/pages") - assert_raise(ActionController::RoutingError) { default_route_set.recognize_path('/') } - assert_raise(ActionController::RoutingError) { default_route_set.recognize_path('/pages/how/goood/it/is/to/be/free') } + assert_raise(ActionController::RoutingError) { default_route_set.recognize_path("/") } + assert_raise(ActionController::RoutingError) { default_route_set.recognize_path("/pages/how/goood/it/is/to/be/free") } end def test_default_route_should_omit_default_action - assert_equal '/accounts', url_for(default_route_set, { :controller => 'accounts', :action => 'index' }) + assert_equal "/accounts", url_for(default_route_set, { :controller => "accounts", :action => "index" }) end def test_default_route_should_include_default_action_when_id_present - assert_equal '/accounts/index/20', url_for(default_route_set, { :controller => 'accounts', :action => 'index', :id => '20' }) + assert_equal "/accounts/index/20", url_for(default_route_set, { :controller => "accounts", :action => "index", :id => "20" }) end def test_default_route_should_work_with_action_but_no_id - assert_equal '/accounts/list_all', url_for(default_route_set, { :controller => 'accounts', :action => 'list_all' }) + assert_equal "/accounts/list_all", url_for(default_route_set, { :controller => "accounts", :action => "list_all" }) end def test_default_route_should_uri_escape_pluses - expected = { :controller => 'pages', :action => 'show', :id => 'hello world' } - assert_equal expected, default_route_set.recognize_path('/pages/show/hello%20world') - assert_equal '/pages/show/hello%20world', url_for(default_route_set, expected) + expected = { :controller => "pages", :action => "show", :id => "hello world" } + assert_equal expected, default_route_set.recognize_path("/pages/show/hello%20world") + assert_equal "/pages/show/hello%20world", url_for(default_route_set, expected) - expected[:id] = 'hello+world' - assert_equal expected, default_route_set.recognize_path('/pages/show/hello+world') - assert_equal expected, default_route_set.recognize_path('/pages/show/hello%2Bworld') - assert_equal '/pages/show/hello+world', url_for(default_route_set, expected) + expected[:id] = "hello+world" + assert_equal expected, default_route_set.recognize_path("/pages/show/hello+world") + assert_equal expected, default_route_set.recognize_path("/pages/show/hello%2Bworld") + assert_equal "/pages/show/hello+world", url_for(default_route_set, expected) end def test_build_empty_query_string - assert_uri_equal '/foo', url_for(default_route_set, { :controller => 'foo' }) + assert_uri_equal "/foo", url_for(default_route_set, { :controller => "foo" }) end def test_build_query_string_with_nil_value - assert_uri_equal '/foo', url_for(default_route_set, { :controller => 'foo', :x => nil }) + assert_uri_equal "/foo", url_for(default_route_set, { :controller => "foo", :x => nil }) end def test_simple_build_query_string - assert_uri_equal '/foo?x=1&y=2', url_for(default_route_set, { :controller => 'foo', :x => '1', :y => '2' }) + assert_uri_equal "/foo?x=1&y=2", url_for(default_route_set, { :controller => "foo", :x => "1", :y => "2" }) end def test_convert_ints_build_query_string - assert_uri_equal '/foo?x=1&y=2', url_for(default_route_set, { :controller => 'foo', :x => 1, :y => 2 }) + assert_uri_equal "/foo?x=1&y=2", url_for(default_route_set, { :controller => "foo", :x => 1, :y => 2 }) end def test_escape_spaces_build_query_string - assert_uri_equal '/foo?x=hello+world&y=goodbye+world', url_for(default_route_set, { :controller => 'foo', :x => 'hello world', :y => 'goodbye world' }) + assert_uri_equal "/foo?x=hello+world&y=goodbye+world", url_for(default_route_set, { :controller => "foo", :x => "hello world", :y => "goodbye world" }) end def test_expand_array_build_query_string - assert_uri_equal '/foo?x%5B%5D=1&x%5B%5D=2', url_for(default_route_set, { :controller => 'foo', :x => [1, 2] }) + assert_uri_equal "/foo?x%5B%5D=1&x%5B%5D=2", url_for(default_route_set, { :controller => "foo", :x => [1, 2] }) end def test_escape_spaces_build_query_string_selected_keys - assert_uri_equal '/foo?x=hello+world', url_for(default_route_set, { :controller => 'foo', :x => 'hello world' }) + assert_uri_equal "/foo?x=hello+world", url_for(default_route_set, { :controller => "foo", :x => "hello world" }) end def test_generate_with_default_params set.draw do - get 'dummy/page/:page' => 'dummy#show' - get 'dummy/dots/page.:page' => 'dummy#dots' - get 'ibocorp(/:page)' => 'ibocorp#show', + get "dummy/page/:page" => "dummy#show" + get "dummy/dots/page.:page" => "dummy#dots" + get "ibocorp(/:page)" => "ibocorp#show", :constraints => { :page => /\d+/ }, :defaults => { :page => 1 } ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end - assert_equal '/ibocorp', url_for(set, { :controller => 'ibocorp', :action => "show", :page => 1 }) + assert_equal "/ibocorp", url_for(set, { :controller => "ibocorp", :action => "show", :page => 1 }) end include ActionDispatch::RoutingVerbs @@ -1873,7 +1873,7 @@ class RouteSetTest < ActiveSupport::TestCase assert_equal({:controller => "blog", :action => "unknown_request", :anything => "blog/wibble"}, recognize_path.("/blog/wibble")) assert_equal({:controller => "blog", :action => "unknown_request", :anything => "junk"}, recognize_path.("/junk")) - get URI('http://example.org/blog/2006/07/28') + get URI("http://example.org/blog/2006/07/28") assert_equal({:controller => "blog", :action => "show_date", :year => "2006", :month => "07", :day => "28"}, controller.request.path_parameters) assert_equal("/blog/2006/07/25", controller.url_for({ :day => 25, :only_path => true })) @@ -1889,8 +1889,8 @@ class RouteSetTest < ActiveSupport::TestCase end def sort_query_string_params(uri) - path, qs = uri.split('?') - qs = qs.split('&').sort.join('&') if qs + path, qs = uri.split("?") + qs = qs.split("&").sort.join("&") if qs qs ? "#{path}?#{qs}" : path end end @@ -1905,11 +1905,11 @@ class RackMountIntegrationTests < ActiveSupport::TestCase resources :users, :posts end - namespace 'api' do - root :to => 'users#index' + namespace "api" do + root :to => "users#index" end - get '/blog(/:year(/:month(/:day)))' => 'posts#show_date', + get "/blog(/:year(/:month(/:day)))" => "posts#show_date", :constraints => { :year => /(19|20)\d\d/, :month => /[01]?\d/, @@ -1918,43 +1918,43 @@ class RackMountIntegrationTests < ActiveSupport::TestCase :day => nil, :month => nil - get 'archive/:year', :controller => 'archive', :action => 'index', + get "archive/:year", :controller => "archive", :action => "index", :defaults => { :year => nil }, :constraints => { :year => /\d{4}/ }, :as => "blog" resources :people - get 'legacy/people' => "people#index", :legacy => "true" + get "legacy/people" => "people#index", :legacy => "true" - get 'symbols', :controller => :symbols, :action => :show, :name => :as_symbol - get 'id_default(/:id)' => "foo#id_default", :id => 1 - match 'get_or_post' => "foo#get_or_post", :via => [:get, :post] - get 'optional/:optional' => "posts#index" - get 'projects/:project_id' => "project#index", :as => "project" - get 'clients' => "projects#index" + get "symbols", :controller => :symbols, :action => :show, :name => :as_symbol + get "id_default(/:id)" => "foo#id_default", :id => 1 + match "get_or_post" => "foo#get_or_post", :via => [:get, :post] + get "optional/:optional" => "posts#index" + get "projects/:project_id" => "project#index", :as => "project" + get "clients" => "projects#index" - get 'ignorecase/geocode/:postalcode' => 'geocode#show', :postalcode => /hx\d\d-\d[a-z]{2}/i - get 'extended/geocode/:postalcode' => 'geocode#show',:constraints => { + get "ignorecase/geocode/:postalcode" => "geocode#show", :postalcode => /hx\d\d-\d[a-z]{2}/i + get "extended/geocode/:postalcode" => "geocode#show",:constraints => { :postalcode => /# Postcode format \d{5} #Prefix (-\d{4})? #Suffix /x }, :as => "geocode" - get 'news(.:format)' => "news#index" + get "news(.:format)" => "news#index" ActiveSupport::Deprecation.silence do - get 'comment/:id(/:action)' => "comments#show" - get 'ws/:controller(/:action(/:id))', :ws => true - get 'account(/:action)' => "account#subscription" - get 'pages/:page_id/:controller(/:action(/:id))' - get ':controller/ping', :action => 'ping' + get "comment/:id(/:action)" => "comments#show" + get "ws/:controller(/:action(/:id))", :ws => true + get "account(/:action)" => "account#subscription" + get "pages/:page_id/:controller(/:action(/:id))" + get ":controller/ping", :action => "ping" end - get 'こんにちは/世界', :controller => 'news', :action => 'index' + get "こんにちは/世界", :controller => "news", :action => "index" ActiveSupport::Deprecation.silence do - match ':controller(/:action(/:id))(.:format)', :via => :all + match ":controller(/:action(/:id))(.:format)", :via => :all end root :to => "news#index" @@ -1969,118 +1969,118 @@ class RackMountIntegrationTests < ActiveSupport::TestCase end def test_recognize_path - assert_equal({:controller => 'admin/users', :action => 'index'}, @routes.recognize_path('/admin/users', :method => :get)) - assert_equal({:controller => 'admin/users', :action => 'create'}, @routes.recognize_path('/admin/users', :method => :post)) - assert_equal({:controller => 'admin/users', :action => 'new'}, @routes.recognize_path('/admin/users/new', :method => :get)) - assert_equal({:controller => 'admin/users', :action => 'show', :id => '1'}, @routes.recognize_path('/admin/users/1', :method => :get)) - assert_equal({:controller => 'admin/users', :action => 'update', :id => '1'}, @routes.recognize_path('/admin/users/1', :method => :put)) - assert_equal({:controller => 'admin/users', :action => 'destroy', :id => '1'}, @routes.recognize_path('/admin/users/1', :method => :delete)) - assert_equal({:controller => 'admin/users', :action => 'edit', :id => '1'}, @routes.recognize_path('/admin/users/1/edit', :method => :get)) - - assert_equal({:controller => 'admin/posts', :action => 'index'}, @routes.recognize_path('/admin/posts', :method => :get)) - assert_equal({:controller => 'admin/posts', :action => 'new'}, @routes.recognize_path('/admin/posts/new', :method => :get)) - - assert_equal({:controller => 'api/users', :action => 'index'}, @routes.recognize_path('/api', :method => :get)) - assert_equal({:controller => 'api/users', :action => 'index'}, @routes.recognize_path('/api/', :method => :get)) - - assert_equal({:controller => 'posts', :action => 'show_date', :year => '2009', :month => nil, :day => nil }, @routes.recognize_path('/blog/2009', :method => :get)) - assert_equal({:controller => 'posts', :action => 'show_date', :year => '2009', :month => '01', :day => nil }, @routes.recognize_path('/blog/2009/01', :method => :get)) - assert_equal({:controller => 'posts', :action => 'show_date', :year => '2009', :month => '01', :day => '01'}, @routes.recognize_path('/blog/2009/01/01', :method => :get)) - - assert_equal({:controller => 'archive', :action => 'index', :year => '2010'}, @routes.recognize_path('/archive/2010')) - assert_equal({:controller => 'archive', :action => 'index'}, @routes.recognize_path('/archive')) - - assert_equal({:controller => 'people', :action => 'index'}, @routes.recognize_path('/people', :method => :get)) - assert_equal({:controller => 'people', :action => 'index', :format => 'xml'}, @routes.recognize_path('/people.xml', :method => :get)) - assert_equal({:controller => 'people', :action => 'create'}, @routes.recognize_path('/people', :method => :post)) - assert_equal({:controller => 'people', :action => 'new'}, @routes.recognize_path('/people/new', :method => :get)) - assert_equal({:controller => 'people', :action => 'show', :id => '1'}, @routes.recognize_path('/people/1', :method => :get)) - assert_equal({:controller => 'people', :action => 'show', :id => '1', :format => 'xml'}, @routes.recognize_path('/people/1.xml', :method => :get)) - assert_equal({:controller => 'people', :action => 'update', :id => '1'}, @routes.recognize_path('/people/1', :method => :put)) - assert_equal({:controller => 'people', :action => 'destroy', :id => '1'}, @routes.recognize_path('/people/1', :method => :delete)) - assert_equal({:controller => 'people', :action => 'edit', :id => '1'}, @routes.recognize_path('/people/1/edit', :method => :get)) - assert_equal({:controller => 'people', :action => 'edit', :id => '1', :format => 'xml'}, @routes.recognize_path('/people/1/edit.xml', :method => :get)) - - assert_equal({:controller => 'symbols', :action => 'show', :name => :as_symbol}, @routes.recognize_path('/symbols')) - assert_equal({:controller => 'foo', :action => 'id_default', :id => '1'}, @routes.recognize_path('/id_default/1')) - assert_equal({:controller => 'foo', :action => 'id_default', :id => '2'}, @routes.recognize_path('/id_default/2')) - assert_equal({:controller => 'foo', :action => 'id_default', :id => 1 }, @routes.recognize_path('/id_default')) - assert_equal({:controller => 'foo', :action => 'get_or_post'}, @routes.recognize_path('/get_or_post', :method => :get)) - assert_equal({:controller => 'foo', :action => 'get_or_post'}, @routes.recognize_path('/get_or_post', :method => :post)) - assert_raise(ActionController::RoutingError) { @routes.recognize_path('/get_or_post', :method => :put) } - assert_raise(ActionController::RoutingError) { @routes.recognize_path('/get_or_post', :method => :delete) } - - assert_equal({:controller => 'posts', :action => 'index', :optional => 'bar'}, @routes.recognize_path('/optional/bar')) - assert_raise(ActionController::RoutingError) { @routes.recognize_path('/optional') } - - assert_equal({:controller => 'posts', :action => 'show', :id => '1', :ws => true}, @routes.recognize_path('/ws/posts/show/1', :method => :get)) - assert_equal({:controller => 'posts', :action => 'list', :ws => true}, @routes.recognize_path('/ws/posts/list', :method => :get)) - assert_equal({:controller => 'posts', :action => 'index', :ws => true}, @routes.recognize_path('/ws/posts', :method => :get)) - - assert_equal({:controller => 'account', :action => 'subscription'}, @routes.recognize_path('/account', :method => :get)) - assert_equal({:controller => 'account', :action => 'subscription'}, @routes.recognize_path('/account/subscription', :method => :get)) - assert_equal({:controller => 'account', :action => 'billing'}, @routes.recognize_path('/account/billing', :method => :get)) - - assert_equal({:page_id => '1', :controller => 'notes', :action => 'index'}, @routes.recognize_path('/pages/1/notes', :method => :get)) - assert_equal({:page_id => '1', :controller => 'notes', :action => 'list'}, @routes.recognize_path('/pages/1/notes/list', :method => :get)) - assert_equal({:page_id => '1', :controller => 'notes', :action => 'show', :id => '2'}, @routes.recognize_path('/pages/1/notes/show/2', :method => :get)) - - assert_equal({:controller => 'posts', :action => 'ping'}, @routes.recognize_path('/posts/ping', :method => :get)) - assert_equal({:controller => 'posts', :action => 'index'}, @routes.recognize_path('/posts', :method => :get)) - assert_equal({:controller => 'posts', :action => 'index'}, @routes.recognize_path('/posts/index', :method => :get)) - assert_equal({:controller => 'posts', :action => 'show'}, @routes.recognize_path('/posts/show', :method => :get)) - assert_equal({:controller => 'posts', :action => 'show', :id => '1'}, @routes.recognize_path('/posts/show/1', :method => :get)) - assert_equal({:controller => 'posts', :action => 'create'}, @routes.recognize_path('/posts/create', :method => :post)) - - assert_equal({:controller => 'geocode', :action => 'show', :postalcode => 'hx12-1az'}, @routes.recognize_path('/ignorecase/geocode/hx12-1az')) - assert_equal({:controller => 'geocode', :action => 'show', :postalcode => 'hx12-1AZ'}, @routes.recognize_path('/ignorecase/geocode/hx12-1AZ')) - assert_equal({:controller => 'geocode', :action => 'show', :postalcode => '12345-1234'}, @routes.recognize_path('/extended/geocode/12345-1234')) - assert_equal({:controller => 'geocode', :action => 'show', :postalcode => '12345'}, @routes.recognize_path('/extended/geocode/12345')) - - assert_equal({:controller => 'news', :action => 'index' }, @routes.recognize_path('/', :method => :get)) - assert_equal({:controller => 'news', :action => 'index', :format => 'rss'}, @routes.recognize_path('/news.rss', :method => :get)) - - assert_raise(ActionController::RoutingError) { @routes.recognize_path('/none', :method => :get) } + assert_equal({:controller => "admin/users", :action => "index"}, @routes.recognize_path("/admin/users", :method => :get)) + assert_equal({:controller => "admin/users", :action => "create"}, @routes.recognize_path("/admin/users", :method => :post)) + assert_equal({:controller => "admin/users", :action => "new"}, @routes.recognize_path("/admin/users/new", :method => :get)) + assert_equal({:controller => "admin/users", :action => "show", :id => "1"}, @routes.recognize_path("/admin/users/1", :method => :get)) + assert_equal({:controller => "admin/users", :action => "update", :id => "1"}, @routes.recognize_path("/admin/users/1", :method => :put)) + assert_equal({:controller => "admin/users", :action => "destroy", :id => "1"}, @routes.recognize_path("/admin/users/1", :method => :delete)) + assert_equal({:controller => "admin/users", :action => "edit", :id => "1"}, @routes.recognize_path("/admin/users/1/edit", :method => :get)) + + assert_equal({:controller => "admin/posts", :action => "index"}, @routes.recognize_path("/admin/posts", :method => :get)) + assert_equal({:controller => "admin/posts", :action => "new"}, @routes.recognize_path("/admin/posts/new", :method => :get)) + + assert_equal({:controller => "api/users", :action => "index"}, @routes.recognize_path("/api", :method => :get)) + assert_equal({:controller => "api/users", :action => "index"}, @routes.recognize_path("/api/", :method => :get)) + + assert_equal({:controller => "posts", :action => "show_date", :year => "2009", :month => nil, :day => nil }, @routes.recognize_path("/blog/2009", :method => :get)) + assert_equal({:controller => "posts", :action => "show_date", :year => "2009", :month => "01", :day => nil }, @routes.recognize_path("/blog/2009/01", :method => :get)) + assert_equal({:controller => "posts", :action => "show_date", :year => "2009", :month => "01", :day => "01"}, @routes.recognize_path("/blog/2009/01/01", :method => :get)) + + assert_equal({:controller => "archive", :action => "index", :year => "2010"}, @routes.recognize_path("/archive/2010")) + assert_equal({:controller => "archive", :action => "index"}, @routes.recognize_path("/archive")) + + assert_equal({:controller => "people", :action => "index"}, @routes.recognize_path("/people", :method => :get)) + assert_equal({:controller => "people", :action => "index", :format => "xml"}, @routes.recognize_path("/people.xml", :method => :get)) + assert_equal({:controller => "people", :action => "create"}, @routes.recognize_path("/people", :method => :post)) + assert_equal({:controller => "people", :action => "new"}, @routes.recognize_path("/people/new", :method => :get)) + assert_equal({:controller => "people", :action => "show", :id => "1"}, @routes.recognize_path("/people/1", :method => :get)) + assert_equal({:controller => "people", :action => "show", :id => "1", :format => "xml"}, @routes.recognize_path("/people/1.xml", :method => :get)) + assert_equal({:controller => "people", :action => "update", :id => "1"}, @routes.recognize_path("/people/1", :method => :put)) + assert_equal({:controller => "people", :action => "destroy", :id => "1"}, @routes.recognize_path("/people/1", :method => :delete)) + assert_equal({:controller => "people", :action => "edit", :id => "1"}, @routes.recognize_path("/people/1/edit", :method => :get)) + assert_equal({:controller => "people", :action => "edit", :id => "1", :format => "xml"}, @routes.recognize_path("/people/1/edit.xml", :method => :get)) + + assert_equal({:controller => "symbols", :action => "show", :name => :as_symbol}, @routes.recognize_path("/symbols")) + assert_equal({:controller => "foo", :action => "id_default", :id => "1"}, @routes.recognize_path("/id_default/1")) + assert_equal({:controller => "foo", :action => "id_default", :id => "2"}, @routes.recognize_path("/id_default/2")) + assert_equal({:controller => "foo", :action => "id_default", :id => 1 }, @routes.recognize_path("/id_default")) + assert_equal({:controller => "foo", :action => "get_or_post"}, @routes.recognize_path("/get_or_post", :method => :get)) + assert_equal({:controller => "foo", :action => "get_or_post"}, @routes.recognize_path("/get_or_post", :method => :post)) + assert_raise(ActionController::RoutingError) { @routes.recognize_path("/get_or_post", :method => :put) } + assert_raise(ActionController::RoutingError) { @routes.recognize_path("/get_or_post", :method => :delete) } + + assert_equal({:controller => "posts", :action => "index", :optional => "bar"}, @routes.recognize_path("/optional/bar")) + assert_raise(ActionController::RoutingError) { @routes.recognize_path("/optional") } + + assert_equal({:controller => "posts", :action => "show", :id => "1", :ws => true}, @routes.recognize_path("/ws/posts/show/1", :method => :get)) + assert_equal({:controller => "posts", :action => "list", :ws => true}, @routes.recognize_path("/ws/posts/list", :method => :get)) + assert_equal({:controller => "posts", :action => "index", :ws => true}, @routes.recognize_path("/ws/posts", :method => :get)) + + assert_equal({:controller => "account", :action => "subscription"}, @routes.recognize_path("/account", :method => :get)) + assert_equal({:controller => "account", :action => "subscription"}, @routes.recognize_path("/account/subscription", :method => :get)) + assert_equal({:controller => "account", :action => "billing"}, @routes.recognize_path("/account/billing", :method => :get)) + + assert_equal({:page_id => "1", :controller => "notes", :action => "index"}, @routes.recognize_path("/pages/1/notes", :method => :get)) + assert_equal({:page_id => "1", :controller => "notes", :action => "list"}, @routes.recognize_path("/pages/1/notes/list", :method => :get)) + assert_equal({:page_id => "1", :controller => "notes", :action => "show", :id => "2"}, @routes.recognize_path("/pages/1/notes/show/2", :method => :get)) + + assert_equal({:controller => "posts", :action => "ping"}, @routes.recognize_path("/posts/ping", :method => :get)) + assert_equal({:controller => "posts", :action => "index"}, @routes.recognize_path("/posts", :method => :get)) + assert_equal({:controller => "posts", :action => "index"}, @routes.recognize_path("/posts/index", :method => :get)) + assert_equal({:controller => "posts", :action => "show"}, @routes.recognize_path("/posts/show", :method => :get)) + assert_equal({:controller => "posts", :action => "show", :id => "1"}, @routes.recognize_path("/posts/show/1", :method => :get)) + assert_equal({:controller => "posts", :action => "create"}, @routes.recognize_path("/posts/create", :method => :post)) + + assert_equal({:controller => "geocode", :action => "show", :postalcode => "hx12-1az"}, @routes.recognize_path("/ignorecase/geocode/hx12-1az")) + assert_equal({:controller => "geocode", :action => "show", :postalcode => "hx12-1AZ"}, @routes.recognize_path("/ignorecase/geocode/hx12-1AZ")) + assert_equal({:controller => "geocode", :action => "show", :postalcode => "12345-1234"}, @routes.recognize_path("/extended/geocode/12345-1234")) + assert_equal({:controller => "geocode", :action => "show", :postalcode => "12345"}, @routes.recognize_path("/extended/geocode/12345")) + + assert_equal({:controller => "news", :action => "index" }, @routes.recognize_path("/", :method => :get)) + assert_equal({:controller => "news", :action => "index", :format => "rss"}, @routes.recognize_path("/news.rss", :method => :get)) + + assert_raise(ActionController::RoutingError) { @routes.recognize_path("/none", :method => :get) } end def test_generate_extras - assert_equal ['/people', []], @routes.generate_extras(:controller => 'people') - assert_equal ['/people', [:foo]], @routes.generate_extras(:controller => 'people', :foo => 'bar') - assert_equal ['/people', []], @routes.generate_extras(:controller => 'people', :action => 'index') - assert_equal ['/people', [:foo]], @routes.generate_extras(:controller => 'people', :action => 'index', :foo => 'bar') - assert_equal ['/people/new', []], @routes.generate_extras(:controller => 'people', :action => 'new') - assert_equal ['/people/new', [:foo]], @routes.generate_extras(:controller => 'people', :action => 'new', :foo => 'bar') - assert_equal ['/people/1', []], @routes.generate_extras(:controller => 'people', :action => 'show', :id => '1') - assert_equal ['/people/1', [:bar, :foo]], sort_extras!(@routes.generate_extras(:controller => 'people', :action => 'show', :id => '1', :foo => '2', :bar => '3')) - assert_equal ['/people', [:person]], @routes.generate_extras(:controller => 'people', :action => 'create', :person => { :first_name => 'Josh', :last_name => 'Peek' }) - assert_equal ['/people', [:people]], @routes.generate_extras(:controller => 'people', :action => 'create', :people => ['Josh', 'Dave']) - - assert_equal ['/posts/show/1', []], @routes.generate_extras(:controller => 'posts', :action => 'show', :id => '1') - assert_equal ['/posts/show/1', [:bar, :foo]], sort_extras!(@routes.generate_extras(:controller => 'posts', :action => 'show', :id => '1', :foo => '2', :bar => '3')) - assert_equal ['/posts', []], @routes.generate_extras(:controller => 'posts', :action => 'index') - assert_equal ['/posts', [:foo]], @routes.generate_extras(:controller => 'posts', :action => 'index', :foo => 'bar') + assert_equal ["/people", []], @routes.generate_extras(:controller => "people") + assert_equal ["/people", [:foo]], @routes.generate_extras(:controller => "people", :foo => "bar") + assert_equal ["/people", []], @routes.generate_extras(:controller => "people", :action => "index") + assert_equal ["/people", [:foo]], @routes.generate_extras(:controller => "people", :action => "index", :foo => "bar") + assert_equal ["/people/new", []], @routes.generate_extras(:controller => "people", :action => "new") + assert_equal ["/people/new", [:foo]], @routes.generate_extras(:controller => "people", :action => "new", :foo => "bar") + assert_equal ["/people/1", []], @routes.generate_extras(:controller => "people", :action => "show", :id => "1") + assert_equal ["/people/1", [:bar, :foo]], sort_extras!(@routes.generate_extras(:controller => "people", :action => "show", :id => "1", :foo => "2", :bar => "3")) + assert_equal ["/people", [:person]], @routes.generate_extras(:controller => "people", :action => "create", :person => { :first_name => "Josh", :last_name => "Peek" }) + assert_equal ["/people", [:people]], @routes.generate_extras(:controller => "people", :action => "create", :people => ["Josh", "Dave"]) + + assert_equal ["/posts/show/1", []], @routes.generate_extras(:controller => "posts", :action => "show", :id => "1") + assert_equal ["/posts/show/1", [:bar, :foo]], sort_extras!(@routes.generate_extras(:controller => "posts", :action => "show", :id => "1", :foo => "2", :bar => "3")) + assert_equal ["/posts", []], @routes.generate_extras(:controller => "posts", :action => "index") + assert_equal ["/posts", [:foo]], @routes.generate_extras(:controller => "posts", :action => "index", :foo => "bar") end def test_extras - params = {:controller => 'people'} + params = {:controller => "people"} assert_equal [], @routes.extra_keys(params) - assert_equal({:controller => 'people', :action => 'index'}, params) + assert_equal({:controller => "people", :action => "index"}, params) - params = {:controller => 'people', :foo => 'bar'} + params = {:controller => "people", :foo => "bar"} assert_equal [:foo], @routes.extra_keys(params) - assert_equal({:controller => 'people', :action => 'index', :foo => 'bar'}, params) + assert_equal({:controller => "people", :action => "index", :foo => "bar"}, params) - params = {:controller => 'people', :action => 'create', :person => { :name => 'Josh'}} + params = {:controller => "people", :action => "create", :person => { :name => "Josh"}} assert_equal [:person], @routes.extra_keys(params) - assert_equal({:controller => 'people', :action => 'create', :person => { :name => 'Josh'}}, params) + assert_equal({:controller => "people", :action => "create", :person => { :name => "Josh"}}, params) end def test_unicode_path - assert_equal({:controller => 'news', :action => 'index'}, @routes.recognize_path(URI.parser.escape('こんにちは/世界'), :method => :get)) + assert_equal({:controller => "news", :action => "index"}, @routes.recognize_path(URI.parser.escape("こんにちは/世界"), :method => :get)) end def test_downcased_unicode_path - assert_equal({:controller => 'news', :action => 'index'}, @routes.recognize_path(URI.parser.escape('こんにちは/世界').downcase, :method => :get)) + assert_equal({:controller => "news", :action => "index"}, @routes.recognize_path(URI.parser.escape("こんにちは/世界").downcase, :method => :get)) end private diff --git a/actionpack/test/controller/runner_test.rb b/actionpack/test/controller/runner_test.rb index 3e9383abb2..3c0c1907f9 100644 --- a/actionpack/test/controller/runner_test.rb +++ b/actionpack/test/controller/runner_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'action_dispatch/testing/integration' +require "abstract_unit" +require "action_dispatch/testing/integration" module ActionDispatch class RunnerTest < ActiveSupport::TestCase diff --git a/actionpack/test/controller/send_file_test.rb b/actionpack/test/controller/send_file_test.rb index 9df70dacbf..4d201c7290 100644 --- a/actionpack/test/controller/send_file_test.rb +++ b/actionpack/test/controller/send_file_test.rb @@ -1,9 +1,9 @@ -require 'abstract_unit' +require "abstract_unit" module TestFileUtils def file_name() File.basename(__FILE__) end def file_path() File.expand_path(__FILE__) end - def file_data() @data ||= File.open(file_path, 'rb') { |f| f.read } end + def file_data() @data ||= File.open(file_path, "rb") { |f| f.read } end end class SendFileController < ActionController::Base @@ -23,14 +23,14 @@ class SendFileController < ActionController::Base end def file_from_before_action - raise 'No file sent from before action.' + raise "No file sent from before action." end def test_send_file_headers_bang options = { :type => Mime[:png], - :disposition => 'disposition', - :filename => 'filename' + :disposition => "disposition", + :filename => "filename" } send_data "foo", options @@ -40,7 +40,7 @@ class SendFileController < ActionController::Base options = { :type => Mime[:png], :disposition => :disposition, - :filename => 'filename' + :filename => "filename" } send_data "foo", options @@ -86,7 +86,7 @@ class SendFileTest < ActionController::TestCase def test_file_nostream @controller.options = { :stream => false } response = nil - assert_nothing_raised { response = process('file') } + assert_nothing_raised { response = process("file") } assert_not_nil response body = response.body assert_kind_of String, body @@ -95,12 +95,12 @@ class SendFileTest < ActionController::TestCase def test_file_stream response = nil - assert_nothing_raised { response = process('file') } + assert_nothing_raised { response = process("file") } assert_not_nil response assert_respond_to response.stream, :each assert_respond_to response.stream, :to_path - require 'stringio' + require "stringio" output = StringIO.new output.binmode output.string.force_encoding(file_data.encoding) @@ -111,14 +111,14 @@ class SendFileTest < ActionController::TestCase def test_file_url_based_filename @controller.options = { :url_based_filename => true } response = nil - assert_nothing_raised { response = process('file') } + assert_nothing_raised { response = process("file") } assert_not_nil response assert_equal "attachment", response.headers["Content-Disposition"] end def test_data response = nil - assert_nothing_raised { response = process('data') } + assert_nothing_raised { response = process("data") } assert_not_nil response assert_kind_of String, response.body @@ -126,10 +126,10 @@ class SendFileTest < ActionController::TestCase end def test_headers_after_send_shouldnt_include_charset - response = process('data') + response = process("data") assert_equal "application/octet-stream", response.headers["Content-Type"] - response = process('file') + response = process("file") assert_equal "application/octet-stream", response.headers["Content-Type"] end @@ -141,22 +141,22 @@ class SendFileTest < ActionController::TestCase 5.times do get :test_send_file_headers_bang - assert_equal 'image/png', response.content_type - assert_equal 'disposition; filename="filename"', response.get_header('Content-Disposition') - assert_equal 'binary', response.get_header('Content-Transfer-Encoding') - assert_equal 'private', response.get_header('Cache-Control') + assert_equal "image/png", response.content_type + assert_equal 'disposition; filename="filename"', response.get_header("Content-Disposition") + assert_equal "binary", response.get_header("Content-Transfer-Encoding") + assert_equal "private", response.get_header("Cache-Control") end end def test_send_file_headers_with_disposition_as_a_symbol get :test_send_file_headers_with_disposition_as_a_symbol - assert_equal 'disposition; filename="filename"', response.get_header('Content-Disposition') + assert_equal 'disposition; filename="filename"', response.get_header("Content-Disposition") end def test_send_file_headers_with_mime_lookup_with_symbol get __method__ - assert_equal 'image/png', response.content_type + assert_equal "image/png", response.content_type end @@ -172,15 +172,15 @@ class SendFileTest < ActionController::TestCase def test_send_file_headers_guess_type_from_extension { - 'image.png' => 'image/png', - 'image.jpeg' => 'image/jpeg', - 'image.jpg' => 'image/jpeg', - 'image.tif' => 'image/tiff', - 'image.gif' => 'image/gif', - 'movie.mpg' => 'video/mpeg', - 'file.zip' => 'application/zip', - 'file.unk' => 'application/octet-stream', - 'zip' => 'application/octet-stream' + "image.png" => "image/png", + "image.jpeg" => "image/jpeg", + "image.jpg" => "image/jpeg", + "image.tif" => "image/tiff", + "image.gif" => "image/gif", + "movie.mpg" => "video/mpeg", + "file.zip" => "application/zip", + "file.unk" => "application/octet-stream", + "zip" => "application/octet-stream" }.each do |filename,expected_type| get __method__, params: { filename: filename } assert_equal expected_type, response.content_type @@ -188,19 +188,19 @@ class SendFileTest < ActionController::TestCase end def test_send_file_with_default_content_disposition_header - process('data') - assert_equal 'attachment', @controller.headers['Content-Disposition'] + process("data") + assert_equal "attachment", @controller.headers["Content-Disposition"] end def test_send_file_without_content_disposition_header @controller.options = {:disposition => nil} - process('data') - assert_nil @controller.headers['Content-Disposition'] + process("data") + assert_nil @controller.headers["Content-Disposition"] end def test_send_file_from_before_action response = nil - assert_nothing_raised { response = process('file_from_before_action') } + assert_nothing_raised { response = process("file_from_before_action") } assert_not_nil response assert_kind_of String, response.body @@ -231,7 +231,7 @@ class SendFileTest < ActionController::TestCase @controller = SendFileWithActionControllerLive.new @controller.options = { :content_type => "application/x-ruby" } - response = process('file') + response = process("file") assert_equal 200, response.status end end diff --git a/actionpack/test/controller/show_exceptions_test.rb b/actionpack/test/controller/show_exceptions_test.rb index 786dc15444..5144c8b775 100644 --- a/actionpack/test/controller/show_exceptions_test.rb +++ b/actionpack/test/controller/show_exceptions_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module ShowExceptions class ShowExceptionsController < ActionController::Base @@ -10,11 +10,11 @@ module ShowExceptions end def boom - raise 'boom!' + raise "boom!" end def another_boom - raise 'boom!' + raise "boom!" end def show_detailed_exceptions? @@ -23,26 +23,26 @@ module ShowExceptions end class ShowExceptionsTest < ActionDispatch::IntegrationTest - test 'show error page from a remote ip' do + test "show error page from a remote ip" do @app = ShowExceptionsController.action(:boom) - self.remote_addr = '208.77.188.166' - get '/' + self.remote_addr = "208.77.188.166" + get "/" assert_equal "500 error fixture\n", body end - test 'show diagnostics from a local ip if show_detailed_exceptions? is set to request.local?' do + test "show diagnostics from a local ip if show_detailed_exceptions? is set to request.local?" do @app = ShowExceptionsController.action(:boom) - ['127.0.0.1', '127.0.0.127', '127.12.1.1', '::1', '0:0:0:0:0:0:0:1', '0:0:0:0:0:0:0:1%0'].each do |ip_address| + ["127.0.0.1", "127.0.0.127", "127.12.1.1", "::1", "0:0:0:0:0:0:0:1", "0:0:0:0:0:0:0:1%0"].each do |ip_address| self.remote_addr = ip_address - get '/' + get "/" assert_match(/boom/, body) end end - test 'show diagnostics from a remote ip when env is already set' do + test "show diagnostics from a remote ip when env is already set" do @app = ShowExceptionsController.action(:another_boom) - self.remote_addr = '208.77.188.166' - get '/' + self.remote_addr = "208.77.188.166" + get "/" assert_match(/boom/, body) end end @@ -51,20 +51,20 @@ module ShowExceptions private def show_detailed_exceptions? - params['detailed'] == '1' + params["detailed"] == "1" end end class ShowExceptionsOverriddenTest < ActionDispatch::IntegrationTest - test 'show error page' do + test "show error page" do @app = ShowExceptionsOverriddenController.action(:boom) - get '/', params: { 'detailed' => '0' } + get "/", params: { "detailed" => "0" } assert_equal "500 error fixture\n", body end - test 'show diagnostics message' do + test "show diagnostics message" do @app = ShowExceptionsOverriddenController.action(:boom) - get '/', params: { 'detailed' => '1' } + get "/", params: { "detailed" => "1" } assert_match(/boom/, body) end end @@ -72,25 +72,25 @@ module ShowExceptions class ShowExceptionsFormatsTest < ActionDispatch::IntegrationTest def test_render_json_exception @app = ShowExceptionsOverriddenController.action(:boom) - get "/", headers: { 'HTTP_ACCEPT' => 'application/json' } + get "/", headers: { "HTTP_ACCEPT" => "application/json" } assert_response :internal_server_error - assert_equal 'application/json', response.content_type.to_s - assert_equal({ :status => 500, :error => 'Internal Server Error' }.to_json, response.body) + assert_equal "application/json", response.content_type.to_s + assert_equal({ :status => 500, :error => "Internal Server Error" }.to_json, response.body) end def test_render_xml_exception @app = ShowExceptionsOverriddenController.action(:boom) - get "/", headers: { 'HTTP_ACCEPT' => 'application/xml' } + get "/", headers: { "HTTP_ACCEPT" => "application/xml" } assert_response :internal_server_error - assert_equal 'application/xml', response.content_type.to_s - assert_equal({ :status => 500, :error => 'Internal Server Error' }.to_xml, response.body) + assert_equal "application/xml", response.content_type.to_s + assert_equal({ :status => 500, :error => "Internal Server Error" }.to_xml, response.body) end def test_render_fallback_exception @app = ShowExceptionsOverriddenController.action(:boom) - get "/", headers: { 'HTTP_ACCEPT' => 'text/csv' } + get "/", headers: { "HTTP_ACCEPT" => "text/csv" } assert_response :internal_server_error - assert_equal 'text/html', response.content_type.to_s + assert_equal "text/html", response.content_type.to_s end end @@ -101,9 +101,9 @@ module ShowExceptions @app.instance_variable_set(:@exceptions_app, nil) $stderr = StringIO.new - get '/', headers: { 'HTTP_ACCEPT' => 'text/json' } + get "/", headers: { "HTTP_ACCEPT" => "text/json" } assert_response :internal_server_error - assert_equal 'text/plain', response.content_type.to_s + assert_equal "text/plain", response.content_type.to_s ensure @app.instance_variable_set(:@exceptions_app, @exceptions_app) $stderr = STDERR diff --git a/actionpack/test/controller/streaming_test.rb b/actionpack/test/controller/streaming_test.rb index 6ee6444065..d685467cad 100644 --- a/actionpack/test/controller/streaming_test.rb +++ b/actionpack/test/controller/streaming_test.rb @@ -1,10 +1,10 @@ -require 'abstract_unit' +require "abstract_unit" module ActionController class StreamingResponseTest < ActionController::TestCase class TestController < ActionController::Base def self.controller_path - 'test' + "test" end def basic_stream diff --git a/actionpack/test/controller/test_case_test.rb b/actionpack/test/controller/test_case_test.rb index e288b51716..d369514119 100644 --- a/actionpack/test/controller/test_case_test.rb +++ b/actionpack/test/controller/test_case_test.rb @@ -1,40 +1,40 @@ -require 'abstract_unit' -require 'controller/fake_controllers' -require 'active_support/json/decoding' -require 'rails/engine' +require "abstract_unit" +require "controller/fake_controllers" +require "active_support/json/decoding" +require "rails/engine" class TestCaseTest < ActionController::TestCase def self.fixture_path; end; class TestController < ActionController::Base def no_op - render plain: 'dummy' + render plain: "dummy" end def set_flash flash["test"] = ">#{flash["test"]}<" - render plain: 'ignore me' + render plain: "ignore me" end def delete_flash flash.delete("test") - render plain: 'ignore me' + render plain: "ignore me" end def set_flash_now flash.now["test_now"] = ">#{flash["test_now"]}<" - render plain: 'ignore me' + render plain: "ignore me" end def set_session - session['string'] = 'A wonder' - session[:symbol] = 'it works' - render plain: 'Success' + session["string"] = "A wonder" + session[:symbol] = "it works" + render plain: "Success" end def reset_the_session reset_session - render plain: 'ignore me' + render plain: "ignore me" end def render_raw_post @@ -126,15 +126,15 @@ XML end def redirect_to_same_controller - redirect_to controller: 'test', action: 'test_uri', id: 5 + redirect_to controller: "test", action: "test_uri", id: 5 end def redirect_to_different_controller - redirect_to controller: 'fail', id: 5 + redirect_to controller: "fail", id: 5 end def create - head :created, location: 'created resource' + head :created, location: "created resource" end def render_cookie @@ -143,7 +143,7 @@ XML def delete_cookie cookies.delete("foo") - render plain: 'ok' + render plain: "ok" end def test_without_body @@ -155,7 +155,7 @@ XML end def boom - raise 'boom!' + raise "boom!" end private @@ -168,18 +168,18 @@ XML def setup super @controller = TestController.new - @request.delete_header 'PATH_INFO' + @request.delete_header "PATH_INFO" @routes = ActionDispatch::Routing::RouteSet.new.tap do |r| r.draw do ActiveSupport::Deprecation.silence do - get ':controller(/:action(/:id))' + get ":controller(/:action(/:id))" end end end end class DefaultUrlOptionsCachingController < ActionController::Base - before_action { @dynamic_opt = 'opt' } + before_action { @dynamic_opt = "opt" } def test_url_options_reset render plain: url_for @@ -197,32 +197,32 @@ XML def test_assert_select_without_body get :test_without_body - assert_select 'body', 0 - assert_select 'div.foo' + assert_select "body", 0 + assert_select "div.foo" end def test_assert_select_with_body get :test_with_body - assert_select 'body.foo' + assert_select "body.foo" end def test_url_options_reset @controller = DefaultUrlOptionsCachingController.new get :test_url_options_reset - assert_nil @request.params['dynamic_opt'] + assert_nil @request.params["dynamic_opt"] assert_match(/dynamic_opt=opt/, @response.body) end def test_raw_post_handling - params = Hash[:page, { name: 'page name' }, 'some key', 123] + params = Hash[:page, { name: "page name" }, "some key", 123] post :render_raw_post, params: params.dup assert_equal params.to_query, @response.body end def test_body_stream - params = Hash[:page, { name: 'page name' }, 'some key', 123] + params = Hash[:page, { name: "page name" }, "some key", 123] post :render_body, params: params.dup @@ -230,7 +230,7 @@ XML end def test_deprecated_body_stream - params = Hash[:page, { name: 'page name' }, 'some key', 123] + params = Hash[:page, { name: "page name" }, "some key", 123] assert_deprecated { post :render_body, params.dup } @@ -269,31 +269,31 @@ XML def test_process_without_flash process :set_flash - assert_equal '><', flash['test'] + assert_equal "><", flash["test"] end def test_deprecated_process_with_flash assert_deprecated { process :set_flash, "GET", nil, nil, { "test" => "value" } } - assert_equal '>value<', flash['test'] + assert_equal ">value<", flash["test"] end def test_process_with_flash process :set_flash, method: "GET", flash: { "test" => "value" } - assert_equal '>value<', flash['test'] + assert_equal ">value<", flash["test"] end def test_deprecated_process_with_flash_now assert_deprecated { process :set_flash_now, "GET", nil, nil, { "test_now" => "value_now" } } - assert_equal '>value_now<', flash['test_now'] + assert_equal ">value_now<", flash["test_now"] end def test_process_with_flash_now process :set_flash_now, method: "GET", flash: { "test_now" => "value_now" } - assert_equal '>value_now<', flash['test_now'] + assert_equal ">value_now<", flash["test_now"] end def test_process_delete_flash @@ -305,64 +305,64 @@ XML def test_process_with_session process :set_session - assert_equal 'A wonder', session['string'], "A value stored in the session should be available by string key" - assert_equal 'A wonder', session[:string], "Test session hash should allow indifferent access" - assert_equal 'it works', session['symbol'], "Test session hash should allow indifferent access" - assert_equal 'it works', session[:symbol], "Test session hash should allow indifferent access" + assert_equal "A wonder", session["string"], "A value stored in the session should be available by string key" + assert_equal "A wonder", session[:string], "Test session hash should allow indifferent access" + assert_equal "it works", session["symbol"], "Test session hash should allow indifferent access" + assert_equal "it works", session[:symbol], "Test session hash should allow indifferent access" end def test_process_with_session_arg - assert_deprecated { process :no_op, "GET", nil, { 'string' => 'value1', symbol: 'value2' } } - assert_equal 'value1', session['string'] - assert_equal 'value1', session[:string] - assert_equal 'value2', session['symbol'] - assert_equal 'value2', session[:symbol] + assert_deprecated { process :no_op, "GET", nil, { "string" => "value1", symbol: "value2" } } + assert_equal "value1", session["string"] + assert_equal "value1", session[:string] + assert_equal "value2", session["symbol"] + assert_equal "value2", session[:symbol] end def test_process_with_session_kwarg - process :no_op, method: "GET", session: { 'string' => 'value1', symbol: 'value2' } - assert_equal 'value1', session['string'] - assert_equal 'value1', session[:string] - assert_equal 'value2', session['symbol'] - assert_equal 'value2', session[:symbol] + process :no_op, method: "GET", session: { "string" => "value1", symbol: "value2" } + assert_equal "value1", session["string"] + assert_equal "value1", session[:string] + assert_equal "value2", session["symbol"] + assert_equal "value2", session[:symbol] end def test_deprecated_process_merges_session_arg - session[:foo] = 'bar' + session[:foo] = "bar" assert_deprecated { - get :no_op, nil, { bar: 'baz' } + get :no_op, nil, { bar: "baz" } } - assert_equal 'bar', session[:foo] - assert_equal 'baz', session[:bar] + assert_equal "bar", session[:foo] + assert_equal "baz", session[:bar] end def test_process_merges_session_arg - session[:foo] = 'bar' - get :no_op, session: { bar: 'baz' } - assert_equal 'bar', session[:foo] - assert_equal 'baz', session[:bar] + session[:foo] = "bar" + get :no_op, session: { bar: "baz" } + assert_equal "bar", session[:foo] + assert_equal "baz", session[:bar] end def test_deprecated_merged_session_arg_is_retained_across_requests assert_deprecated { - get :no_op, nil, { foo: 'bar' } + get :no_op, nil, { foo: "bar" } } - assert_equal 'bar', session[:foo] + assert_equal "bar", session[:foo] get :no_op - assert_equal 'bar', session[:foo] + assert_equal "bar", session[:foo] end def test_merged_session_arg_is_retained_across_requests - get :no_op, session: { foo: 'bar' } - assert_equal 'bar', session[:foo] + get :no_op, session: { foo: "bar" } + assert_equal "bar", session[:foo] get :no_op - assert_equal 'bar', session[:foo] + assert_equal "bar", session[:foo] end def test_process_overwrites_existing_session_arg - session[:foo] = 'bar' - get :no_op, session: { foo: 'baz' } - assert_equal 'baz', session[:foo] + session[:foo] = "bar" + get :no_op, session: { foo: "baz" } + assert_equal "baz", session[:foo] end def test_session_is_cleared_from_controller_after_reset_session @@ -407,13 +407,13 @@ XML end def test_deprecated_process_with_request_uri_with_params_with_explicit_uri - @request.env['PATH_INFO'] = "/explicit/uri" + @request.env["PATH_INFO"] = "/explicit/uri" assert_deprecated { process :test_uri, "GET", id: 7 } assert_equal "/explicit/uri", @response.body end def test_process_with_request_uri_with_params_with_explicit_uri - @request.env['PATH_INFO'] = "/explicit/uri" + @request.env["PATH_INFO"] = "/explicit/uri" process :test_uri, method: "GET", params: { id: 7 } assert_equal "/explicit/uri", @response.body end @@ -421,13 +421,13 @@ XML def test_process_with_query_string process :test_query_string, method: "GET", - params: { q: 'test' } + params: { q: "test" } assert_equal "q=test", @response.body end def test_process_with_query_string_with_explicit_uri - @request.env['PATH_INFO'] = '/explicit/uri' - @request.env['QUERY_STRING'] = 'q=test?extra=question' + @request.env["PATH_INFO"] = "/explicit/uri" + @request.env["QUERY_STRING"] = "q=test?extra=question" process :test_query_string assert_equal "q=test?extra=question", @response.body end @@ -444,7 +444,7 @@ XML begin $stderr = StringIO.new - assert_select 'area' #This will cause a warning if content is processed as HTML + assert_select "area" #This will cause a warning if content is processed as HTML $stderr.rewind && err = $stderr.read ensure $stderr = STDERR @@ -454,21 +454,21 @@ XML end def test_assert_generates - assert_generates 'controller/action/5', controller: 'controller', action: 'action', id: '5' - assert_generates 'controller/action/7', { id: "7" }, { controller: "controller", action: "action" } - assert_generates 'controller/action/5', { controller: "controller", action: "action", id: "5", name: "bob" }, {}, { name: "bob" } - assert_generates 'controller/action/7', { id: "7", name: "bob" }, { controller: "controller", action: "action" }, { name: "bob" } - assert_generates 'controller/action/7', { id: "7" }, { controller: "controller", action: "action", name: "bob" }, {} + assert_generates "controller/action/5", controller: "controller", action: "action", id: "5" + assert_generates "controller/action/7", { id: "7" }, { controller: "controller", action: "action" } + assert_generates "controller/action/5", { controller: "controller", action: "action", id: "5", name: "bob" }, {}, { name: "bob" } + assert_generates "controller/action/7", { id: "7", name: "bob" }, { controller: "controller", action: "action" }, { name: "bob" } + assert_generates "controller/action/7", { id: "7" }, { controller: "controller", action: "action", name: "bob" }, {} end def test_assert_routing - assert_routing 'content', controller: 'content', action: 'index' + assert_routing "content", controller: "content", action: "index" end def test_assert_routing_with_method with_routing do |set| set.draw { resources(:content) } - assert_routing({ method: 'post', path: 'content' }, { controller: 'content', action: 'create' }) + assert_routing({ method: "post", path: "content" }, { controller: "content", action: "create" }) end end @@ -476,30 +476,30 @@ XML with_routing do |set| set.draw do namespace :admin do - get 'user' => 'user#index' + get "user" => "user#index" end end - assert_routing 'admin/user', controller: 'admin/user', action: 'index' + assert_routing "admin/user", controller: "admin/user", action: "index" end end def test_assert_routing_with_glob with_routing do |set| - set.draw { get('*path' => "pages#show") } - assert_routing('/company/about', { controller: 'pages', action: 'show', path: 'company/about' }) + set.draw { get("*path" => "pages#show") } + assert_routing("/company/about", { controller: "pages", action: "show", path: "company/about" }) end end def test_deprecated_params_passing assert_deprecated { - get :test_params, page: { name: "Page name", month: '4', year: '2004', day: '6' } + get :test_params, page: { name: "Page name", month: "4", year: "2004", day: "6" } } parsed_params = ::JSON.parse(@response.body) assert_equal( { - 'controller' => 'test_case_test/test', 'action' => 'test_params', - 'page' => { 'name' => "Page name", 'month' => '4', 'year' => '2004', 'day' => '6' } + "controller" => "test_case_test/test", "action" => "test_params", + "page" => { "name" => "Page name", "month" => "4", "year" => "2004", "day" => "6" } }, parsed_params ) @@ -509,52 +509,52 @@ XML get :test_params, params: { page: { name: "Page name", - month: '4', - year: '2004', - day: '6' + month: "4", + year: "2004", + day: "6" } } parsed_params = ::JSON.parse(@response.body) assert_equal( { - 'controller' => 'test_case_test/test', 'action' => 'test_params', - 'page' => { 'name' => "Page name", 'month' => '4', 'year' => '2004', 'day' => '6' } + "controller" => "test_case_test/test", "action" => "test_params", + "page" => { "name" => "Page name", "month" => "4", "year" => "2004", "day" => "6" } }, parsed_params ) end def test_query_param_named_action - get :test_query_parameters, params: {action: 'foobar'} + get :test_query_parameters, params: {action: "foobar"} parsed_params = JSON.parse(@response.body) - assert_equal({'action' => 'foobar'}, parsed_params) + assert_equal({"action" => "foobar"}, parsed_params) end def test_request_param_named_action - post :test_request_parameters, params: {action: 'foobar'} + post :test_request_parameters, params: {action: "foobar"} parsed_params = eval(@response.body) - assert_equal({'action' => 'foobar'}, parsed_params) + assert_equal({"action" => "foobar"}, parsed_params) end def test_kwarg_params_passing_with_session_and_flash get :test_params, params: { page: { name: "Page name", - month: '4', - year: '2004', - day: '6' + month: "4", + year: "2004", + day: "6" } - }, session: { 'foo' => 'bar' }, flash: { notice: 'created' } + }, session: { "foo" => "bar" }, flash: { notice: "created" } parsed_params = ::JSON.parse(@response.body) assert_equal( - {'controller' => 'test_case_test/test', 'action' => 'test_params', - 'page' => {'name' => "Page name", 'month' => '4', 'year' => '2004', 'day' => '6'}}, + {"controller" => "test_case_test/test", "action" => "test_params", + "page" => {"name" => "Page name", "month" => "4", "year" => "2004", "day" => "6"}}, parsed_params ) - assert_equal 'bar', session[:foo] - assert_equal 'created', flash[:notice] + assert_equal "bar", session[:foo] + assert_equal "created", flash[:notice] end def test_params_passing_with_integer @@ -563,38 +563,38 @@ XML } parsed_params = ::JSON.parse(@response.body) assert_equal( - {'controller' => 'test_case_test/test', 'action' => 'test_params', - 'page' => {'name' => "Page name", 'month' => '4', 'year' => '2004', 'day' => '6'}}, + {"controller" => "test_case_test/test", "action" => "test_params", + "page" => {"name" => "Page name", "month" => "4", "year" => "2004", "day" => "6"}}, parsed_params ) end def test_params_passing_with_integers_when_not_html_request - get :test_params, params: { format: 'json', count: 999 } + get :test_params, params: { format: "json", count: 999 } parsed_params = ::JSON.parse(@response.body) assert_equal( - {'controller' => 'test_case_test/test', 'action' => 'test_params', - 'format' => 'json', 'count' => '999' }, + {"controller" => "test_case_test/test", "action" => "test_params", + "format" => "json", "count" => "999" }, parsed_params ) end def test_params_passing_path_parameter_is_string_when_not_html_request - get :test_params, params: { format: 'json', id: 1 } + get :test_params, params: { format: "json", id: 1 } parsed_params = ::JSON.parse(@response.body) assert_equal( - {'controller' => 'test_case_test/test', 'action' => 'test_params', - 'format' => 'json', 'id' => '1' }, + {"controller" => "test_case_test/test", "action" => "test_params", + "format" => "json", "id" => "1" }, parsed_params ) end def test_deprecated_params_passing_path_parameter_is_string_when_not_html_request - assert_deprecated { get :test_params, format: 'json', id: 1 } + assert_deprecated { get :test_params, format: "json", id: 1 } parsed_params = ::JSON.parse(@response.body) assert_equal( - {'controller' => 'test_case_test/test', 'action' => 'test_params', - 'format' => 'json', 'id' => '1' }, + {"controller" => "test_case_test/test", "action" => "test_params", + "format" => "json", "id" => "1" }, parsed_params ) end @@ -602,13 +602,13 @@ XML def test_params_passing_with_frozen_values assert_nothing_raised do get :test_params, params: { - frozen: 'icy'.freeze, frozens: ['icy'.freeze].freeze, deepfreeze: { frozen: 'icy'.freeze }.freeze + frozen: "icy".freeze, frozens: ["icy".freeze].freeze, deepfreeze: { frozen: "icy".freeze }.freeze } end parsed_params = ::JSON.parse(@response.body) assert_equal( - {'controller' => 'test_case_test/test', 'action' => 'test_params', - 'frozen' => 'icy', 'frozens' => ['icy'], 'deepfreeze' => { 'frozen' => 'icy' }}, + {"controller" => "test_case_test/test", "action" => "test_params", + "frozen" => "icy", "frozens" => ["icy"], "deepfreeze" => { "frozen" => "icy" }}, parsed_params ) end @@ -620,8 +620,8 @@ XML end test "set additional HTTP headers" do - @request.headers['Referer'] = "http://nohost.com/home" - @request.headers['Content-Type'] = "application/rss+xml" + @request.headers["Referer"] = "http://nohost.com/home" + @request.headers["Content-Type"] = "application/rss+xml" get :test_headers parsed_env = ActiveSupport::JSON.decode(@response.body) assert_equal "http://nohost.com/home", parsed_env["HTTP_REFERER"] @@ -629,8 +629,8 @@ XML end test "set additional env variables" do - @request.headers['HTTP_REFERER'] = "http://example.com/about" - @request.headers['CONTENT_TYPE'] = "application/json" + @request.headers["HTTP_REFERER"] = "http://example.com/about" + @request.headers["CONTENT_TYPE"] = "application/json" get :test_headers parsed_env = ActiveSupport::JSON.decode(@response.body) assert_equal "http://example.com/about", parsed_env["HTTP_REFERER"] @@ -638,27 +638,27 @@ XML end def test_mutating_content_type_headers_for_plain_text_files_sets_the_header - @request.headers['Content-Type'] = 'text/plain' - post :render_body, params: { name: 'foo.txt' } + @request.headers["Content-Type"] = "text/plain" + post :render_body, params: { name: "foo.txt" } - assert_equal 'text/plain', @request.headers['Content-type'] - assert_equal 'foo.txt', @request.request_parameters[:name] - assert_equal 'render_body', @request.path_parameters[:action] + assert_equal "text/plain", @request.headers["Content-type"] + assert_equal "foo.txt", @request.request_parameters[:name] + assert_equal "render_body", @request.path_parameters[:action] end def test_mutating_content_type_headers_for_html_files_sets_the_header - @request.headers['Content-Type'] = 'text/html' - post :render_body, params: { name: 'foo.html' } + @request.headers["Content-Type"] = "text/html" + post :render_body, params: { name: "foo.html" } - assert_equal 'text/html', @request.headers['Content-type'] - assert_equal 'foo.html', @request.request_parameters[:name] - assert_equal 'render_body', @request.path_parameters[:action] + assert_equal "text/html", @request.headers["Content-type"] + assert_equal "foo.html", @request.request_parameters[:name] + assert_equal "render_body", @request.path_parameters[:action] end def test_mutating_content_type_headers_for_non_registered_mime_type_raises_an_error assert_raises(RuntimeError) do - @request.headers['Content-Type'] = 'type/fake' - post :render_body, params: { name: 'foo.fake' } + @request.headers["Content-Type"] = "type/fake" + post :render_body, params: { name: "foo.fake" } end end @@ -677,16 +677,16 @@ XML def test_array_path_parameter_handled_properly with_routing do |set| set.draw do - get 'file/*path', to: 'test_case_test/test#test_params' + get "file/*path", to: "test_case_test/test#test_params" ActiveSupport::Deprecation.silence do - get ':controller/:action' + get ":controller/:action" end end - get :test_params, params: { path: ['hello', 'world'] } - assert_equal ['hello', 'world'], @request.path_parameters[:path] - assert_equal 'hello/world', @request.path_parameters[:path].to_param + get :test_params, params: { path: ["hello", "world"] } + assert_equal ["hello", "world"], @request.path_parameters[:path] + assert_equal "hello/world", @request.path_parameters[:path].to_param end end @@ -704,8 +704,8 @@ XML routes_id = @routes.object_id begin - with_routing { raise 'fail' } - fail 'Should not be here.' + with_routing { raise "fail" } + fail "Should not be here." rescue RuntimeError end @@ -724,8 +724,8 @@ XML def test_header_properly_reset_after_remote_http_request get :test_params, xhr: true - assert_nil @request.env['HTTP_X_REQUESTED_WITH'] - assert_nil @request.env['HTTP_ACCEPT'] + assert_nil @request.env["HTTP_X_REQUESTED_WITH"] + assert_nil @request.env["HTTP_ACCEPT"] end def test_deprecated_xhr_with_params @@ -743,19 +743,19 @@ XML def test_xhr_with_session get :set_session, xhr: true - assert_equal 'A wonder', session['string'], "A value stored in the session should be available by string key" - assert_equal 'A wonder', session[:string], "Test session hash should allow indifferent access" - assert_equal 'it works', session['symbol'], "Test session hash should allow indifferent access" - assert_equal 'it works', session[:symbol], "Test session hash should allow indifferent access" + assert_equal "A wonder", session["string"], "A value stored in the session should be available by string key" + assert_equal "A wonder", session[:string], "Test session hash should allow indifferent access" + assert_equal "it works", session["symbol"], "Test session hash should allow indifferent access" + assert_equal "it works", session[:symbol], "Test session hash should allow indifferent access" end def test_deprecated_xhr_with_session assert_deprecated { xhr :get, :set_session } - assert_equal 'A wonder', session['string'], "A value stored in the session should be available by string key" - assert_equal 'A wonder', session[:string], "Test session hash should allow indifferent access" - assert_equal 'it works', session['symbol'], "Test session hash should allow indifferent access" - assert_equal 'it works', session[:symbol], "Test session hash should allow indifferent access" + assert_equal "A wonder", session["string"], "A value stored in the session should be available by string key" + assert_equal "A wonder", session[:string], "Test session hash should allow indifferent access" + assert_equal "it works", session["symbol"], "Test session hash should allow indifferent access" + assert_equal "it works", session[:symbol], "Test session hash should allow indifferent access" end def test_deprecated_params_reset_between_post_requests @@ -804,61 +804,61 @@ XML end def test_request_format - get :test_format, params: { format: 'html' } - assert_equal 'text/html', @response.body + get :test_format, params: { format: "html" } + assert_equal "text/html", @response.body - get :test_format, params: { format: 'json' } - assert_equal 'application/json', @response.body + get :test_format, params: { format: "json" } + assert_equal "application/json", @response.body - get :test_format, params: { format: 'xml' } - assert_equal 'application/xml', @response.body + get :test_format, params: { format: "xml" } + assert_equal "application/xml", @response.body get :test_format - assert_equal 'text/html', @response.body + assert_equal "text/html", @response.body end def test_request_format_kwarg - get :test_format, format: 'html' - assert_equal 'text/html', @response.body + get :test_format, format: "html" + assert_equal "text/html", @response.body - get :test_format, format: 'json' - assert_equal 'application/json', @response.body + get :test_format, format: "json" + assert_equal "application/json", @response.body - get :test_format, format: 'xml' - assert_equal 'application/xml', @response.body + get :test_format, format: "xml" + assert_equal "application/xml", @response.body get :test_format - assert_equal 'text/html', @response.body + assert_equal "text/html", @response.body end def test_request_format_kwarg_overrides_params - get :test_format, format: 'json', params: { format: 'html' } - assert_equal 'application/json', @response.body + get :test_format, format: "json", params: { format: "html" } + assert_equal "application/json", @response.body end def test_should_have_knowledge_of_client_side_cookie_state_even_if_they_are_not_set - cookies['foo'] = 'bar' + cookies["foo"] = "bar" get :no_op - assert_equal 'bar', cookies['foo'] + assert_equal "bar", cookies["foo"] end def test_cookies_should_be_escaped_properly - cookies['foo'] = '+' + cookies["foo"] = "+" get :render_cookie - assert_equal '+', @response.body + assert_equal "+", @response.body end def test_should_detect_if_cookie_is_deleted - cookies['foo'] = 'bar' + cookies["foo"] = "bar" get :delete_cookie - assert_nil cookies['foo'] + assert_nil cookies["foo"] end def test_multiple_mixed_method_process_should_scrub_rack_input - post :test_params, params: { id: 1, foo: 'an foo' } + post :test_params, params: { id: 1, foo: "an foo" } assert_equal({"id"=>"1", "foo" => "an foo", "controller"=>"test_case_test/test", "action"=>"test_params"}, ::JSON.parse(@response.body)) - get :test_params, params: { bar: 'an bar' } + get :test_params, params: { bar: "an bar" } assert_equal({"bar"=>"an bar", "controller"=>"test_case_test/test", "action"=>"test_params"}, ::JSON.parse(@response.body)) end @@ -878,15 +878,15 @@ XML end end - FILES_DIR = File.dirname(__FILE__) + '/../fixtures/multipart' + FILES_DIR = File.dirname(__FILE__) + "/../fixtures/multipart" - READ_BINARY = 'rb:binary' - READ_PLAIN = 'r:binary' + READ_BINARY = "rb:binary" + READ_PLAIN = "r:binary" def test_test_uploaded_file - filename = 'mona_lisa.jpg' + filename = "mona_lisa.jpg" path = "#{FILES_DIR}/#{filename}" - content_type = 'image/png' + content_type = "image/png" expected = File.read(path) expected.force_encoding(Encoding::BINARY) @@ -904,15 +904,15 @@ XML def test_fixture_path_is_accessed_from_self_instead_of_active_support_test_case TestCaseTest.stub :fixture_path, FILES_DIR do - uploaded_file = fixture_file_upload('/mona_lisa.jpg', 'image/png') + uploaded_file = fixture_file_upload("/mona_lisa.jpg", "image/png") assert_equal File.open("#{FILES_DIR}/mona_lisa.jpg", READ_PLAIN).read, uploaded_file.read end end def test_test_uploaded_file_with_binary - filename = 'mona_lisa.jpg' + filename = "mona_lisa.jpg" path = "#{FILES_DIR}/#{filename}" - content_type = 'image/png' + content_type = "image/png" binary_uploaded_file = Rack::Test::UploadedFile.new(path, content_type, :binary) assert_equal File.open(path, READ_BINARY).read, binary_uploaded_file.read @@ -922,9 +922,9 @@ XML end def test_fixture_file_upload_with_binary - filename = 'mona_lisa.jpg' + filename = "mona_lisa.jpg" path = "#{FILES_DIR}/#{filename}" - content_type = 'image/jpg' + content_type = "image/jpg" binary_file_upload = fixture_file_upload(path, content_type, :binary) assert_equal File.open(path, READ_BINARY).read, binary_file_upload.read @@ -943,7 +943,7 @@ XML params: { file: fixture_file_upload(FILES_DIR + "/mona_lisa.jpg", "image/jpg") } - assert_equal '159528', @response.body + assert_equal "159528", @response.body end def test_fixture_file_upload_relative_to_fixture_path @@ -959,25 +959,25 @@ XML end def test_deprecated_action_dispatch_uploaded_file_upload - filename = 'mona_lisa.jpg' + filename = "mona_lisa.jpg" path = "#{FILES_DIR}/#{filename}" assert_deprecated { post :test_file_upload, file: Rack::Test::UploadedFile.new(path, "image/jpg", true) } - assert_equal '159528', @response.body + assert_equal "159528", @response.body end def test_action_dispatch_uploaded_file_upload - filename = 'mona_lisa.jpg' + filename = "mona_lisa.jpg" path = "#{FILES_DIR}/#{filename}" post :test_file_upload, params: { file: Rack::Test::UploadedFile.new(path, "image/jpg", true) } - assert_equal '159528', @response.body + assert_equal "159528", @response.body end def test_test_uploaded_file_exception_when_file_doesnt_exist - assert_raise(RuntimeError) { Rack::Test::UploadedFile.new('non_existent_file') } + assert_raise(RuntimeError) { Rack::Test::UploadedFile.new("non_existent_file") } end def test_redirect_url_only_cares_about_location_header @@ -985,12 +985,12 @@ XML assert_response :created # Redirect url doesn't care that it wasn't a :redirect response. - assert_equal 'created resource', @response.redirect_url + assert_equal "created resource", @response.redirect_url assert_equal @response.redirect_url, redirect_to_url # Must be a :redirect response. assert_raise(ActiveSupport::TestCase::Assertion) do - assert_redirected_to 'created resource' + assert_redirected_to "created resource" end end @@ -1004,12 +1004,12 @@ XML assert_raise(RuntimeError) do process :boom, method: "GET", - params: { q: 'test1' } + params: { q: "test1" } end process :test_query_string, method: "GET", - params: { q: 'test2' } + params: { q: "test2" } assert_equal "q=test2", @response.body end @@ -1019,7 +1019,7 @@ class ResponseDefaultHeadersTest < ActionController::TestCase class TestController < ActionController::Base def remove_header headers.delete params[:header] - head :ok, 'C' => '3' + head :ok, "C" => "3" end # Render a head response, but don't touch default headers @@ -1030,7 +1030,7 @@ class ResponseDefaultHeadersTest < ActionController::TestCase def before_setup @original = ActionDispatch::Response.default_headers - @defaults = { 'A' => '1', 'B' => '2' } + @defaults = { "A" => "1", "B" => "2" } ActionDispatch::Response.default_headers = @defaults super end @@ -1042,11 +1042,11 @@ class ResponseDefaultHeadersTest < ActionController::TestCase def setup super @controller = TestController.new - @request.env['PATH_INFO'] = nil + @request.env["PATH_INFO"] = nil @routes = ActionDispatch::Routing::RouteSet.new.tap do |r| r.draw do ActiveSupport::Deprecation.silence do - get ':controller(/:action(/:id))' + get ":controller(/:action(/:id))" end end end @@ -1056,18 +1056,18 @@ class ResponseDefaultHeadersTest < ActionController::TestCase get :leave_alone # Response headers start out with the defaults - assert_equal @defaults.merge('Content-Type' => 'text/html'), response.headers + assert_equal @defaults.merge("Content-Type" => "text/html"), response.headers end test "response deletes a default header" do - get :remove_header, params: { header: 'A' } + get :remove_header, params: { header: "A" } assert_response :ok # After a request, the response in the test case doesn't have the # defaults merged on top again. - assert_not_includes response.headers, 'A' - assert_includes response.headers, 'B' - assert_includes response.headers, 'C' + assert_not_includes response.headers, "A" + assert_includes response.headers, "B" + assert_includes response.headers, "C" end end @@ -1076,13 +1076,13 @@ module EngineControllerTests isolate_namespace EngineControllerTests routes.draw do - get '/' => 'bar#index' + get "/" => "bar#index" end end class BarController < ActionController::Base def index - render plain: 'bar' + render plain: "bar" end end @@ -1091,7 +1091,7 @@ module EngineControllerTests def test_engine_controller_route get :index - assert_equal @response.body, 'bar' + assert_equal @response.body, "bar" end end @@ -1104,7 +1104,7 @@ module EngineControllerTests def test_engine_controller_route get :index - assert_equal @response.body, 'bar' + assert_equal @response.body, "bar" end end end @@ -1145,7 +1145,7 @@ class CrazySymbolNameTest < ActionController::TestCase end class CrazyStringNameTest < ActionController::TestCase - tests 'content' + tests "content" def test_set_controller_class_using_string assert_equal ContentController, self.class.controller_class @@ -1158,8 +1158,8 @@ class NamedRoutesControllerTest < ActionController::TestCase def test_should_be_able_to_use_named_routes_before_a_request_is_done with_routing do |set| set.draw { resources :contents } - assert_equal 'http://test.host/contents/new', new_content_url - assert_equal 'http://test.host/contents/1', content_url(id: 1) + assert_equal "http://test.host/contents/new", new_content_url + assert_equal "http://test.host/contents/1", content_url(id: 1) end end end @@ -1175,7 +1175,7 @@ class AnonymousControllerTest < ActionController::TestCase @routes = ActionDispatch::Routing::RouteSet.new.tap do |r| r.draw do ActiveSupport::Deprecation.silence do - get ':controller(/:action(/:id))' + get ":controller(/:action(/:id))" end end end @@ -1183,7 +1183,7 @@ class AnonymousControllerTest < ActionController::TestCase def test_controller_name get :index - assert_equal 'anonymous', @response.body + assert_equal "anonymous", @response.body end end @@ -1201,19 +1201,19 @@ class RoutingDefaultsTest < ActionController::TestCase @routes = ActionDispatch::Routing::RouteSet.new.tap do |r| r.draw do - get '/posts/:id', to: 'anonymous#post', bucket_type: 'post' - get '/projects/:id', to: 'anonymous#project', defaults: { bucket_type: 'project' } + get "/posts/:id", to: "anonymous#post", bucket_type: "post" + get "/projects/:id", to: "anonymous#project", defaults: { bucket_type: "project" } end end end def test_route_option_can_be_passed_via_process - get :post, params: { id: 1, bucket_type: 'post'} - assert_equal '/posts/1', @response.body + get :post, params: { id: 1, bucket_type: "post"} + assert_equal "/posts/1", @response.body end def test_route_default_is_not_required_for_building_request_uri get :project, params: { id: 2 } - assert_equal '/projects/2', @response.body + assert_equal "/projects/2", @response.body end end diff --git a/actionpack/test/controller/url_for_integration_test.rb b/actionpack/test/controller/url_for_integration_test.rb index a6ca5fc868..5e1ad5eb1d 100644 --- a/actionpack/test/controller/url_for_integration_test.rb +++ b/actionpack/test/controller/url_for_integration_test.rb @@ -1,6 +1,6 @@ -require 'abstract_unit' -require 'controller/fake_controllers' -require 'active_support/core_ext/object/with_options' +require "abstract_unit" +require "controller/fake_controllers" +require "active_support/core_ext/object/with_options" module ActionPack class URLForIntegrationTest < ActiveSupport::TestCase @@ -14,11 +14,11 @@ module ActionPack resources :users, :posts end - namespace 'api' do - root :to => 'users#index' + namespace "api" do + root :to => "users#index" end - get '/blog(/:year(/:month(/:day)))' => 'posts#show_date', + get "/blog(/:year(/:month(/:day)))" => "posts#show_date", :constraints => { :year => /(19|20)\d\d/, :month => /[01]?\d/, @@ -27,7 +27,7 @@ module ActionPack :day => nil, :month => nil - get 'archive/:year', :controller => 'archive', :action => 'index', + get "archive/:year", :controller => "archive", :action => "index", :defaults => { :year => nil }, :constraints => { :year => /\d{4}/ }, :as => "blog" @@ -35,30 +35,30 @@ module ActionPack resources :people #match 'legacy/people' => "people#index", :legacy => "true" - get 'symbols', :controller => :symbols, :action => :show, :name => :as_symbol - get 'id_default(/:id)' => "foo#id_default", :id => 1 - match 'get_or_post' => "foo#get_or_post", :via => [:get, :post] - get 'optional/:optional' => "posts#index" - get 'projects/:project_id' => "project#index", :as => "project" - get 'clients' => "projects#index" + get "symbols", :controller => :symbols, :action => :show, :name => :as_symbol + get "id_default(/:id)" => "foo#id_default", :id => 1 + match "get_or_post" => "foo#get_or_post", :via => [:get, :post] + get "optional/:optional" => "posts#index" + get "projects/:project_id" => "project#index", :as => "project" + get "clients" => "projects#index" - get 'ignorecase/geocode/:postalcode' => 'geocode#show', :postalcode => /hx\d\d-\d[a-z]{2}/i - get 'extended/geocode/:postalcode' => 'geocode#show',:constraints => { + get "ignorecase/geocode/:postalcode" => "geocode#show", :postalcode => /hx\d\d-\d[a-z]{2}/i + get "extended/geocode/:postalcode" => "geocode#show",:constraints => { :postalcode => /# Postcode format \d{5} #Prefix (-\d{4})? #Suffix /x }, :as => "geocode" - get 'news(.:format)' => "news#index" + get "news(.:format)" => "news#index" ActiveSupport::Deprecation.silence { - get 'comment/:id(/:action)' => "comments#show" - get 'ws/:controller(/:action(/:id))', :ws => true - get 'account(/:action)' => "account#subscription" - get 'pages/:page_id/:controller(/:action(/:id))' - get ':controller/ping', :action => 'ping' - get ':controller(/:action(/:id))(.:format)' + get "comment/:id(/:action)" => "comments#show" + get "ws/:controller(/:action(/:id))", :ws => true + get "account(/:action)" => "account#subscription" + get "pages/:page_id/:controller(/:action(/:id))" + get ":controller/ping", :action => "ping" + get ":controller(/:action(/:id))(.:format)" } root :to => "news#index" @@ -73,111 +73,111 @@ module ActionPack end [ - ['/admin/users',[ { :use_route => 'admin_users' }]], - ['/admin/users',[ { :controller => 'admin/users' }]], - ['/admin/users',[ { :controller => 'admin/users', :action => 'index' }]], - ['/admin/users',[ { :action => 'index' }, { :controller => 'admin/users', :action => 'index' }, '/admin/users']], - ['/admin/users',[ { :controller => 'users', :action => 'index' }, { :controller => 'admin/accounts', :action => 'show', :id => '1' }, '/admin/accounts/show/1']], - ['/people',[ { :controller => '/people', :action => 'index' }, {:controller=>"admin/accounts", :action=>"foo", :id=>"bar"}, '/admin/accounts/foo/bar']], - - ['/admin/posts',[ { :controller => 'admin/posts' }]], - ['/admin/posts/new',[ { :controller => 'admin/posts', :action => 'new' }]], - - ['/blog/2009',[ { :controller => 'posts', :action => 'show_date', :year => 2009 }]], - ['/blog/2009/1',[ { :controller => 'posts', :action => 'show_date', :year => 2009, :month => 1 }]], - ['/blog/2009/1/1',[ { :controller => 'posts', :action => 'show_date', :year => 2009, :month => 1, :day => 1 }]], - - ['/archive/2010',[ { :controller => 'archive', :action => 'index', :year => '2010' }]], - ['/archive',[ { :controller => 'archive', :action => 'index' }]], - ['/archive?year=january',[ { :controller => 'archive', :action => 'index', :year => 'january' }]], - - ['/people',[ { :controller => 'people', :action => 'index' }]], - ['/people',[ { :action => 'index' }, { :controller => 'people', :action => 'index' }, '/people']], - ['/people',[ { :action => 'index' }, { :controller => 'people', :action => 'show', :id => '1' }, '/people/show/1']], - ['/people',[ { :controller => 'people', :action => 'index' }, { :controller => 'people', :action => 'show', :id => '1' }, '/people/show/1']], - ['/people',[ {}, { :controller => 'people', :action => 'index' }, '/people']], - ['/people/1',[ { :controller => 'people', :action => 'show' }, { :controller => 'people', :action => 'show', :id => '1' }, '/people/show/1']], - ['/people/new',[ { :use_route => 'new_person' }]], - ['/people/new',[ { :controller => 'people', :action => 'new' }]], - ['/people/1',[ { :use_route => 'person', :id => '1' }]], - ['/people/1',[ { :controller => 'people', :action => 'show', :id => '1' }]], - ['/people/1.xml',[ { :controller => 'people', :action => 'show', :id => '1', :format => 'xml' }]], - ['/people/1',[ { :controller => 'people', :action => 'show', :id => 1 }]], - ['/people/1',[ { :controller => 'people', :action => 'show', :id => Model.new('1') }]], - ['/people/1',[ { :action => 'show', :id => '1' }, { :controller => 'people', :action => 'index' }, '/people']], - ['/people/1',[ { :action => 'show', :id => 1 }, { :controller => 'people', :action => 'show', :id => '1' }, '/people/show/1']], - ['/people',[ { :controller => 'people', :action => 'index' }, { :controller => 'people', :action => 'show', :id => '1' }, '/people/show/1']], - ['/people/1',[ {}, { :controller => 'people', :action => 'show', :id => '1' }, '/people/show/1']], - ['/people/1',[ { :controller => 'people', :action => 'show' }, { :controller => 'people', :action => 'index', :id => '1' }, '/people/index/1']], - ['/people/1/edit',[ { :controller => 'people', :action => 'edit', :id => '1' }]], - ['/people/1/edit.xml',[ { :controller => 'people', :action => 'edit', :id => '1', :format => 'xml' }]], - ['/people/1/edit',[ { :use_route => 'edit_person', :id => '1' }]], - ['/people/1?legacy=true',[ { :controller => 'people', :action => 'show', :id => '1', :legacy => 'true' }]], - ['/people?legacy=true',[ { :controller => 'people', :action => 'index', :legacy => 'true' }]], - - ['/id_default/2',[ { :controller => 'foo', :action => 'id_default', :id => '2' }]], - ['/id_default',[ { :controller => 'foo', :action => 'id_default', :id => '1' }]], - ['/id_default',[ { :controller => 'foo', :action => 'id_default', :id => 1 }]], - ['/id_default',[ { :controller => 'foo', :action => 'id_default' }]], - ['/optional/bar',[ { :controller => 'posts', :action => 'index', :optional => 'bar' }]], - ['/posts',[ { :controller => 'posts', :action => 'index' }]], - - ['/project',[ { :controller => 'project', :action => 'index' }]], - ['/projects/1',[ { :controller => 'project', :action => 'index', :project_id => '1' }]], - ['/projects/1',[ { :controller => 'project', :action => 'index'}, {:project_id => '1', :controller => 'project', :action => 'index' }, '/projects/1']], - ['/projects/1',[ { :use_route => 'project', :controller => 'project', :action => 'index', :project_id => '1' }]], - ['/projects/1',[ { :use_route => 'project', :controller => 'project', :action => 'index' }, { :controller => 'project', :action => 'index', :project_id => '1' }, '/projects/1']], - - ['/clients',[ { :controller => 'projects', :action => 'index' }]], - ['/clients?project_id=1',[ { :controller => 'projects', :action => 'index', :project_id => '1' }]], - ['/clients',[ { :controller => 'projects', :action => 'index' }, { :project_id => '1', :controller => 'project', :action => 'index' }, '/projects/1']], - - ['/comment/20',[ { :id => 20 }, { :controller => 'comments', :action => 'show' }, '/comments/show']], - ['/comment/20',[ { :controller => 'comments', :id => 20, :action => 'show' }]], - ['/comments/boo',[ { :controller => 'comments', :action => 'boo' }]], - - ['/ws/posts/show/1',[ { :controller => 'posts', :action => 'show', :id => '1', :ws => true }]], - ['/ws/posts',[ { :controller => 'posts', :action => 'index', :ws => true }]], - - ['/account',[ { :controller => 'account', :action => 'subscription' }]], - ['/account/billing',[ { :controller => 'account', :action => 'billing' }]], - - ['/pages/1/notes/show/1',[ { :page_id => '1', :controller => 'notes', :action => 'show', :id => '1' }]], - ['/pages/1/notes/list',[ { :page_id => '1', :controller => 'notes', :action => 'list' }]], - ['/pages/1/notes',[ { :page_id => '1', :controller => 'notes', :action => 'index' }]], - ['/pages/1/notes',[ { :page_id => '1', :controller => 'notes' }]], - ['/notes',[ { :page_id => nil, :controller => 'notes' }]], - ['/notes',[ { :controller => 'notes' }]], - ['/notes/print',[ { :controller => 'notes', :action => 'print' }]], - ['/notes/print',[ {}, { :controller => 'notes', :action => 'print' }, '/notes/print']], - - ['/notes/index/1',[ { :controller => 'notes' }, { :controller => 'notes', :action => 'index', :id => '1' }, '/notes/index/1']], - ['/notes/index/1',[ { :controller => 'notes' }, { :controller => 'notes', :id => '1', :action => 'index' }, '/notes/index/1']], - ['/notes/index/1',[ { :action => 'index' }, { :controller => 'notes', :id => '1', :action => 'index' }, '/notes/index/1']], - ['/notes/index/1',[ {}, { :controller => 'notes', :id => '1', :action => 'index' }, '/notes/index/1']], - ['/notes/show/1',[ {}, { :controller => 'notes', :action => 'show', :id => '1' }, '/notes/show/1']], - ['/posts',[ { :controller => 'posts' }, { :controller => 'notes', :action => 'show', :id => '1' }, '/notes/show/1']], - ['/notes/list',[ { :action => 'list' }, { :controller => 'notes', :action => 'show', :id => '1' }, '/notes/show/1']], - - ['/posts/ping',[ { :controller => 'posts', :action => 'ping' }]], - ['/posts/show/1',[ { :controller => 'posts', :action => 'show', :id => '1' }]], - ['/posts/show/1',[ { :controller => 'posts', :action => 'show', :id => '1', :format => '' }]], - ['/posts',[ { :controller => 'posts' }]], - ['/posts',[ { :controller => 'posts', :action => 'index' }]], - ['/posts/create',[ { :action => 'create' }, {:day=>nil, :month=>nil, :controller=>"posts", :action=>"show_date"}, '/blog']], - ['/posts?foo=bar',[ { :controller => 'posts', :foo => 'bar' }]], - ['/posts?foo%5B%5D=bar&foo%5B%5D=baz', [{ :controller => 'posts', :foo => ['bar', 'baz'] }]], - ['/posts?page=2', [{ :controller => 'posts', :page => 2 }]], - ['/posts?q%5Bfoo%5D%5Ba%5D=b', [{ :controller => 'posts', :q => { :foo => { :a => 'b'}} }]], - - ['/news.rss', [{ :controller => 'news', :action => 'index', :format => 'rss' }]], + ["/admin/users",[ { :use_route => "admin_users" }]], + ["/admin/users",[ { :controller => "admin/users" }]], + ["/admin/users",[ { :controller => "admin/users", :action => "index" }]], + ["/admin/users",[ { :action => "index" }, { :controller => "admin/users", :action => "index" }, "/admin/users"]], + ["/admin/users",[ { :controller => "users", :action => "index" }, { :controller => "admin/accounts", :action => "show", :id => "1" }, "/admin/accounts/show/1"]], + ["/people",[ { :controller => "/people", :action => "index" }, {:controller=>"admin/accounts", :action=>"foo", :id=>"bar"}, "/admin/accounts/foo/bar"]], + + ["/admin/posts",[ { :controller => "admin/posts" }]], + ["/admin/posts/new",[ { :controller => "admin/posts", :action => "new" }]], + + ["/blog/2009",[ { :controller => "posts", :action => "show_date", :year => 2009 }]], + ["/blog/2009/1",[ { :controller => "posts", :action => "show_date", :year => 2009, :month => 1 }]], + ["/blog/2009/1/1",[ { :controller => "posts", :action => "show_date", :year => 2009, :month => 1, :day => 1 }]], + + ["/archive/2010",[ { :controller => "archive", :action => "index", :year => "2010" }]], + ["/archive",[ { :controller => "archive", :action => "index" }]], + ["/archive?year=january",[ { :controller => "archive", :action => "index", :year => "january" }]], + + ["/people",[ { :controller => "people", :action => "index" }]], + ["/people",[ { :action => "index" }, { :controller => "people", :action => "index" }, "/people"]], + ["/people",[ { :action => "index" }, { :controller => "people", :action => "show", :id => "1" }, "/people/show/1"]], + ["/people",[ { :controller => "people", :action => "index" }, { :controller => "people", :action => "show", :id => "1" }, "/people/show/1"]], + ["/people",[ {}, { :controller => "people", :action => "index" }, "/people"]], + ["/people/1",[ { :controller => "people", :action => "show" }, { :controller => "people", :action => "show", :id => "1" }, "/people/show/1"]], + ["/people/new",[ { :use_route => "new_person" }]], + ["/people/new",[ { :controller => "people", :action => "new" }]], + ["/people/1",[ { :use_route => "person", :id => "1" }]], + ["/people/1",[ { :controller => "people", :action => "show", :id => "1" }]], + ["/people/1.xml",[ { :controller => "people", :action => "show", :id => "1", :format => "xml" }]], + ["/people/1",[ { :controller => "people", :action => "show", :id => 1 }]], + ["/people/1",[ { :controller => "people", :action => "show", :id => Model.new("1") }]], + ["/people/1",[ { :action => "show", :id => "1" }, { :controller => "people", :action => "index" }, "/people"]], + ["/people/1",[ { :action => "show", :id => 1 }, { :controller => "people", :action => "show", :id => "1" }, "/people/show/1"]], + ["/people",[ { :controller => "people", :action => "index" }, { :controller => "people", :action => "show", :id => "1" }, "/people/show/1"]], + ["/people/1",[ {}, { :controller => "people", :action => "show", :id => "1" }, "/people/show/1"]], + ["/people/1",[ { :controller => "people", :action => "show" }, { :controller => "people", :action => "index", :id => "1" }, "/people/index/1"]], + ["/people/1/edit",[ { :controller => "people", :action => "edit", :id => "1" }]], + ["/people/1/edit.xml",[ { :controller => "people", :action => "edit", :id => "1", :format => "xml" }]], + ["/people/1/edit",[ { :use_route => "edit_person", :id => "1" }]], + ["/people/1?legacy=true",[ { :controller => "people", :action => "show", :id => "1", :legacy => "true" }]], + ["/people?legacy=true",[ { :controller => "people", :action => "index", :legacy => "true" }]], + + ["/id_default/2",[ { :controller => "foo", :action => "id_default", :id => "2" }]], + ["/id_default",[ { :controller => "foo", :action => "id_default", :id => "1" }]], + ["/id_default",[ { :controller => "foo", :action => "id_default", :id => 1 }]], + ["/id_default",[ { :controller => "foo", :action => "id_default" }]], + ["/optional/bar",[ { :controller => "posts", :action => "index", :optional => "bar" }]], + ["/posts",[ { :controller => "posts", :action => "index" }]], + + ["/project",[ { :controller => "project", :action => "index" }]], + ["/projects/1",[ { :controller => "project", :action => "index", :project_id => "1" }]], + ["/projects/1",[ { :controller => "project", :action => "index"}, {:project_id => "1", :controller => "project", :action => "index" }, "/projects/1"]], + ["/projects/1",[ { :use_route => "project", :controller => "project", :action => "index", :project_id => "1" }]], + ["/projects/1",[ { :use_route => "project", :controller => "project", :action => "index" }, { :controller => "project", :action => "index", :project_id => "1" }, "/projects/1"]], + + ["/clients",[ { :controller => "projects", :action => "index" }]], + ["/clients?project_id=1",[ { :controller => "projects", :action => "index", :project_id => "1" }]], + ["/clients",[ { :controller => "projects", :action => "index" }, { :project_id => "1", :controller => "project", :action => "index" }, "/projects/1"]], + + ["/comment/20",[ { :id => 20 }, { :controller => "comments", :action => "show" }, "/comments/show"]], + ["/comment/20",[ { :controller => "comments", :id => 20, :action => "show" }]], + ["/comments/boo",[ { :controller => "comments", :action => "boo" }]], + + ["/ws/posts/show/1",[ { :controller => "posts", :action => "show", :id => "1", :ws => true }]], + ["/ws/posts",[ { :controller => "posts", :action => "index", :ws => true }]], + + ["/account",[ { :controller => "account", :action => "subscription" }]], + ["/account/billing",[ { :controller => "account", :action => "billing" }]], + + ["/pages/1/notes/show/1",[ { :page_id => "1", :controller => "notes", :action => "show", :id => "1" }]], + ["/pages/1/notes/list",[ { :page_id => "1", :controller => "notes", :action => "list" }]], + ["/pages/1/notes",[ { :page_id => "1", :controller => "notes", :action => "index" }]], + ["/pages/1/notes",[ { :page_id => "1", :controller => "notes" }]], + ["/notes",[ { :page_id => nil, :controller => "notes" }]], + ["/notes",[ { :controller => "notes" }]], + ["/notes/print",[ { :controller => "notes", :action => "print" }]], + ["/notes/print",[ {}, { :controller => "notes", :action => "print" }, "/notes/print"]], + + ["/notes/index/1",[ { :controller => "notes" }, { :controller => "notes", :action => "index", :id => "1" }, "/notes/index/1"]], + ["/notes/index/1",[ { :controller => "notes" }, { :controller => "notes", :id => "1", :action => "index" }, "/notes/index/1"]], + ["/notes/index/1",[ { :action => "index" }, { :controller => "notes", :id => "1", :action => "index" }, "/notes/index/1"]], + ["/notes/index/1",[ {}, { :controller => "notes", :id => "1", :action => "index" }, "/notes/index/1"]], + ["/notes/show/1",[ {}, { :controller => "notes", :action => "show", :id => "1" }, "/notes/show/1"]], + ["/posts",[ { :controller => "posts" }, { :controller => "notes", :action => "show", :id => "1" }, "/notes/show/1"]], + ["/notes/list",[ { :action => "list" }, { :controller => "notes", :action => "show", :id => "1" }, "/notes/show/1"]], + + ["/posts/ping",[ { :controller => "posts", :action => "ping" }]], + ["/posts/show/1",[ { :controller => "posts", :action => "show", :id => "1" }]], + ["/posts/show/1",[ { :controller => "posts", :action => "show", :id => "1", :format => "" }]], + ["/posts",[ { :controller => "posts" }]], + ["/posts",[ { :controller => "posts", :action => "index" }]], + ["/posts/create",[ { :action => "create" }, {:day=>nil, :month=>nil, :controller=>"posts", :action=>"show_date"}, "/blog"]], + ["/posts?foo=bar",[ { :controller => "posts", :foo => "bar" }]], + ["/posts?foo%5B%5D=bar&foo%5B%5D=baz", [{ :controller => "posts", :foo => ["bar", "baz"] }]], + ["/posts?page=2", [{ :controller => "posts", :page => 2 }]], + ["/posts?q%5Bfoo%5D%5Ba%5D=b", [{ :controller => "posts", :q => { :foo => { :a => "b"}} }]], + + ["/news.rss", [{ :controller => "news", :action => "index", :format => "rss" }]], ].each_with_index do |(url, params), i| if params.length > 1 hash, path_params, route = *params hash[:only_path] = true define_method("test_#{url.gsub(/\W/, '_')}_#{i}") do - get URI('http://test.host' + route.to_s) + get URI("http://test.host" + route.to_s) assert_equal path_params, controller.request.path_parameters assert_equal url, controller.url_for(hash), params.inspect end diff --git a/actionpack/test/controller/url_for_test.rb b/actionpack/test/controller/url_for_test.rb index b4d2088c0a..7c8e5675b6 100644 --- a/actionpack/test/controller/url_for_test.rb +++ b/actionpack/test/controller/url_for_test.rb @@ -1,4 +1,4 @@ -require 'abstract_unit' +require "abstract_unit" module AbstractController module Testing @@ -7,7 +7,7 @@ module AbstractController include ActionDispatch::Routing::RouteSet.new.tap { |r| r.draw { ActiveSupport::Deprecation.silence { - get ':controller(/:action(/:id(.:format)))' + get ":controller(/:action(/:id(.:format)))" } } }.url_helpers @@ -21,23 +21,23 @@ module AbstractController klass = Class.new { include ActionDispatch::Routing::RouteSet.new.tap { |r| r.draw { - get "/foo/(:bar/(:baz))/:zot", :as => 'fun', + get "/foo/(:bar/(:baz))/:zot", :as => "fun", :controller => :articles, :action => :index } }.url_helpers - self.default_url_options[:host] = 'example.com' + self.default_url_options[:host] = "example.com" } path = klass.new.fun_path({:controller => :articles, :baz => "baz", :zot => "zot"}) # :bar key isn't provided - assert_equal '/foo/zot', path + assert_equal "/foo/zot", path end def add_host!(app = W) - app.default_url_options[:host] = 'www.basecamphq.com' + app.default_url_options[:host] = "www.basecamphq.com" end def add_port! @@ -45,166 +45,166 @@ module AbstractController end def add_numeric_host! - W.default_url_options[:host] = '127.0.0.1' + W.default_url_options[:host] = "127.0.0.1" end def test_exception_is_thrown_without_host assert_raise ArgumentError do - W.new.url_for :controller => 'c', :action => 'a', :id => 'i' + W.new.url_for :controller => "c", :action => "a", :id => "i" end end def test_anchor - assert_equal('/c/a#anchor', - W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :anchor => 'anchor') + assert_equal("/c/a#anchor", + W.new.url_for(:only_path => true, :controller => "c", :action => "a", :anchor => "anchor") ) end def test_nil_anchor assert_equal( - '/c/a', - W.new.url_for(only_path: true, controller: 'c', action: 'a', anchor: nil) + "/c/a", + W.new.url_for(only_path: true, controller: "c", action: "a", anchor: nil) ) end def test_false_anchor assert_equal( - '/c/a', - W.new.url_for(only_path: true, controller: 'c', action: 'a', anchor: false) + "/c/a", + W.new.url_for(only_path: true, controller: "c", action: "a", anchor: false) ) end def test_anchor_should_call_to_param - assert_equal('/c/a#anchor', - W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :anchor => Struct.new(:to_param).new('anchor')) + assert_equal("/c/a#anchor", + W.new.url_for(:only_path => true, :controller => "c", :action => "a", :anchor => Struct.new(:to_param).new("anchor")) ) end def test_anchor_should_escape_unsafe_pchar - assert_equal('/c/a#%23anchor', - W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :anchor => Struct.new(:to_param).new('#anchor')) + assert_equal("/c/a#%23anchor", + W.new.url_for(:only_path => true, :controller => "c", :action => "a", :anchor => Struct.new(:to_param).new("#anchor")) ) end def test_anchor_should_not_escape_safe_pchar - assert_equal('/c/a#name=user&email=user@domain.com', - W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :anchor => Struct.new(:to_param).new('name=user&email=user@domain.com')) + assert_equal("/c/a#name=user&email=user@domain.com", + W.new.url_for(:only_path => true, :controller => "c", :action => "a", :anchor => Struct.new(:to_param).new("name=user&email=user@domain.com")) ) end def test_default_host add_host! - assert_equal('http://www.basecamphq.com/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i') + assert_equal("http://www.basecamphq.com/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i") ) end def test_host_may_be_overridden add_host! - assert_equal('http://37signals.basecamphq.com/c/a/i', - W.new.url_for(:host => '37signals.basecamphq.com', :controller => 'c', :action => 'a', :id => 'i') + assert_equal("http://37signals.basecamphq.com/c/a/i", + W.new.url_for(:host => "37signals.basecamphq.com", :controller => "c", :action => "a", :id => "i") ) end def test_subdomain_may_be_changed add_host! - assert_equal('http://api.basecamphq.com/c/a/i', - W.new.url_for(:subdomain => 'api', :controller => 'c', :action => 'a', :id => 'i') + assert_equal("http://api.basecamphq.com/c/a/i", + W.new.url_for(:subdomain => "api", :controller => "c", :action => "a", :id => "i") ) end def test_subdomain_may_be_object - model = Class.new { def self.to_param; 'api'; end } + model = Class.new { def self.to_param; "api"; end } add_host! - assert_equal('http://api.basecamphq.com/c/a/i', - W.new.url_for(:subdomain => model, :controller => 'c', :action => 'a', :id => 'i') + assert_equal("http://api.basecamphq.com/c/a/i", + W.new.url_for(:subdomain => model, :controller => "c", :action => "a", :id => "i") ) end def test_subdomain_may_be_removed add_host! - assert_equal('http://basecamphq.com/c/a/i', - W.new.url_for(:subdomain => false, :controller => 'c', :action => 'a', :id => 'i') + assert_equal("http://basecamphq.com/c/a/i", + W.new.url_for(:subdomain => false, :controller => "c", :action => "a", :id => "i") ) end def test_subdomain_may_be_removed_with_blank_string - W.default_url_options[:host] = 'api.basecamphq.com' - assert_equal('http://basecamphq.com/c/a/i', - W.new.url_for(:subdomain => '', :controller => 'c', :action => 'a', :id => 'i') + W.default_url_options[:host] = "api.basecamphq.com" + assert_equal("http://basecamphq.com/c/a/i", + W.new.url_for(:subdomain => "", :controller => "c", :action => "a", :id => "i") ) end def test_multiple_subdomains_may_be_removed - W.default_url_options[:host] = 'mobile.www.api.basecamphq.com' - assert_equal('http://basecamphq.com/c/a/i', - W.new.url_for(:subdomain => false, :controller => 'c', :action => 'a', :id => 'i') + W.default_url_options[:host] = "mobile.www.api.basecamphq.com" + assert_equal("http://basecamphq.com/c/a/i", + W.new.url_for(:subdomain => false, :controller => "c", :action => "a", :id => "i") ) end def test_subdomain_may_be_accepted_with_numeric_host add_numeric_host! - assert_equal('http://127.0.0.1/c/a/i', - W.new.url_for(:subdomain => 'api', :controller => 'c', :action => 'a', :id => 'i') + assert_equal("http://127.0.0.1/c/a/i", + W.new.url_for(:subdomain => "api", :controller => "c", :action => "a", :id => "i") ) end def test_domain_may_be_changed add_host! - assert_equal('http://www.37signals.com/c/a/i', - W.new.url_for(:domain => '37signals.com', :controller => 'c', :action => 'a', :id => 'i') + assert_equal("http://www.37signals.com/c/a/i", + W.new.url_for(:domain => "37signals.com", :controller => "c", :action => "a", :id => "i") ) end def test_tld_length_may_be_changed add_host! - assert_equal('http://mobile.www.basecamphq.com/c/a/i', - W.new.url_for(:subdomain => 'mobile', :tld_length => 2, :controller => 'c', :action => 'a', :id => 'i') + assert_equal("http://mobile.www.basecamphq.com/c/a/i", + W.new.url_for(:subdomain => "mobile", :tld_length => 2, :controller => "c", :action => "a", :id => "i") ) end def test_port add_host! - assert_equal('http://www.basecamphq.com:3000/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :port => 3000) + assert_equal("http://www.basecamphq.com:3000/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :port => 3000) ) end def test_default_port add_host! add_port! - assert_equal('http://www.basecamphq.com:3000/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i') + assert_equal("http://www.basecamphq.com:3000/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i") ) end def test_protocol add_host! - assert_equal('https://www.basecamphq.com/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => 'https') + assert_equal("https://www.basecamphq.com/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => "https") ) end def test_protocol_with_and_without_separators add_host! - assert_equal('https://www.basecamphq.com/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => 'https') + assert_equal("https://www.basecamphq.com/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => "https") ) - assert_equal('https://www.basecamphq.com/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => 'https:') + assert_equal("https://www.basecamphq.com/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => "https:") ) - assert_equal('https://www.basecamphq.com/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => 'https://') + assert_equal("https://www.basecamphq.com/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => "https://") ) end def test_without_protocol add_host! - assert_equal('//www.basecamphq.com/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => '//') + assert_equal("//www.basecamphq.com/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => "//") ) - assert_equal('//www.basecamphq.com/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => false) + assert_equal("//www.basecamphq.com/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => false) ) end @@ -212,74 +212,74 @@ module AbstractController add_host! add_port! - assert_equal('//www.basecamphq.com:3000/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => '//') + assert_equal("//www.basecamphq.com:3000/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => "//") ) - assert_equal('//www.basecamphq.com:3000/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => false) + assert_equal("//www.basecamphq.com:3000/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => false) ) end def test_trailing_slash add_host! - options = {:controller => 'foo', :trailing_slash => true, :action => 'bar', :id => '33'} - assert_equal('http://www.basecamphq.com/foo/bar/33/', W.new.url_for(options) ) + options = {:controller => "foo", :trailing_slash => true, :action => "bar", :id => "33"} + assert_equal("http://www.basecamphq.com/foo/bar/33/", W.new.url_for(options) ) end def test_trailing_slash_with_protocol add_host! - options = { :trailing_slash => true,:protocol => 'https', :controller => 'foo', :action => 'bar', :id => '33'} - assert_equal('https://www.basecamphq.com/foo/bar/33/', W.new.url_for(options) ) - assert_equal 'https://www.basecamphq.com/foo/bar/33/?query=string', W.new.url_for(options.merge({:query => 'string'})) + options = { :trailing_slash => true,:protocol => "https", :controller => "foo", :action => "bar", :id => "33"} + assert_equal("https://www.basecamphq.com/foo/bar/33/", W.new.url_for(options) ) + assert_equal "https://www.basecamphq.com/foo/bar/33/?query=string", W.new.url_for(options.merge({:query => "string"})) end def test_trailing_slash_with_only_path - options = {:controller => 'foo', :trailing_slash => true} - assert_equal '/foo/', W.new.url_for(options.merge({:only_path => true})) - options.update({:action => 'bar', :id => '33'}) - assert_equal '/foo/bar/33/', W.new.url_for(options.merge({:only_path => true})) - assert_equal '/foo/bar/33/?query=string', W.new.url_for(options.merge({:query => 'string',:only_path => true})) + options = {:controller => "foo", :trailing_slash => true} + assert_equal "/foo/", W.new.url_for(options.merge({:only_path => true})) + options.update({:action => "bar", :id => "33"}) + assert_equal "/foo/bar/33/", W.new.url_for(options.merge({:only_path => true})) + assert_equal "/foo/bar/33/?query=string", W.new.url_for(options.merge({:query => "string",:only_path => true})) end def test_trailing_slash_with_anchor - options = {:trailing_slash => true, :controller => 'foo', :action => 'bar', :id => '33', :only_path => true, :anchor=> 'chapter7'} - assert_equal '/foo/bar/33/#chapter7', W.new.url_for(options) - assert_equal '/foo/bar/33/?query=string#chapter7', W.new.url_for(options.merge({:query => 'string'})) + options = {:trailing_slash => true, :controller => "foo", :action => "bar", :id => "33", :only_path => true, :anchor=> "chapter7"} + assert_equal "/foo/bar/33/#chapter7", W.new.url_for(options) + assert_equal "/foo/bar/33/?query=string#chapter7", W.new.url_for(options.merge({:query => "string"})) end def test_trailing_slash_with_params - url = W.new.url_for(:trailing_slash => true, :only_path => true, :controller => 'cont', :action => 'act', :p1 => 'cafe', :p2 => 'link') + url = W.new.url_for(:trailing_slash => true, :only_path => true, :controller => "cont", :action => "act", :p1 => "cafe", :p2 => "link") params = extract_params(url) - assert_equal({p1: 'cafe'}.to_query, params[0]) - assert_equal({p2: 'link'}.to_query, params[1]) + assert_equal({p1: "cafe"}.to_query, params[0]) + assert_equal({p2: "link"}.to_query, params[1]) end def test_relative_url_root_is_respected add_host! - assert_equal('https://www.basecamphq.com/subdir/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => 'https', :script_name => '/subdir') + assert_equal("https://www.basecamphq.com/subdir/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => "https", :script_name => "/subdir") ) end def test_relative_url_root_is_respected_with_environment_variable # `config.relative_url_root` is set by ENV['RAILS_RELATIVE_URL_ROOT'] w = Class.new { - config = ActionDispatch::Routing::RouteSet::Config.new '/subdir' + config = ActionDispatch::Routing::RouteSet::Config.new "/subdir" r = ActionDispatch::Routing::RouteSet.new(config) - r.draw { ActiveSupport::Deprecation.silence { get ':controller(/:action(/:id(.:format)))' } } + r.draw { ActiveSupport::Deprecation.silence { get ":controller(/:action(/:id(.:format)))" } } include r.url_helpers } add_host!(w) - assert_equal('https://www.basecamphq.com/subdir/c/a/i', - w.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => 'https') + assert_equal("https://www.basecamphq.com/subdir/c/a/i", + w.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => "https") ) end def test_named_routes with_routing do |set| set.draw do - get 'this/is/verbose', :to => 'home#index', :as => :no_args - get 'home/sweet/home/:user', :to => 'home#index', :as => :home + get "this/is/verbose", :to => "home#index", :as => :no_args + get "home/sweet/home/:user", :to => "home#index", :as => :home end # We need to create a new class in order to install the new named route. @@ -287,43 +287,43 @@ module AbstractController controller = kls.new assert controller.respond_to?(:home_url) - assert_equal 'http://www.basecamphq.com/home/sweet/home/again', - controller.send(:home_url, :host => 'www.basecamphq.com', :user => 'again') + assert_equal "http://www.basecamphq.com/home/sweet/home/again", + controller.send(:home_url, :host => "www.basecamphq.com", :user => "again") - assert_equal("/home/sweet/home/alabama", controller.send(:home_path, :user => 'alabama', :host => 'unused')) - assert_equal("http://www.basecamphq.com/home/sweet/home/alabama", controller.send(:home_url, :user => 'alabama', :host => 'www.basecamphq.com')) - assert_equal("http://www.basecamphq.com/this/is/verbose", controller.send(:no_args_url, :host=>'www.basecamphq.com')) + assert_equal("/home/sweet/home/alabama", controller.send(:home_path, :user => "alabama", :host => "unused")) + assert_equal("http://www.basecamphq.com/home/sweet/home/alabama", controller.send(:home_url, :user => "alabama", :host => "www.basecamphq.com")) + assert_equal("http://www.basecamphq.com/this/is/verbose", controller.send(:no_args_url, :host=>"www.basecamphq.com")) end end def test_relative_url_root_is_respected_for_named_routes with_routing do |set| set.draw do - get '/home/sweet/home/:user', :to => 'home#index', :as => :home + get "/home/sweet/home/:user", :to => "home#index", :as => :home end kls = Class.new { include set.url_helpers } controller = kls.new - assert_equal 'http://www.basecamphq.com/subdir/home/sweet/home/again', - controller.send(:home_url, :host => 'www.basecamphq.com', :user => 'again', :script_name => "/subdir") + assert_equal "http://www.basecamphq.com/subdir/home/sweet/home/again", + controller.send(:home_url, :host => "www.basecamphq.com", :user => "again", :script_name => "/subdir") end end def test_using_nil_script_name_properly_concats_with_original_script_name add_host! - assert_equal('https://www.basecamphq.com/subdir/c/a/i', - W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => 'https', :script_name => nil, :original_script_name => '/subdir') + assert_equal("https://www.basecamphq.com/subdir/c/a/i", + W.new.url_for(:controller => "c", :action => "a", :id => "i", :protocol => "https", :script_name => nil, :original_script_name => "/subdir") ) end def test_only_path with_routing do |set| set.draw do - get 'home/sweet/home/:user', :to => 'home#index', :as => :home + get "home/sweet/home/:user", :to => "home#index", :as => :home ActiveSupport::Deprecation.silence do - get ':controller/:action/:id' + get ":controller/:action/:id" end end @@ -331,63 +331,63 @@ module AbstractController kls = Class.new { include set.url_helpers } controller = kls.new assert_respond_to controller, :home_url - assert_equal '/brave/new/world', - controller.url_for(:controller => 'brave', :action => 'new', :id => 'world', :only_path => true) + assert_equal "/brave/new/world", + controller.url_for(:controller => "brave", :action => "new", :id => "world", :only_path => true) - assert_equal("/home/sweet/home/alabama", controller.home_path(:user => 'alabama', :host => 'unused')) - assert_equal("/home/sweet/home/alabama", controller.home_path('alabama')) + assert_equal("/home/sweet/home/alabama", controller.home_path(:user => "alabama", :host => "unused")) + assert_equal("/home/sweet/home/alabama", controller.home_path("alabama")) end end def test_one_parameter - assert_equal('/c/a?param=val', - W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :param => 'val') + assert_equal("/c/a?param=val", + W.new.url_for(:only_path => true, :controller => "c", :action => "a", :param => "val") ) end def test_two_parameters - url = W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :p1 => 'X1', :p2 => 'Y2') + url = W.new.url_for(:only_path => true, :controller => "c", :action => "a", :p1 => "X1", :p2 => "Y2") params = extract_params(url) - assert_equal({p1: 'X1'}.to_query, params[0]) - assert_equal({p2: 'Y2'}.to_query, params[1]) + assert_equal({p1: "X1"}.to_query, params[0]) + assert_equal({p2: "Y2"}.to_query, params[1]) end def test_hash_parameter - url = W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :query => {:name => 'Bob', :category => 'prof'}) + url = W.new.url_for(:only_path => true, :controller => "c", :action => "a", :query => {:name => "Bob", :category => "prof"}) params = extract_params(url) - assert_equal({'query[category]' => 'prof'}.to_query, params[0]) - assert_equal({'query[name]' => 'Bob'}.to_query, params[1]) + assert_equal({"query[category]" => "prof"}.to_query, params[0]) + assert_equal({"query[name]" => "Bob"}.to_query, params[1]) end def test_array_parameter - url = W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :query => ['Bob', 'prof']) + url = W.new.url_for(:only_path => true, :controller => "c", :action => "a", :query => ["Bob", "prof"]) params = extract_params(url) - assert_equal({'query[]' => 'Bob'}.to_query, params[0]) - assert_equal({'query[]' => 'prof'}.to_query, params[1]) + assert_equal({"query[]" => "Bob"}.to_query, params[0]) + assert_equal({"query[]" => "prof"}.to_query, params[1]) end def test_hash_recursive_parameters - url = W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :query => {:person => {:name => 'Bob', :position => 'prof'}, :hobby => 'piercing'}) + url = W.new.url_for(:only_path => true, :controller => "c", :action => "a", :query => {:person => {:name => "Bob", :position => "prof"}, :hobby => "piercing"}) params = extract_params(url) - assert_equal({'query[hobby]' => 'piercing'}.to_query, params[0]) - assert_equal({'query[person][name]' => 'Bob' }.to_query, params[1]) - assert_equal({'query[person][position]' => 'prof' }.to_query, params[2]) + assert_equal({"query[hobby]" => "piercing"}.to_query, params[0]) + assert_equal({"query[person][name]" => "Bob" }.to_query, params[1]) + assert_equal({"query[person][position]" => "prof" }.to_query, params[2]) end def test_hash_recursive_and_array_parameters - url = W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :id => 101, :query => {:person => {:name => 'Bob', :position => ['prof', 'art director']}, :hobby => 'piercing'}) + url = W.new.url_for(:only_path => true, :controller => "c", :action => "a", :id => 101, :query => {:person => {:name => "Bob", :position => ["prof", "art director"]}, :hobby => "piercing"}) assert_match(%r(^/c/a/101), url) params = extract_params(url) - assert_equal({'query[hobby]' => 'piercing' }.to_query, params[0]) - assert_equal({'query[person][name]' => 'Bob' }.to_query, params[1]) - assert_equal({'query[person][position][]' => 'art director'}.to_query, params[2]) - assert_equal({'query[person][position][]' => 'prof' }.to_query, params[3]) + assert_equal({"query[hobby]" => "piercing" }.to_query, params[0]) + assert_equal({"query[person][name]" => "Bob" }.to_query, params[1]) + assert_equal({"query[person][position][]" => "art director"}.to_query, params[2]) + assert_equal({"query[person][position][]" => "prof" }.to_query, params[3]) end def test_url_action_controller_parameters add_host! assert_raise(ArgumentError) do - W.new.url_for(ActionController::Parameters.new(:controller => 'c', :action => 'a', protocol: 'javascript', f: '%0Aeval(name)')) + W.new.url_for(ActionController::Parameters.new(:controller => "c", :action => "a", protocol: "javascript", f: "%0Aeval(name)")) end end @@ -398,13 +398,13 @@ module AbstractController def test_named_routes_with_nil_keys with_routing do |set| set.draw do - get 'posts.:format', :to => 'posts#index', :as => :posts - get '/', :to => 'posts#index', :as => :main + get "posts.:format", :to => "posts#index", :as => :posts + get "/", :to => "posts#index", :as => :main end # We need to create a new class in order to install the new named route. kls = Class.new { include set.url_helpers } - kls.default_url_options[:host] = 'www.basecamphq.com' + kls.default_url_options[:host] = "www.basecamphq.com" controller = kls.new params = {:action => :index, :controller => :posts, :format => :xml} @@ -418,7 +418,7 @@ module AbstractController first_class = Class.new { include ActionController::UrlFor } second_class = Class.new { include ActionController::UrlFor } - first_host, second_host = 'firsthost.com', 'secondhost.com' + first_host, second_host = "firsthost.com", "secondhost.com" first_class.default_url_options[:host] = first_host second_class.default_url_options[:host] = second_host @@ -428,25 +428,25 @@ module AbstractController end def test_with_stringified_keys - assert_equal("/c", W.new.url_for('controller' => 'c', 'only_path' => true)) - assert_equal("/c/a", W.new.url_for('controller' => 'c', 'action' => 'a', 'only_path' => true)) + assert_equal("/c", W.new.url_for("controller" => "c", "only_path" => true)) + assert_equal("/c/a", W.new.url_for("controller" => "c", "action" => "a", "only_path" => true)) end def test_with_hash_with_indifferent_access - W.default_url_options[:controller] = 'd' + W.default_url_options[:controller] = "d" W.default_url_options[:only_path] = false - assert_equal("/c", W.new.url_for(ActiveSupport::HashWithIndifferentAccess.new('controller' => 'c', 'only_path' => true))) + assert_equal("/c", W.new.url_for(ActiveSupport::HashWithIndifferentAccess.new("controller" => "c", "only_path" => true))) - W.default_url_options[:action] = 'b' - assert_equal("/c/a", W.new.url_for(ActiveSupport::HashWithIndifferentAccess.new('controller' => 'c', 'action' => 'a', 'only_path' => true))) + W.default_url_options[:action] = "b" + assert_equal("/c/a", W.new.url_for(ActiveSupport::HashWithIndifferentAccess.new("controller" => "c", "action" => "a", "only_path" => true))) end def test_url_params_with_nil_to_param_are_not_in_url - assert_equal("/c/a", W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :id => Struct.new(:to_param).new(nil))) + assert_equal("/c/a", W.new.url_for(:only_path => true, :controller => "c", :action => "a", :id => Struct.new(:to_param).new(nil))) end def test_false_url_params_are_included_in_query - assert_equal("/c/a?show=false", W.new.url_for(:only_path => true, :controller => 'c', :action => 'a', :show => false)) + assert_equal("/c/a?show=false", W.new.url_for(:only_path => true, :controller => "c", :action => "a", :show => false)) end def test_url_generation_with_array_and_hash @@ -458,11 +458,11 @@ module AbstractController end kls = Class.new { include set.url_helpers } - kls.default_url_options[:host] = 'www.basecamphq.com' + kls.default_url_options[:host] = "www.basecamphq.com" controller = kls.new assert_equal("http://www.basecamphq.com/admin/posts/new?param=value", - controller.send(:url_for, [:new, :admin, :post, { param: 'value' }]) + controller.send(:url_for, [:new, :admin, :post, { param: "value" }]) ) end end @@ -476,9 +476,9 @@ module AbstractController end kls = Class.new { include set.url_helpers } - kls.default_url_options[:host] = 'www.basecamphq.com' + kls.default_url_options[:host] = "www.basecamphq.com" - original_components = [:new, :admin, :post, { param: 'value' }] + original_components = [:new, :admin, :post, { param: "value" }] components = original_components.dup kls.new.url_for(components) @@ -489,7 +489,7 @@ module AbstractController private def extract_params(url) - url.split('?', 2).last.split('&').sort + url.split("?", 2).last.split("&").sort end end end diff --git a/actionpack/test/controller/url_rewriter_test.rb b/actionpack/test/controller/url_rewriter_test.rb index bc0d215530..9709e8b430 100644 --- a/actionpack/test/controller/url_rewriter_test.rb +++ b/actionpack/test/controller/url_rewriter_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'controller/fake_controllers' +require "abstract_unit" +require "controller/fake_controllers" class UrlRewriterTests < ActionController::TestCase class Rewriter @@ -21,71 +21,71 @@ class UrlRewriterTests < ActionController::TestCase @routes = ActionDispatch::Routing::RouteSet.new.tap do |r| r.draw do ActiveSupport::Deprecation.silence do - get ':controller(/:action(/:id))' + get ":controller(/:action(/:id))" end end end end def test_port - assert_equal('http://test.host:1271/c/a/i', - @rewriter.rewrite(@routes, :controller => 'c', :action => 'a', :id => 'i', :port => 1271) + assert_equal("http://test.host:1271/c/a/i", + @rewriter.rewrite(@routes, :controller => "c", :action => "a", :id => "i", :port => 1271) ) end def test_protocol_with_and_without_separator - assert_equal('https://test.host/c/a/i', - @rewriter.rewrite(@routes, :protocol => 'https', :controller => 'c', :action => 'a', :id => 'i') + assert_equal("https://test.host/c/a/i", + @rewriter.rewrite(@routes, :protocol => "https", :controller => "c", :action => "a", :id => "i") ) - assert_equal('https://test.host/c/a/i', - @rewriter.rewrite(@routes, :protocol => 'https://', :controller => 'c', :action => 'a', :id => 'i') + assert_equal("https://test.host/c/a/i", + @rewriter.rewrite(@routes, :protocol => "https://", :controller => "c", :action => "a", :id => "i") ) end def test_user_name_and_password assert_equal( - 'http://david:secret@test.host/c/a/i', - @rewriter.rewrite(@routes, :user => "david", :password => "secret", :controller => 'c', :action => 'a', :id => 'i') + "http://david:secret@test.host/c/a/i", + @rewriter.rewrite(@routes, :user => "david", :password => "secret", :controller => "c", :action => "a", :id => "i") ) end def test_user_name_and_password_with_escape_codes assert_equal( - 'http://openid.aol.com%2Fnextangler:one+two%3F@test.host/c/a/i', - @rewriter.rewrite(@routes, :user => "openid.aol.com/nextangler", :password => "one two?", :controller => 'c', :action => 'a', :id => 'i') + "http://openid.aol.com%2Fnextangler:one+two%3F@test.host/c/a/i", + @rewriter.rewrite(@routes, :user => "openid.aol.com/nextangler", :password => "one two?", :controller => "c", :action => "a", :id => "i") ) end def test_anchor assert_equal( - 'http://test.host/c/a/i#anchor', - @rewriter.rewrite(@routes, :controller => 'c', :action => 'a', :id => 'i', :anchor => 'anchor') + "http://test.host/c/a/i#anchor", + @rewriter.rewrite(@routes, :controller => "c", :action => "a", :id => "i", :anchor => "anchor") ) end def test_anchor_should_call_to_param assert_equal( - 'http://test.host/c/a/i#anchor', - @rewriter.rewrite(@routes, :controller => 'c', :action => 'a', :id => 'i', :anchor => Struct.new(:to_param).new('anchor')) + "http://test.host/c/a/i#anchor", + @rewriter.rewrite(@routes, :controller => "c", :action => "a", :id => "i", :anchor => Struct.new(:to_param).new("anchor")) ) end def test_anchor_should_be_uri_escaped assert_equal( - 'http://test.host/c/a/i#anc/hor', - @rewriter.rewrite(@routes, :controller => 'c', :action => 'a', :id => 'i', :anchor => Struct.new(:to_param).new('anc/hor')) + "http://test.host/c/a/i#anc/hor", + @rewriter.rewrite(@routes, :controller => "c", :action => "a", :id => "i", :anchor => Struct.new(:to_param).new("anc/hor")) ) end def test_trailing_slash - options = {:controller => 'foo', :action => 'bar', :id => '3', :only_path => true} - assert_equal '/foo/bar/3', @rewriter.rewrite(@routes, options) - assert_equal '/foo/bar/3?query=string', @rewriter.rewrite(@routes, options.merge({:query => 'string'})) + options = {:controller => "foo", :action => "bar", :id => "3", :only_path => true} + assert_equal "/foo/bar/3", @rewriter.rewrite(@routes, options) + assert_equal "/foo/bar/3?query=string", @rewriter.rewrite(@routes, options.merge({:query => "string"})) options.update({:trailing_slash => true}) - assert_equal '/foo/bar/3/', @rewriter.rewrite(@routes, options) - options.update({:query => 'string'}) - assert_equal '/foo/bar/3/?query=string', @rewriter.rewrite(@routes, options) + assert_equal "/foo/bar/3/", @rewriter.rewrite(@routes, options) + options.update({:query => "string"}) + assert_equal "/foo/bar/3/?query=string", @rewriter.rewrite(@routes, options) end end diff --git a/actionpack/test/controller/webservice_test.rb b/actionpack/test/controller/webservice_test.rb index daf17558aa..cc8dd0779b 100644 --- a/actionpack/test/controller/webservice_test.rb +++ b/actionpack/test/controller/webservice_test.rb @@ -1,5 +1,5 @@ -require 'abstract_unit' -require 'active_support/json/decoding' +require "abstract_unit" +require "active_support/json/decoding" class WebServiceTest < ActionDispatch::IntegrationTest class TestController < ActionController::Base @@ -7,7 +7,7 @@ class WebServiceTest < ActionDispatch::IntegrationTest if params[:full] render plain: dump_params_keys else - render plain: (params.keys - ['controller', 'action']).sort.join(", ") + render plain: (params.keys - ["controller", "action"]).sort.join(", ") end end @@ -35,7 +35,7 @@ class WebServiceTest < ActionDispatch::IntegrationTest def test_check_parameters with_test_route_set do get "/" - assert_equal '', @controller.response.body + assert_equal "", @controller.response.body end end @@ -43,11 +43,11 @@ class WebServiceTest < ActionDispatch::IntegrationTest with_test_route_set do post "/", params: '{"entry":{"summary":"content..."}}', - headers: { 'CONTENT_TYPE' => 'application/json' } + headers: { "CONTENT_TYPE" => "application/json" } - assert_equal 'entry', @controller.response.body + assert_equal "entry", @controller.response.body assert @controller.params.has_key?(:entry) - assert_equal 'content...', @controller.params["entry"]['summary'] + assert_equal "content...", @controller.params["entry"]["summary"] end end @@ -55,34 +55,34 @@ class WebServiceTest < ActionDispatch::IntegrationTest with_test_route_set do put "/", params: '{"entry":{"summary":"content..."}}', - headers: { 'CONTENT_TYPE' => 'application/json' } + headers: { "CONTENT_TYPE" => "application/json" } - assert_equal 'entry', @controller.response.body + assert_equal "entry", @controller.response.body assert @controller.params.has_key?(:entry) - assert_equal 'content...', @controller.params["entry"]['summary'] + assert_equal "content...", @controller.params["entry"]["summary"] end end def test_register_and_use_json_simple with_test_route_set do - with_params_parsers Mime[:json] => Proc.new { |data| ActiveSupport::JSON.decode(data)['request'].with_indifferent_access } do + with_params_parsers Mime[:json] => Proc.new { |data| ActiveSupport::JSON.decode(data)["request"].with_indifferent_access } do post "/", params: '{"request":{"summary":"content...","title":"JSON"}}', - headers: { 'CONTENT_TYPE' => 'application/json' } + headers: { "CONTENT_TYPE" => "application/json" } - assert_equal 'summary, title', @controller.response.body + assert_equal "summary, title", @controller.response.body assert @controller.params.has_key?(:summary) assert @controller.params.has_key?(:title) - assert_equal 'content...', @controller.params["summary"] - assert_equal 'JSON', @controller.params["title"] + assert_equal "content...", @controller.params["summary"] + assert_equal "JSON", @controller.params["title"] end end end def test_use_json_with_empty_request with_test_route_set do - assert_nothing_raised { post "/", headers: { 'CONTENT_TYPE' => 'application/json' } } - assert_equal '', @controller.response.body + assert_nothing_raised { post "/", headers: { "CONTENT_TYPE" => "application/json" } } + assert_equal "", @controller.response.body end end @@ -90,9 +90,9 @@ class WebServiceTest < ActionDispatch::IntegrationTest with_test_route_set do post "/?full=1", params: '{"first-key":{"sub-key":"..."}}', - headers: { 'CONTENT_TYPE' => 'application/json' } - assert_equal 'action, controller, first-key(sub-key), full', @controller.response.body - assert_equal "...", @controller.params['first-key']['sub-key'] + headers: { "CONTENT_TYPE" => "application/json" } + assert_equal "action, controller, first-key(sub-key), full", @controller.response.body + assert_equal "...", @controller.params["first-key"]["sub-key"] end end @@ -102,8 +102,8 @@ class WebServiceTest < ActionDispatch::IntegrationTest { json: Proc.new { |data| raise Interrupt } } end - def content_length; get_header('rack.input').length; end - end.new({ 'rack.input' => StringIO.new('{"title":"JSON"}}'), 'CONTENT_TYPE' => 'application/json' }) + def content_length; get_header("rack.input").length; end + end.new({ "rack.input" => StringIO.new('{"title":"JSON"}}'), "CONTENT_TYPE" => "application/json" }) assert_raises(Interrupt) do req.request_parameters @@ -125,7 +125,7 @@ class WebServiceTest < ActionDispatch::IntegrationTest def with_test_route_set with_routing do |set| set.draw do - match '/', :to => 'web_service_test/test#assign_parameters', :via => :all + match "/", :to => "web_service_test/test#assign_parameters", :via => :all end yield end -- cgit v1.2.3