Class: Whenever::Test::DSLInterpreter

Inherits:
Object
  • Object
show all
Defined in:
lib/whenever/test/dsl.rb

Instance Method Summary collapse

Constructor Details

#initialize(schedule_world, vars) ⇒ DSLInterpreter

Returns a new instance of DSLInterpreter.



3
4
5
6
7
8
# File 'lib/whenever/test/dsl.rb', line 3

def initialize(schedule_world, vars)
  @_world = schedule_world
  vars.each do |name, value|
    instance_variable_set("@#{name}", value)
  end
end

Instance Method Details

#env(name, value) ⇒ Object



26
27
28
# File 'lib/whenever/test/dsl.rb', line 26

def env(name, value)
  @_world.envs[name] = value
end

#every(*args, &block) ⇒ Object



17
18
19
20
# File 'lib/whenever/test/dsl.rb', line 17

def every(*args, &block)
  @_current_every = args
  yield
end

#job_type(job, command) ⇒ Object



10
11
12
13
14
15
# File 'lib/whenever/test/dsl.rb', line 10

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) ⇒ Object



22
23
24
# File 'lib/whenever/test/dsl.rb', line 22

def set(name, value)
  @_world.sets[name] = value
end