rediska 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
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