class KnapsackPro::Runners::BaseRunner

Attributes

allocator[R]
allocator_builder[R]

Public Class Methods

child_status() click to toggle source
# File lib/knapsack_pro/runners/base_runner.rb, line 41
def self.child_status
  $?
end
new(adapter_class) click to toggle source
# File lib/knapsack_pro/runners/base_runner.rb, line 10
def initialize(adapter_class)
  @allocator_builder = KnapsackPro::AllocatorBuilder.new(adapter_class)
  @allocator = allocator_builder.allocator
end
run(args) click to toggle source
# File lib/knapsack_pro/runners/base_runner.rb, line 6
def self.run(args)
  raise NotImplementedError
end

Public Instance Methods

stringify_test_file_paths() click to toggle source
# File lib/knapsack_pro/runners/base_runner.rb, line 19
def stringify_test_file_paths
  KnapsackPro::TestFilePresenter.stringify_paths(test_file_paths)
end
test_dir() click to toggle source
# File lib/knapsack_pro/runners/base_runner.rb, line 23
def test_dir
  allocator_builder.test_dir
end
test_file_paths() click to toggle source
# File lib/knapsack_pro/runners/base_runner.rb, line 15
def test_file_paths
  @test_file_paths ||= allocator.test_file_paths
end
test_files_to_execute_exist?() click to toggle source
# File lib/knapsack_pro/runners/base_runner.rb, line 27
def test_files_to_execute_exist?
  if test_file_paths.empty?
    KnapsackPro.logger.info("Knapsack Pro API returned no test files to execute for the node this time. The reason might be that you changed recently a number of total nodes or you removed some test files. Please create a new commit to get a better test suite split next time.")
    false
  else
    true
  end
end