mock_redis 0.33.0 → 0.35.0

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
  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