Class: Dk::TestRunner

Inherits:
Runner
  • Object
show all
Includes:
HasTheRuns, HasTheStubs
Defined in:
lib/dk/test_runner.rb

Constant Summary

Constants inherited from Runner

Runner::CMD_LOG_PREFIX, Runner::CMD_SSH_OUT_LOG_PREFIX, Runner::INDENT_LOG_PREFIX, Runner::SSH_LOG_PREFIX, Runner::TASK_END_LOG_PREFIX, Runner::TASK_START_LOG_PREFIX

Instance Attribute Summary collapse

Attributes inherited from Runner

#logger, #params

Instance Method Summary collapse

Methods inherited from Runner

#add_task_callback, #has_run_task?, #initialize, #log_cli_run, #log_cli_task_run, #log_debug, #log_error, #log_info, #log_task_run, #pretty_run_time, #task_callback_task_classes, #task_callbacks

Constructor Details

This class inherits a constructor from Dk::Runner

Instance Attribute Details

#task_classObject

Returns the value of attribute task_class.



14
15
16
# File 'lib/dk/test_runner.rb', line 14

def task_class
  @task_class
end

Instance Method Details

#cmd(task, cmd_str, input, given_opts) ⇒ Object

track that a local cmd was run



27
28
29
# File 'lib/dk/test_runner.rb', line 27

def cmd(task, cmd_str, input, given_opts)
  super(task, cmd_str, input, given_opts).tap{ |c| self.runs << c }
end

#run(params = nil) ⇒ Object

test runners are designed to only run their task



17
18
19
# File 'lib/dk/test_runner.rb', line 17

def run(params = nil)
  self.task(params).tap(&:dk_run)
end

#run_task(task_class, params = nil) ⇒ Object

don’t run any sub-tasks, just track that a sub-task was run



22
23
24
# File 'lib/dk/test_runner.rb', line 22

def run_task(task_class, params = nil)
  TaskRun.new(task_class, params).tap{ |tr| self.runs << tr }
end

#ssh(task, cmd_str, input, given_opts, ssh_opts) ⇒ Object

track that a remote cmd was run



32
33
34
# File 'lib/dk/test_runner.rb', line 32

def ssh(task, cmd_str, input, given_opts, ssh_opts)
  super(task, cmd_str, input, given_opts, ssh_opts).tap{ |c| self.runs << c }
end

#task(params = nil) ⇒ Object

test task API



38
39
40
# File 'lib/dk/test_runner.rb', line 38

def task(params = nil)
  @task ||= build_task(self.task_class, params)
end