mlanett-redis-lock 0.2.1 → 0.2.2
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.
- data/README.md +8 -1
- data/lib/redis-lock.rb +1 -1
- data/lib/redis-lock/version.rb +1 -1
- data/spec/redis_lock_spec.rb +26 -4
- metadata +2 -2
data/README.md
CHANGED
@@ -42,7 +42,14 @@ This gem adds lock() and unlock() to Redis instances.
|
|
42
42
|
lock() takes a block and is safer than using lock() and unlock() separately.
|
43
43
|
lock() takes a key and lifetime and optionally a timeout (otherwise defaulting to 10 second).
|
44
44
|
|
45
|
-
redis.lock("test") { do_something }
|
45
|
+
redis.lock("test") { |lock| do_something }
|
46
|
+
|
47
|
+
redis.lock("test") do |lock|
|
48
|
+
array.each do |entry|
|
49
|
+
do_something(entry)
|
50
|
+
lock.extend_life(60)
|
51
|
+
end
|
52
|
+
end
|
46
53
|
|
47
54
|
## Problems
|
48
55
|
|
data/lib/redis-lock.rb
CHANGED
data/lib/redis-lock/version.rb
CHANGED
data/spec/redis_lock_spec.rb
CHANGED
@@ -20,10 +20,32 @@ describe Redis::Lock, redis: true do
|
|
20
20
|
hers.should_not be_locked
|
21
21
|
end
|
22
22
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
23
|
+
context "when using blocks" do
|
24
|
+
|
25
|
+
it 'returns the return value of the block' do
|
26
|
+
hers.lock do
|
27
|
+
1
|
28
|
+
end.should eql(1)
|
29
|
+
end
|
30
|
+
|
31
|
+
it "returns the return value of the lambda" do
|
32
|
+
action = ->() { 1 }
|
33
|
+
hers.lock( &action ).should eq(1)
|
34
|
+
end
|
35
|
+
|
36
|
+
it "passes the lock into a supplied block" do
|
37
|
+
hers.lock do |lock|
|
38
|
+
lock.should be_an_instance_of(Redis::Lock)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
it "passes the lock into a supplied lambda" do
|
43
|
+
action = ->(lock) do
|
44
|
+
lock.should be_an_instance_of(Redis::Lock)
|
45
|
+
end
|
46
|
+
hers.lock( &action )
|
47
|
+
end
|
48
|
+
|
27
49
|
end
|
28
50
|
|
29
51
|
it "can prevent other use of a lock" do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mlanett-redis-lock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-04-
|
12
|
+
date: 2013-04-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: redis
|