aboutsummaryrefslogtreecommitdiffstats
path: root/activejob/lib/active_job/queue_adapters/test_adapter.rb
diff options
context:
space:
mode:
authorAbdelkader Boudih <terminale@gmail.com>2014-09-14 22:11:03 +0000
committerAbdelkader Boudih <terminale@gmail.com>2014-09-14 22:11:52 +0000
commitb820eb2027a8268a8ef8d4e9d99e319b8ebb3d78 (patch)
treed31dfba240c3a4ed15fa98128952bd0431793191 /activejob/lib/active_job/queue_adapters/test_adapter.rb
parente3a65c6d7ca1f232dcd70359e76b7d5ebc08fe2f (diff)
downloadrails-b820eb2027a8268a8ef8d4e9d99e319b8ebb3d78.tar.gz
rails-b820eb2027a8268a8ef8d4e9d99e319b8ebb3d78.tar.bz2
rails-b820eb2027a8268a8ef8d4e9d99e319b8ebb3d78.zip
simplify test_adapter
Diffstat (limited to 'activejob/lib/active_job/queue_adapters/test_adapter.rb')
-rw-r--r--activejob/lib/active_job/queue_adapters/test_adapter.rb47
1 files changed, 4 insertions, 43 deletions
diff --git a/activejob/lib/active_job/queue_adapters/test_adapter.rb b/activejob/lib/active_job/queue_adapters/test_adapter.rb
index b9997efddf..12ef72310d 100644
--- a/activejob/lib/active_job/queue_adapters/test_adapter.rb
+++ b/activejob/lib/active_job/queue_adapters/test_adapter.rb
@@ -1,52 +1,22 @@
module ActiveJob
module QueueAdapters
class TestAdapter
- attr_accessor(:perform_enqueued_jobs) { false }
- attr_accessor(:perform_enqueued_at_jobs) { false }
delegate :name, to: :class
+ attr_accessor(:perform_enqueued_jobs, :perform_enqueued_at_jobs)
+ attr_writer(:enqueued_jobs, :performed_jobs)
# Provides a store of all the enqueued jobs with the TestAdapter so you can check them.
def enqueued_jobs
@enqueued_jobs ||= []
end
- # Allows you to overwrite the default enqueued jobs store from an array to some
- # other object. If you just want to clear the store,
- # call ActiveJob::QueueAdapters::TestAdapter.enqueued_jobs.clear.
- #
- # If you place another object here, please make sure it responds to:
- #
- # * << (message)
- # * clear
- # * length
- # * size
- # * and other common Array methods
- def enqueued_jobs=(val)
- @enqueued_jobs = val
- end
-
# Provides a store of all the performed jobs with the TestAdapter so you can check them.
def performed_jobs
@performed_jobs ||= []
end
- # Allows you to overwrite the default performed jobs store from an array to some
- # other object. If you just want to clear the store,
- # call ActiveJob::QueueAdapters::TestAdapter.performed_jobs.clear.
- #
- # If you place another object here, please make sure it responds to:
- #
- # * << (message)
- # * clear
- # * length
- # * size
- # * and other common Array methods
- def performed_jobs=(val)
- @performed_jobs = val
- end
-
def enqueue(job)
- if perform_enqueued_jobs?
+ if perform_enqueued_jobs
performed_jobs << {job: job.class, args: job.arguments, queue: job.queue_name}
job.perform_now
else
@@ -55,22 +25,13 @@ module ActiveJob
end
def enqueue_at(job, timestamp)
- if perform_enqueued_at_jobs?
+ if perform_enqueued_at_jobs
performed_jobs << {job: job.class, args: job.arguments, queue: job.queue_name, at: timestamp}
job.perform_now
else
enqueued_jobs << {job: job.class, args: job.arguments, queue: job.queue_name, at: timestamp}
end
end
-
- private
- def perform_enqueued_jobs?
- perform_enqueued_jobs
- end
-
- def perform_enqueued_at_jobs?
- perform_enqueued_at_jobs
- end
end
end
end