From 6c835be71f2780c1a251a9ba404827b8f0fe0720 Mon Sep 17 00:00:00 2001 From: Geremia Taglialatela Date: Fri, 28 Jul 2023 18:50:23 +0200 Subject: [PATCH] Improve dummy app configuration - Fix a config deprecation - Add a custom deprecator because `ActiveSupport::Deprecation.warn` is deprecated --- lib/route_translator.rb | 7 ++++++- test/dummy/config/application.rb | 1 + test/integration/i18n_slash_separator_test.rb | 6 +++--- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/route_translator.rb b/lib/route_translator.rb index 28a4b6ad..4fa8f2dd 100644 --- a/lib/route_translator.rb +++ b/lib/route_translator.rb @@ -5,6 +5,7 @@ require 'route_translator/extensions' require 'route_translator/translator' require 'route_translator/host' +require 'route_translator/version' module RouteTranslator extend RouteTranslator::Host @@ -39,7 +40,7 @@ def resolve_host_locale_config_conflicts def check_deprecations return if @config.i18n_use_slash_separator - ActiveSupport::Deprecation.warn <<~MSG + deprecator.warn <<~MSG `i18n_use_slash_separator` set to `false` is deprecated and will be removed in the next major release of Route Translator to match Rails' ActiveRecord nested model syntax. @@ -90,4 +91,8 @@ def locale_from_params(params) locale = params[config.locale_param_key]&.to_sym locale if I18n.available_locales.include?(locale) end + + def deprecator + @deprecator ||= ActiveSupport::Deprecation.new(RouteTranslator::VERSION, 'RouteTranslator') + end end diff --git a/test/dummy/config/application.rb b/test/dummy/config/application.rb index f977886e..de5321ff 100644 --- a/test/dummy/config/application.rb +++ b/test/dummy/config/application.rb @@ -8,5 +8,6 @@ module Dummy class Application < Rails::Application config.active_support.deprecation = :log config.eager_load = false + config.active_support.cache_format_version = 7.0 if Rails.version >= '7.0' end end diff --git a/test/integration/i18n_slash_separator_test.rb b/test/integration/i18n_slash_separator_test.rb index 18ab7cbb..22db3da9 100644 --- a/test/integration/i18n_slash_separator_test.rb +++ b/test/integration/i18n_slash_separator_test.rb @@ -10,7 +10,7 @@ def teardown end def test_deprecation_when_default - assert_deprecated('i18n_use_slash_separator') do + assert_deprecated('i18n_use_slash_separator', RouteTranslator.deprecator) do RouteTranslator.config end end @@ -18,7 +18,7 @@ def test_deprecation_when_default def test_deprecation_when_false config_i18n_use_slash_separator false - assert_deprecated('i18n_use_slash_separator') do + assert_deprecated('i18n_use_slash_separator', RouteTranslator.deprecator) do RouteTranslator.config end end @@ -26,7 +26,7 @@ def test_deprecation_when_false def test_no_deprecation_when_true config_i18n_use_slash_separator true - assert_not_deprecated do + assert_not_deprecated(RouteTranslator.deprecator) do RouteTranslator.config end end