redis-namespace 1.3.0 → 1.3.1

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: e20a131134003e74cb1b40bcf3ad11c61dae9d9d
4
- data.tar.gz: f7718c7e9ea9ce7e8a46889c78bebe9a7d4a09ff
3
+ metadata.gz: 838bcd2a161520a3d12b854bc1a441005c7a1d71
4
+ data.tar.gz: ea531ab8ea4ff3fcca0b23bdd98ca9e35eb43755
5
5
  SHA512:
6
- metadata.gz: 00d8dca8c63810e4029cfc5430bb1507f9a1736320633ab703b049fc249c35160d1018151e7f6825f0eba960e868b82e7bd1836c6130fe850941b2825d5dfafd
7
- data.tar.gz: 0fd499ddcf3c019525f6393eb4ba5957ebee559727924ea3c827e20cd57f818cca7e246ace91cea209b3914c7c0dde57e57e334aeab1af4d3e26b88fa7a1a38e
6
+ metadata.gz: 2af8b6ac91666d5f686d700886637b70fca79374768b076f302540bcc739f1eacd8eec03849bc554e4891b4a99f11a525be481a972eb24fa315ca42b808f1390
7
+ data.tar.gz: 2cdff48f02a69335dd95a2c5ee5974cb4fff6676ff185e27a5d61de12ba5e00d2dc6da82aecccee538cc6c28e4d33e0e08d13f725afee7529fc5934aa200a298
@@ -61,11 +61,13 @@ class Redis
61
61
  "del" => [ :all ],
62
62
  "discard" => [],
63
63
  "dump" => [ :first ],
64
+ "echo" => [],
64
65
  "exists" => [ :first ],
65
66
  "expire" => [ :first ],
66
67
  "expireat" => [ :first ],
67
68
  "eval" => [ :eval_style ],
68
69
  "evalsha" => [ :eval_style ],
70
+ "exec" => [],
69
71
  "flushall" => [],
70
72
  "flushdb" => [],
71
73
  "get" => [ :first ],
@@ -152,6 +154,7 @@ class Redis
152
154
  "spop" => [ :first ],
153
155
  "srandmember" => [ :first ],
154
156
  "srem" => [ :first ],
157
+ "strlen" => [ :first ],
155
158
  "subscribe" => [ :all ],
156
159
  "sunion" => [ :all ],
157
160
  "sunionstore" => [ :all ],
@@ -217,7 +220,11 @@ class Redis
217
220
  end
218
221
 
219
222
  def multi(&block)
220
- namespaced_block(:multi, &block)
223
+ if block_given?
224
+ namespaced_block(:multi, &block)
225
+ else
226
+ method_missing(:multi)
227
+ end
221
228
  end
222
229
 
223
230
  def pipelined(&block)
@@ -233,6 +240,10 @@ class Redis
233
240
  @namespace
234
241
  end
235
242
 
243
+ def exec
244
+ method_missing(:exec)
245
+ end
246
+
236
247
  def method_missing(command, *args, &block)
237
248
  handling = COMMANDS[command.to_s] ||
238
249
  COMMANDS[ALIASES[command.to_s]]
@@ -305,6 +316,9 @@ class Redis
305
316
  # Dispatch the command to Redis and store the result.
306
317
  result = @redis.send(command, *args, &block)
307
318
 
319
+ # Don't try to remove namespace from a Redis::Future, you can't.
320
+ return result if result.is_a?(Redis::Future)
321
+
308
322
  # Remove the namespace from results that are keys.
309
323
  case after
310
324
  when :all
data/spec/redis_spec.rb CHANGED
@@ -253,6 +253,24 @@ describe "redis" do
253
253
  @namespaced.hgetall("foo").should eq({"key1" => "value1"})
254
254
  end
255
255
 
256
+ it "should pass through multi commands without block" do
257
+ @namespaced.mapped_hmset "foo", {"key" => "value"}
258
+
259
+ @namespaced.multi
260
+ @namespaced.del "foo"
261
+ @namespaced.mapped_hmset "foo", {"key1" => "value1"}
262
+ @namespaced.exec
263
+
264
+ @namespaced.hgetall("foo").should eq({"key1" => "value1"})
265
+ end
266
+
267
+ it 'should return futures without attempting to remove namespaces' do
268
+ @namespaced.multi do
269
+ @future = @namespaced.keys('*')
270
+ end
271
+ @future.class.should be(Redis::Future)
272
+ end
273
+
256
274
  it "should add namespace to pipelined blocks" do
257
275
  @namespaced.mapped_hmset "foo", {"key" => "value"}
258
276
  @namespaced.pipelined do |r|
@@ -271,6 +289,15 @@ describe "redis" do
271
289
  result.should eq(["bar", "value"])
272
290
  end
273
291
 
292
+ it "should add namespace to strlen" do
293
+ @namespaced.set("mykey", "123456")
294
+ @namespaced.strlen("mykey").should eq(6)
295
+ end
296
+
297
+ it "should not add namespace to echo" do
298
+ @namespaced.echo(123).should eq("123")
299
+ end
300
+
274
301
  it "can change its namespace" do
275
302
  @namespaced['foo'].should eq(nil)
276
303
  @namespaced['foo'] = 'chris'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redis-namespace
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Wanstrath
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2013-05-03 00:00:00.000000000 Z
13
+ date: 2013-08-03 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: redis
@@ -92,9 +92,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
92
92
  version: '0'
93
93
  requirements: []
94
94
  rubyforge_project:
95
- rubygems_version: 2.0.0
95
+ rubygems_version: 2.0.2
96
96
  signing_key:
97
97
  specification_version: 4
98
98
  summary: Namespaces Redis commands.
99
99
  test_files: []
100
- has_rdoc: false