From 7f8c69398070525bfeaf473c3431b6b74d67b320 Mon Sep 17 00:00:00 2001 From: Rosa Gutierrez Date: Tue, 17 Mar 2026 14:26:11 +0100 Subject: [PATCH] Handle nil config gracefully instead of crashing Co-Authored-By: Claude Opus 4.6 (1M context) --- lib/rspamd-ruby.rb | 2 +- test/setup_test.rb | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/rspamd-ruby.rb b/lib/rspamd-ruby.rb index 7787779..5ef5c45 100644 --- a/lib/rspamd-ruby.rb +++ b/lib/rspamd-ruby.rb @@ -7,7 +7,7 @@ module Rspamd class << self def setup(config) - @config = config.deep_symbolize_keys + @config = config&.deep_symbolize_keys @clients = {} end diff --git a/test/setup_test.rb b/test/setup_test.rb index a47ec44..089b50b 100644 --- a/test/setup_test.rb +++ b/test/setup_test.rb @@ -27,6 +27,13 @@ def test_caches_client_instances assert_same client1, client2 end + def test_returns_stub_when_config_is_nil + Rspamd.setup(nil) + + client = Rspamd.client_for(:outbound) + assert_instance_of Rspamd::ClientStub, client + end + def test_returns_stub_when_not_configured client = Rspamd.client_for(:outbound) assert_instance_of Rspamd::ClientStub, client