From db513470e08446cd8b3a3dcad21eccdddf15dc17 Mon Sep 17 00:00:00 2001 From: Maikel Linke Date: Fri, 28 Mar 2025 14:59:32 +1100 Subject: [PATCH] Fail CI on unknown deprecation warnings --- config/environments/test.rb | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/config/environments/test.rb b/config/environments/test.rb index cfba7d0307..e241e5c4ce 100644 --- a/config/environments/test.rb +++ b/config/environments/test.rb @@ -52,7 +52,18 @@ Openfoodnetwork::Application.configure do # config.active_record.schema_format = :sql # Print deprecation notices to the stderr - config.active_support.deprecation = :stderr + # config.active_support.deprecation = :stderr + + # Fail tests on deprecated code unless it's a known case to solve. + ActiveSupport::Deprecation.behavior = ->(message, callstack, deprecation_horizon, gem_name) do + allowed_warnings = [ + # List strings here to allow matching deprecations. + "Enumerable.sum", # spec/lib/reports/bulk_coop_report_spec.rb:188 + ] + unless allowed_warnings.any? { |pattern| message.match(pattern) } + ActiveSupport::Deprecation::DEFAULT_BEHAVIORS[:raise].call(message, callstack, deprecation_horizon, gem_name) + end + end config.active_job.queue_adapter = :test end