rediska 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a0e2535c4c3965a1351f7b85a4c3964acf14bb0a
4
- data.tar.gz: 54c201be85c57b6a3e588dfef16df40fe9d20734
3
+ metadata.gz: 7e6b09f7a5e0c936072d606a17d871a1a757b323
4
+ data.tar.gz: 04919345e483ac436c628353699ff663c6c40041
5
5
  SHA512:
6
- metadata.gz: d86f1268b575816e6799cb0b732cf7167ed660fe11980bcc98503ca649afdddcb0681992eb16172e9907b5e231a27fa1837d1bede62e557eabc083c0a6cb14fd
7
- data.tar.gz: cf60f6f8a9bdef6bda2ef8f3f34ab25ea9f4097b452d2b5824f6a4e38e624cad96869dd86e165c9ecac30b8244c03de6dc04e7c62082d3c45ab0dec3443cec96
6
+ metadata.gz: 54f25ffdac7764ddb8f4c208806d74642a02c0f99114665570513d7837fbc3329076d9afb4a54c6c38ed196c5fdfbf872aaa75486ccd54808f41801fc5287382
7
+ data.tar.gz: 0c3653a317432cdfac0317df4e3cf102f8e3965c7f51c20325312f757faa4d8b4f41428dc95c3e6dce6b168ab160f0d7b316fa8ed6ab86f90a360439fe1bdc2f
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rediska (0.1.4)
4
+ rediska (0.1.5)
5
5
  redis (>= 3)
6
6
 
7
7
  GEM
@@ -17,7 +17,7 @@ GEM
17
17
  term-ansicolor
18
18
  thor
19
19
  diff-lcs (1.2.5)
20
- docile (1.1.3)
20
+ docile (1.1.5)
21
21
  json (1.8.1)
22
22
  mime-types (2.3)
23
23
  multi_json (1.10.1)
@@ -33,15 +33,15 @@ GEM
33
33
  rspec-core (~> 3.0.0)
34
34
  rspec-expectations (~> 3.0.0)
35
35
  rspec-mocks (~> 3.0.0)
36
- rspec-core (3.0.0)
36
+ rspec-core (3.0.1)
37
37
  rspec-support (~> 3.0.0)
38
- rspec-expectations (3.0.0)
38
+ rspec-expectations (3.0.1)
39
39
  diff-lcs (>= 1.2.0, < 2.0)
40
40
  rspec-support (~> 3.0.0)
41
- rspec-mocks (3.0.0)
41
+ rspec-mocks (3.0.1)
42
42
  rspec-support (~> 3.0.0)
43
43
  rspec-support (3.0.0)
44
- sidekiq (3.1.3)
44
+ sidekiq (3.1.4)
45
45
  celluloid (>= 0.15.2)
46
46
  connection_pool (>= 2.0.0)
47
47
  json
@@ -330,7 +330,16 @@ module Rediska
330
330
 
331
331
  def srem(key, value)
332
332
  data_type_check(key, ::Set)
333
- deleted = !!(data[key] && data[key].delete?(value.to_s))
333
+ return false unless data[key]
334
+
335
+ if value.is_a?(Array)
336
+ old_size = data[key].size
337
+ value.map(&:to_s).each { |v| data[key].delete(v) }
338
+ deleted = old_size - data[key].size
339
+ else
340
+ deleted = !!data[key].delete?(value.to_s)
341
+ end
342
+
334
343
  remove_key_for_empty_collection(key)
335
344
  deleted
336
345
  end
@@ -1,3 +1,3 @@
1
1
  module Rediska
2
- VERSION = '0.1.4'.freeze
2
+ VERSION = '0.1.5'.freeze
3
3
  end
@@ -1,6 +1,6 @@
1
1
  shared_examples 'driver' do
2
2
  describe '#time' do
3
- before(:each) do
3
+ before do
4
4
  allow(Time).to receive_message_chain(:now, :to_f).and_return(1397845595.5139461)
5
5
  end
6
6
 
data/spec/support/sets.rb CHANGED
@@ -143,6 +143,14 @@ shared_examples 'sets' do
143
143
  expect(subject.smembers('key1')).to match_array(['b'])
144
144
  end
145
145
 
146
+ it "should remove multiple members from a set" do
147
+ subject.sadd('key1', 'a')
148
+ subject.sadd('key1', 'b')
149
+
150
+ expect(subject.srem('key1', [ 'a', 'b'])).to eq(2)
151
+ expect(subject.smembers('key1')).to be_empty
152
+ end
153
+
146
154
  it "should remove the set's key once it's empty" do
147
155
  subject.sadd('key1', 'a')
148
156
  subject.sadd('key1', 'b')
@@ -180,10 +188,6 @@ shared_examples 'sets' do
180
188
  end
181
189
 
182
190
  describe 'srandmember' do
183
- before(:each) do
184
- @client = Redis.new
185
- end
186
-
187
191
  context 'with a set that has three elements' do
188
192
  before do
189
193
  subject.sadd('key1', 'a')
@@ -70,7 +70,7 @@ shared_examples 'sorted_method' do
70
70
  end
71
71
 
72
72
  describe '#sort' do
73
- before(:each) do
73
+ before do
74
74
  subject.set('fake-redis-test:values_1', 'a')
75
75
  subject.set('fake-redis-test:values_2', 'b')
76
76
 
@@ -39,7 +39,7 @@ shared_examples 'transactions' do
39
39
  end
40
40
 
41
41
  context 'saving up commands for later' do
42
- before(:each) do
42
+ before do
43
43
  subject.multi
44
44
  end
45
45
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rediska
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Leonid Beder
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-06 00:00:00.000000000 Z
11
+ date: 2014-06-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: redis