Skip to content

Commit 33c0f8a

Browse files
committed
Job objects know if they are equal.
1 parent 44ef9e8 commit 33c0f8a

File tree

3 files changed

+15
-0
lines changed

3 files changed

+15
-0
lines changed

HISTORY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
* Bugfix: Yajl decoder doesn't care about valid UTF-8
66
* config.ru loads RESQUECONFIG if the ENV variable is set.
77
* `resque-web` now sets RESQUECONFIG
8+
* Job objects know if they are equal.
89

910
## 1.2.0 (2009-11-25)
1011

lib/resque/job.rb

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,5 +86,12 @@ def inspect
8686
obj = @payload
8787
"(Job{%s} | %s | %s)" % [ @queue, obj['class'], obj['args'].inspect ]
8888
end
89+
90+
# Equality
91+
def ==(other)
92+
queue == other.queue &&
93+
payload_class = other.payload_class &&
94+
args == other.args
95+
end
8996
end
9097
end

test/resque_test.rb

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,13 @@
4747
assert_equal '(Job{jobs} | SomeJob | [20, "/tmp"])', job.inspect
4848
end
4949

50+
test "jobs can test for equality" do
51+
assert Resque::Job.create(:jobs, 'SomeJob', 20, '/tmp')
52+
assert Resque::Job.create(:jobs, 'some-job', 20, '/tmp')
53+
job = Resque.reserve(:jobs)
54+
assert_equal job, Resque.reserve(:jobs)
55+
end
56+
5057
test "can put jobs on a queue by way of a method" do
5158
assert_equal 0, Resque.size(:method)
5259
assert Resque.enqueue(SomeMethodJob, 20, '/tmp')

0 commit comments

Comments
 (0)