class Whenever::Test::DSLInterpreter

Public Class Methods

new(schedule_world) click to toggle source
# File lib/whenever/test/dsl.rb, line 3
def initialize(schedule_world)
  @_world = schedule_world
end

Public Instance Methods

env(name, value) click to toggle source
# File lib/whenever/test/dsl.rb, line 26
def env(name, value)
  @_world.envs[name] = value
end
every(*args) { || ... } click to toggle source
# File lib/whenever/test/dsl.rb, line 14
def every(*args, &block)
  @_current_every = args
  yield
end
job_type(job, command) click to toggle source
# File lib/whenever/test/dsl.rb, line 7
def job_type(job, command)
  @_world.jobs[job] = []
  define_singleton_method(job) do |task, *_args|
    @_world.jobs[job] << StrictHash[task: task, every: @_current_every, command: command]
  end
end
set(name, value) click to toggle source
# File lib/whenever/test/dsl.rb, line 19
def set(name, value)
  instance_variable_set("@#{name}".to_sym, value)
  self.class.send(:attr_reader, name.to_sym)

  @_world.sets[name] = value
end