resque_stuck_queue 0.2.2 → 0.3.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 +5 -5
- data/lib/resque_stuck_queue.rb +2 -1
- data/lib/resque_stuck_queue/config.rb +10 -1
- data/lib/resque_stuck_queue/version.rb +1 -1
- data/test/test_config.rb +19 -3
- data/test/test_integration.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
SHA512:
|
3
|
-
data.tar.gz: c61972d3ea6fbc28feaf6b720c24fa48c3d78ce06967e2b00762fb5dd3dd6d6ad1014616300b37299ee693b9c4a25dcddfc30a923b85285b35d24fe383639a6c
|
4
|
-
metadata.gz: f3e6cb7aeb0843612de8ccaccd6fcea4efab227d525ca3dcfca053d70e13a229ddd24ae8b43dc4cdc9b5c6bf3bd940fd1fa26dc8657f2ba248fc3fdbe85c590d
|
5
2
|
SHA1:
|
6
|
-
|
7
|
-
|
3
|
+
metadata.gz: 2021e2bdbc288908d56f88f56999a9a059ad3ed1
|
4
|
+
data.tar.gz: 05ec2dbecf9dc7349ab57cff706643f506651577
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 8e2a1730aade6ca73b6f4d73c132af0826e80f6d9918c94a630683cd577557aac75c7a12becb1cabe8f7c5f13c09da48bf0a4383e7d3e1b5a25ce227f42fc419
|
7
|
+
data.tar.gz: 69ec4f75eb76a026529ee1a34768db1fe081360c2267e67937ecda4224ddebd223bd67e295775bd45fd75121c04f3e2acbb2af9d916b3a6b56c77ee5113e6227
|
data/lib/resque_stuck_queue.rb
CHANGED
@@ -25,7 +25,7 @@ module Resque
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def redis
|
28
|
-
@redis ||=
|
28
|
+
@redis ||= config[:redis]
|
29
29
|
HeartbeatJob.redis = @redis
|
30
30
|
end
|
31
31
|
|
@@ -65,6 +65,7 @@ module Resque
|
|
65
65
|
@running = true
|
66
66
|
@stopped = false
|
67
67
|
@threads = []
|
68
|
+
config.validate_required_keys!
|
68
69
|
config.freeze
|
69
70
|
|
70
71
|
reset_keys
|
@@ -41,10 +41,19 @@ module Resque
|
|
41
41
|
super(k)
|
42
42
|
end
|
43
43
|
|
44
|
+
REQUIRED_KEYS = [:redis]
|
45
|
+
def validate_required_keys!
|
46
|
+
REQUIRED_KEYS.each do |k|
|
47
|
+
if self[k].nil?
|
48
|
+
raise NoConfigError, "You must set config[:#{k}]"
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
44
53
|
class NoConfigError < StandardError; end
|
45
54
|
|
46
55
|
def validate_key_exists!(k)
|
47
|
-
if !
|
56
|
+
if !OPTIONS.include?(k)
|
48
57
|
raise NoConfigError, "no such config key #{k} exists!"
|
49
58
|
end
|
50
59
|
end
|
data/test/test_config.rb
CHANGED
@@ -8,6 +8,11 @@ class TestConfig < Minitest::Test
|
|
8
8
|
Resque::StuckQueue.config[:trigger_timeout] = 1
|
9
9
|
Resque::StuckQueue.config[:heartbeat] = 1
|
10
10
|
Resque::StuckQueue.config[:abort_on_exception] = true
|
11
|
+
Resque::StuckQueue.config[:redis] = Redis.new
|
12
|
+
end
|
13
|
+
|
14
|
+
def teardown
|
15
|
+
Resque::StuckQueue.reset!
|
11
16
|
end
|
12
17
|
|
13
18
|
def test_config_has_descriptions
|
@@ -25,10 +30,21 @@ class TestConfig < Minitest::Test
|
|
25
30
|
puts "#{__method__}"
|
26
31
|
begin
|
27
32
|
Resque::StuckQueue.config[:logger] = Logger.new($stdout)
|
28
|
-
start_and_stop_loops_after(
|
33
|
+
start_and_stop_loops_after(1)
|
29
34
|
assert true, "should not have raised"
|
30
|
-
rescue
|
31
|
-
assert false, "should have succeeded with good logger"
|
35
|
+
rescue => e
|
36
|
+
assert false, "should have succeeded with good logger: #{e.inspect}\n#{e.backtrace.join("\n")}"
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
def test_must_set_redis
|
41
|
+
puts "#{__method__}"
|
42
|
+
Resque::StuckQueue.config[:redis] = nil
|
43
|
+
begin
|
44
|
+
start_and_stop_loops_after(1)
|
45
|
+
assert false, "redis cannot be nil"
|
46
|
+
rescue Resque::StuckQueue::Config::NoConfigError => e
|
47
|
+
assert true, "redis cannot be nil: #{e.inspect}\n#{e.backtrace.join("\n")}"
|
32
48
|
end
|
33
49
|
end
|
34
50
|
|
data/test/test_integration.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: resque_stuck_queue
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shai Rosenfeld
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2014-01-
|
12
|
+
date: 2014-01-30 00:00:00 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: redis-mutex
|