resque_jobs_tree 0.3.4 → 0.4.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.
- data/lib/resque_jobs_tree.rb +25 -3
- data/lib/resque_jobs_tree/definitions.rb +15 -0
- data/lib/resque_jobs_tree/definitions/node.rb +77 -0
- data/lib/resque_jobs_tree/definitions/tree.rb +39 -0
- data/lib/resque_jobs_tree/factory.rb +7 -7
- data/lib/resque_jobs_tree/job.rb +13 -31
- data/lib/resque_jobs_tree/node.rb +64 -60
- data/lib/resque_jobs_tree/resources_serializer.rb +2 -3
- data/lib/resque_jobs_tree/storage.rb +5 -112
- data/lib/resque_jobs_tree/storage/node.rb +80 -0
- data/lib/resque_jobs_tree/storage/tree.rb +26 -0
- data/lib/resque_jobs_tree/tree.rb +32 -27
- data/lib/resque_jobs_tree/version.rb +1 -1
- data/test/definitions_test.rb +99 -0
- data/test/factory_test.rb +3 -4
- data/test/job_test.rb +6 -8
- data/test/process_test.rb +214 -0
- data/test/resources_serializer_test.rb +6 -6
- data/test/storage_node_test.rb +117 -0
- data/test/storage_tree_test.rb +27 -0
- data/test/test_helper.rb +12 -8
- data/test/tree_test.rb +14 -109
- metadata +15 -6
- data/test/node_test.rb +0 -188
- data/test/storage_test.rb +0 -74
data/test/storage_test.rb
DELETED
@@ -1,74 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
class StorageTest < MiniTest::Unit::TestCase
|
4
|
-
|
5
|
-
def setup
|
6
|
-
create_tree
|
7
|
-
@resources = [1, 2, 3]
|
8
|
-
@root = @tree.find_node_by_name(:job1)
|
9
|
-
@leaf = @tree.find_node_by_name(:job2)
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_store
|
13
|
-
parents_key = ResqueJobsTree::Storage::PARENTS_KEY
|
14
|
-
Resque.redis.del parents_key
|
15
|
-
store
|
16
|
-
assert_equal 1, Resque.redis.hlen(parents_key)
|
17
|
-
childs_key = ResqueJobsTree::Storage.send :childs_key, @root, @resources
|
18
|
-
assert_equal 1, Resque.redis.scard(childs_key)
|
19
|
-
end
|
20
|
-
|
21
|
-
def test_parent_job_args
|
22
|
-
store
|
23
|
-
assert_equal ['tree1', 'job1', 1, 2, 3],
|
24
|
-
ResqueJobsTree::Storage.parent_job_args(@leaf, @resources)
|
25
|
-
end
|
26
|
-
|
27
|
-
def test_remove
|
28
|
-
store
|
29
|
-
variable = 1
|
30
|
-
ResqueJobsTree::Storage.remove @leaf, @resources do
|
31
|
-
variable = 2
|
32
|
-
end
|
33
|
-
assert_equal 2, variable
|
34
|
-
end
|
35
|
-
|
36
|
-
def test_store_already_stored
|
37
|
-
wrong_tree = ResqueJobsTree::Factory.create :tree1 do
|
38
|
-
root :job1 do
|
39
|
-
perform {}
|
40
|
-
childs do |resources|
|
41
|
-
[ [:job2], [:job2] ]
|
42
|
-
end
|
43
|
-
node :job2 do
|
44
|
-
perform {}
|
45
|
-
end
|
46
|
-
end
|
47
|
-
end
|
48
|
-
assert_raises ResqueJobsTree::JobNotUniq do
|
49
|
-
wrong_tree.launch
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
def test_node_info_from_key
|
54
|
-
key = %Q{ResqueJobsTree:Node:["tree1","job1",1,2,3]}
|
55
|
-
result = [@root, [1, 2, 3]]
|
56
|
-
assert_equal result, ResqueJobsTree::Storage.send(:node_info_from_key, key)
|
57
|
-
end
|
58
|
-
|
59
|
-
def test_track_launch
|
60
|
-
resources = [1, 2, 3]
|
61
|
-
ResqueJobsTree::Storage.track_launch(@tree, resources) {}
|
62
|
-
key = ResqueJobsTree::Storage::LAUNCHED_TREES
|
63
|
-
assert_equal [[@tree.name, resources].to_json], redis.smembers(key)
|
64
|
-
ResqueJobsTree::Storage.release_launch(@tree, resources)
|
65
|
-
assert_equal [], redis.smembers(key)
|
66
|
-
end
|
67
|
-
|
68
|
-
private
|
69
|
-
|
70
|
-
def store
|
71
|
-
ResqueJobsTree::Storage.store @leaf, @resources, @leaf.parent, @resources
|
72
|
-
end
|
73
|
-
|
74
|
-
end
|