From e43d46aa4d266feb997b901e726006721eb4b7b3 Mon Sep 17 00:00:00 2001 From: grosser Date: Sat, 19 Jan 2013 16:03:12 -0800 Subject: [PATCH] use namespace from options/config --- lib/sidekiq/redis_connection.rb | 3 ++- test/test_redis_connection.rb | 30 ++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/lib/sidekiq/redis_connection.rb b/lib/sidekiq/redis_connection.rb index 38412cfe..1479bd33 100644 --- a/lib/sidekiq/redis_connection.rb +++ b/lib/sidekiq/redis_connection.rb @@ -9,9 +9,10 @@ module Sidekiq driver = options[:driver] || 'ruby' # need a connection for Fetcher and Retry size = options[:size] || (Sidekiq.server? ? (Sidekiq.options[:concurrency] + 2) : 5) + namespace = options[:namespace] || Sidekiq.options[:namespace] ConnectionPool.new(:timeout => 1, :size => size) do - build_client(url, options[:namespace], driver) + build_client(url, namespace, driver) end end diff --git a/test/test_redis_connection.rb b/test/test_redis_connection.rb index 357f8533..1823da87 100644 --- a/test/test_redis_connection.rb +++ b/test/test_redis_connection.rb @@ -5,6 +5,36 @@ class TestRedisConnection < MiniTest::Unit::TestCase describe ".create" do + it "creates a pooled redis connection" do + pool = Sidekiq::RedisConnection.create + assert_equal Redis, pool.checkout.class + end + + describe "namespace" do + + it "uses a given :namespace" do + pool = Sidekiq::RedisConnection.create(:namespace => "xxx") + assert_equal "xxx", pool.checkout.namespace + end + + it "uses :namespace from Sidekiq.options" do + Sidekiq.options = {:namespace => "xxx"} + pool = Sidekiq::RedisConnection.create + assert_equal "xxx", pool.checkout.namespace + end + + it "uses given :namespace over :namespace from Sidekiq.options" do + Sidekiq.options = {:namespace => "xxx"} + pool = Sidekiq::RedisConnection.create(:namespace => "yyy") + assert_equal "yyy", pool.checkout.namespace + end + + end + + end + + describe ".determine_redis_provider" do + def with_env_var(var, uri, skip_provider=false) vars = ['REDISTOGO_URL', 'REDIS_PROVIDER', 'REDIS_URL'] - [var] vars.each do |v|