resque-priority 0.1 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +13 -1
- data/lib/resque/plugins/priority.rb +1 -1
- data/resque-priority.gemspec +6 -2
- data/spec/priority_spec.rb +47 -0
- data/spec/spec_helper.rb +11 -0
- metadata +8 -4
data/Rakefile
CHANGED
@@ -3,7 +3,7 @@ begin
|
|
3
3
|
|
4
4
|
Jeweler::Tasks.new do |gem|
|
5
5
|
gem.name = "resque-priority"
|
6
|
-
gem.version = "0.1"
|
6
|
+
gem.version = "0.1.1"
|
7
7
|
gem.summary = "Resque plugin that provides priority levels"
|
8
8
|
gem.description = <<-desc
|
9
9
|
Provides Resque with three levels of (named) priority for a single queue.
|
@@ -22,3 +22,15 @@ begin
|
|
22
22
|
rescue LoadError
|
23
23
|
puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
|
24
24
|
end
|
25
|
+
|
26
|
+
begin
|
27
|
+
require 'rspec/core/rake_task'
|
28
|
+
|
29
|
+
RSpec::Core::RakeTask.new('spec') do |t|
|
30
|
+
t.pattern = FileList['spec/**/*_spec.rb']
|
31
|
+
end
|
32
|
+
|
33
|
+
task :test do
|
34
|
+
Rake::Task['spec'].invoke
|
35
|
+
end
|
36
|
+
end
|
data/resque-priority.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{resque-priority}
|
8
|
-
s.version = "0.1"
|
8
|
+
s.version = "0.1.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Brett Buddin"]
|
12
|
-
s.date = %q{2010-10-
|
12
|
+
s.date = %q{2010-10-26}
|
13
13
|
s.description = %q{ Provides Resque with three levels of (named) priority for a single queue.
|
14
14
|
}
|
15
15
|
s.email = %q{brett@intraspirit.net}
|
@@ -29,6 +29,10 @@ Gem::Specification.new do |s|
|
|
29
29
|
s.require_paths = ["lib"]
|
30
30
|
s.rubygems_version = %q{1.3.7}
|
31
31
|
s.summary = %q{Resque plugin that provides priority levels}
|
32
|
+
s.test_files = [
|
33
|
+
"spec/priority_spec.rb",
|
34
|
+
"spec/spec_helper.rb"
|
35
|
+
]
|
32
36
|
|
33
37
|
if s.respond_to? :specification_version then
|
34
38
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Resque::Plugins::Priority do
|
4
|
+
before(:each) do
|
5
|
+
Resque.redis.flushdb
|
6
|
+
end
|
7
|
+
|
8
|
+
describe :enqueue_with_priority do
|
9
|
+
context "when normal" do
|
10
|
+
before(:each) do
|
11
|
+
Resque.enqueue_with_priority(:normal, TestJob)
|
12
|
+
end
|
13
|
+
|
14
|
+
it "enqueues to normal queue" do
|
15
|
+
Resque.size(:test).should == 1
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
[:high, :low].each do |priority|
|
20
|
+
context "when #{priority}" do
|
21
|
+
before(:each) do
|
22
|
+
Resque.enqueue_with_priority(priority, TestJob)
|
23
|
+
end
|
24
|
+
|
25
|
+
it "enqueues to #{priority} queue" do
|
26
|
+
Resque.size("test_#{priority.to_s}").should == 1
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
describe "performing jobs" do
|
33
|
+
before(:each) do
|
34
|
+
Resque.redis.flushdb
|
35
|
+
Resque.enqueue_with_priority(:high, TestJob)
|
36
|
+
@job = Resque.reserve(:test_high)
|
37
|
+
end
|
38
|
+
|
39
|
+
it "provides priority to the running job" do
|
40
|
+
@job.payload_class.instance_variable_get(:@priority).should == :high
|
41
|
+
end
|
42
|
+
|
43
|
+
it "doesn't modify the queue name" do
|
44
|
+
@job.payload_class.instance_variable_get(:@queue).should == :test
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
data/spec/spec_helper.rb
ADDED
metadata
CHANGED
@@ -5,7 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 1
|
8
|
-
|
8
|
+
- 1
|
9
|
+
version: 0.1.1
|
9
10
|
platform: ruby
|
10
11
|
authors:
|
11
12
|
- Brett Buddin
|
@@ -13,7 +14,7 @@ autorequire:
|
|
13
14
|
bindir: bin
|
14
15
|
cert_chain: []
|
15
16
|
|
16
|
-
date: 2010-10-
|
17
|
+
date: 2010-10-26 00:00:00 -04:00
|
17
18
|
default_executable:
|
18
19
|
dependencies: []
|
19
20
|
|
@@ -32,6 +33,8 @@ files:
|
|
32
33
|
- Rakefile
|
33
34
|
- lib/resque/plugins/priority.rb
|
34
35
|
- resque-priority.gemspec
|
36
|
+
- spec/priority_spec.rb
|
37
|
+
- spec/spec_helper.rb
|
35
38
|
has_rdoc: true
|
36
39
|
homepage: http://github.com/brettbuddin/resque-priority
|
37
40
|
licenses: []
|
@@ -64,5 +67,6 @@ rubygems_version: 1.3.7
|
|
64
67
|
signing_key:
|
65
68
|
specification_version: 3
|
66
69
|
summary: Resque plugin that provides priority levels
|
67
|
-
test_files:
|
68
|
-
|
70
|
+
test_files:
|
71
|
+
- spec/priority_spec.rb
|
72
|
+
- spec/spec_helper.rb
|