From b949b5da9527e18cc16b9b8354bae1d81855db20 Mon Sep 17 00:00:00 2001 From: Ryan Bigg Date: Wed, 14 Dec 2022 09:21:38 +1100 Subject: [PATCH] Add sadd_returns_boolean + sadd? method (#217) * Add sadd_returns_boolean + sadd? method * adding comment about said var Co-authored-by: Michael Bianco --- lib/redis/namespace.rb | 8 ++++++++ spec/redis_spec.rb | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/lib/redis/namespace.rb b/lib/redis/namespace.rb index 85172a7..d76622a 100644 --- a/lib/redis/namespace.rb +++ b/lib/redis/namespace.rb @@ -138,6 +138,7 @@ class Namespace "rpush" => [ :first ], "rpushx" => [ :first ], "sadd" => [ :first ], + "sadd?" => [ :first ], "scard" => [ :first ], "scan" => [ :scan_style, :second ], "scan_each" => [ :scan_style, :all ], @@ -239,6 +240,13 @@ class Namespace # Support 1.8.7 by providing a namespaced reference to Enumerable::Enumerator Enumerator = Enumerable::Enumerator unless defined?(::Enumerator) + # This is used by the Redis gem to determine whether or not to display that deprecation message. + @sadd_returns_boolean = true + + class << self + attr_accessor :sadd_returns_boolean + end + attr_writer :namespace attr_reader :redis attr_accessor :warning diff --git a/spec/redis_spec.rb b/spec/redis_spec.rb index 49993d1..3d1a733 100644 --- a/spec/redis_spec.rb +++ b/spec/redis_spec.rb @@ -358,6 +358,11 @@ expect(values).to match_array(['banana', 'eggplant']) end + it "should add a new member" do + expect(@namespaced.sadd?('foo', 1)).to eq(true) + expect(@namespaced.sadd?('foo', 1)).to eq(false) + end + it "should add namespace to sort" do @namespaced.sadd('foo', 1) @namespaced.sadd('foo', 2)