class Clockwork::Test::JobHistory

Attributes

history[R]
work_done[R]

Public Class Methods

new(prior_history = {}, prior_work = {}) click to toggle source
# File lib/clockwork/test/job_history.rb, line 4
def initialize(prior_history = {}, prior_work = {})
  @history = prior_history
  @work_done = prior_work
end

Public Instance Methods

block_for(job) click to toggle source
# File lib/clockwork/test/job_history.rb, line 21
def block_for(job)
  work_done[job] || Proc.new {}
end
jobs() click to toggle source
# File lib/clockwork/test/job_history.rb, line 9
def jobs
  history.keys
end
ran_job?(job) click to toggle source
# File lib/clockwork/test/job_history.rb, line 13
def ran_job?(job)
  jobs.include?(job)
end
record(new_events) click to toggle source
# File lib/clockwork/test/job_history.rb, line 25
def record(new_events)
  new_events.each do |event|
    job = event.job

    prior_runs = times_run(job)
    history[job] = prior_runs > 0 ? prior_runs + 1 : 1
    work_done[job] = event.block
  end
end
times_run(job) click to toggle source
# File lib/clockwork/test/job_history.rb, line 17
def times_run(job)
  history[job] || 0
end