mock_redis 0.33.0 → 0.35.0

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
  SHA256:
3
- metadata.gz: 764d3b747c037b933788f2d4ef01e581ecb509aa8c3e445d12c27d199d2273fe
4
- data.tar.gz: 9093a8b7601c57e746dd38d7708c52474df56247ea0910ca4d8d7bcecca9506e
3
+ metadata.gz: ac517fcc81e569da0e5e0512027dd381ebd8c0553aaa9aa373ffb7be3afe983e
4
+ data.tar.gz: 5e64b3ac11ab9c403165c082b8c2db641858ffd7430a6f6fd1c3c88c1d7b7090
5
5
  SHA512:
6
- metadata.gz: c7ef20dba317c18d0ab4de7d5d0a87107512cb2398c7d9c549a603a1980fbced844c7b98c547db32fb905a32ed68cdfa25ba9331b03a91512c8c1d1f6d45551a
7
- data.tar.gz: 29570271c68cf37d7fd09c065cdad79e1ac64e9b1aa3bdb28dbf0d2080983cc758ad4632e13ad132d492dc823afef8dd7a7a9cec14dfbefb6a7e49a840c74c8c
6
+ metadata.gz: c4ab0e03ac161be256d4920837fe1cc70da6ae57f29b4e75c1f2eec404b46ad2efa5679552b089eddd3234d49eb85a8ec0f1a51cbfa118654da31a0c43f4c7cb
7
+ data.tar.gz: 8c97fae25f874bdbbaedd52e0ac10bd793fae3cb711e7e6a368147301fbc653a35d0630e9c0ae172cc625b2b9c4f266d9d7dd08fe92441cfc5e04156d98a1ebd
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # MockRedis Changelog
2
2
 
3
+ ### 0.35.0
4
+
5
+ * Add support for `getdel`
6
+
7
+ ### 0.34.0
8
+
9
+ * Add support for `with`
10
+
3
11
  ### 0.33.0
4
12
 
5
13
  * Add support for `GET` argument to `SET` command
data/README.md CHANGED
@@ -105,7 +105,7 @@ We recommend running Redis within a Docker container to make development as simp
105
105
 
106
106
  1. Start Redis.
107
107
  ```bash
108
- docker run --rm -p 6379:6379 redis
108
+ docker run --rm -p 6379:6379 redis:6.2-alpine
109
109
  ```
110
110
  2. Install dependencies.
111
111
  ```bash
@@ -107,6 +107,12 @@ class MockRedis
107
107
  end
108
108
  end
109
109
 
110
+ def getdel(key)
111
+ value = get(key)
112
+ del(key)
113
+ value
114
+ end
115
+
110
116
  def getrange(key, start, stop)
111
117
  assert_stringy(key)
112
118
  (data[key] || '')[start..stop]
@@ -2,5 +2,5 @@
2
2
 
3
3
  # Defines the gem version.
4
4
  class MockRedis
5
- VERSION = '0.33.0'
5
+ VERSION = '0.35.0'
6
6
  end
data/lib/mock_redis.rb CHANGED
@@ -86,6 +86,10 @@ class MockRedis
86
86
  self
87
87
  end
88
88
 
89
+ def with
90
+ yield self
91
+ end
92
+
89
93
  def respond_to?(method, include_private = false)
90
94
  super || @db.respond_to?(method, include_private)
91
95
  end
data/spec/client_spec.rb CHANGED
@@ -26,4 +26,11 @@ describe 'client' do
26
26
  expect(MockRedis.new).to respond_to(:close)
27
27
  end
28
28
  end
29
+
30
+ context '#with' do
31
+ it 'supports with' do
32
+ redis = MockRedis.new
33
+ redis.with { |c| c.set('key', 'value') }.should == 'OK'
34
+ end
35
+ end
29
36
  end
@@ -0,0 +1,24 @@
1
+ require 'spec_helper'
2
+
3
+ describe '#getdel(key)' do
4
+ before do
5
+ @key = 'mock-redis-test:73288'
6
+ end
7
+
8
+ it 'returns nil for a nonexistent value' do
9
+ @redises.getdel('mock-redis-test:does-not-exist').should be_nil
10
+ end
11
+
12
+ it 'returns a stored string value' do
13
+ @redises.set(@key, 'forsooth')
14
+ @redises.getdel(@key).should == 'forsooth'
15
+ end
16
+
17
+ it 'deletes the key after returning it' do
18
+ @redises.set(@key, 'forsooth')
19
+ @redises.getdel(@key)
20
+ @redises.get(@key).should be_nil
21
+ end
22
+
23
+ it_should_behave_like 'a string-only command'
24
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mock_redis
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.33.0
4
+ version: 0.35.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shane da Silva
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-08-20 00:00:00.000000000 Z
12
+ date: 2022-12-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: ruby2_keywords
@@ -164,6 +164,7 @@ files:
164
164
  - spec/commands/geopos_spec.rb
165
165
  - spec/commands/get_spec.rb
166
166
  - spec/commands/getbit_spec.rb
167
+ - spec/commands/getdel.rb
167
168
  - spec/commands/getrange_spec.rb
168
169
  - spec/commands/getset_spec.rb
169
170
  - spec/commands/hdel_spec.rb
@@ -351,6 +352,7 @@ test_files:
351
352
  - spec/commands/geopos_spec.rb
352
353
  - spec/commands/get_spec.rb
353
354
  - spec/commands/getbit_spec.rb
355
+ - spec/commands/getdel.rb
354
356
  - spec/commands/getrange_spec.rb
355
357
  - spec/commands/getset_spec.rb
356
358
  - spec/commands/hdel_spec.rb