From 0aa9f6f5e9a48f0bff21816fd225a79f82917018 Mon Sep 17 00:00:00 2001 From: Bruce Bolt Date: Mon, 30 Sep 2024 15:59:05 +0100 Subject: [PATCH] Use only `EMERGENCY_BANNER_REDIS_URL` environment variable In 9683ede220f184f188ff4b86e68461b2f09b2872, we allowed this application to use either `EMERGENCY_BANNER_REDIS_URL` or `REDIS_URL`, as different environments were in differet states. That is no longer the case, so we can remove the code to default to one over the other. --- lib/emergency_banner/display.rb | 2 +- test/unit/emergency_banner/display_test.rb | 55 ---------------------- 2 files changed, 1 insertion(+), 56 deletions(-) diff --git a/lib/emergency_banner/display.rb b/lib/emergency_banner/display.rb index de9171f9d..b99dab2b0 100644 --- a/lib/emergency_banner/display.rb +++ b/lib/emergency_banner/display.rb @@ -3,7 +3,7 @@ class Display class << self def client @client ||= Redis.new( - url: ENV.fetch("EMERGENCY_BANNER_REDIS_URL", ENV["REDIS_URL"]), + url: ENV["EMERGENCY_BANNER_REDIS_URL"], reconnect_attempts: [ 15, 30, diff --git a/test/unit/emergency_banner/display_test.rb b/test/unit/emergency_banner/display_test.rb index 70fb108a9..f6a6bf24e 100644 --- a/test/unit/emergency_banner/display_test.rb +++ b/test/unit/emergency_banner/display_test.rb @@ -7,51 +7,6 @@ @banner = EmergencyBanner::Display.new end - context ".client" do - context "when the EMERGENCY_BANNER_REDIS_URL environment variable has been set" do - should "use that value as the URL for the Redis client" do - mock_env("EMERGENCY_BANNER_REDIS_URL" => "redis://emergency-banner") do - EmergencyBanner::Display.instance_variable_set(:@client, nil) - - Redis.expects(:new).with( - url: "redis://emergency-banner", - reconnect_attempts: [ - 15, - 30, - 45, - 60, - ], - ) - - EmergencyBanner::Display.client - end - end - end - - context "when the EMERGENCY_BANNER_REDIS_URL environment variable has not been set" do - should "use the default REDIS_URL as the URL for the Redis client" do - mock_env({ - "EMERGENCY_BANNER_REDIS_URL" => nil, - "REDIS_URL" => "redis://my-redis-url", - }) do - EmergencyBanner::Display.instance_variable_set(:@client, nil) - - Redis.expects(:new).with( - url: "redis://my-redis-url", - reconnect_attempts: [ - 15, - 30, - 45, - 60, - ], - ) - - EmergencyBanner::Display.client - end - end - end - end - context "#enabled?" do should "return enabled is false when redis connection times out and send an error notification" do err = Redis::CannotConnectError.new("Timed out connecting to Redis") @@ -200,15 +155,5 @@ assert_nil @banner.link_text end end - - def mock_env(partial_env_hash) - old_env = ENV.to_hash - ENV.update partial_env_hash - begin - yield - ensure - ENV.replace old_env - end - end end # rubocop:enable Rails/RefuteMethods