class Knapsack::Adapters::BaseAdapter

Constants

REPORT_PATH
TEST_DIR_PATTERN

Just examples, please overwrite constants in subclasses

Public Class Methods

bind() click to toggle source
# File lib/knapsack/adapters/base_adapter.rb, line 8
def self.bind
  adapter = new
  adapter.bind
  adapter
end

Public Instance Methods

bind() click to toggle source
# File lib/knapsack/adapters/base_adapter.rb, line 14
def bind
  update_report_config

  if tracker.config[:generate_report]
    Knapsack.logger.info 'Knapsack report generator started!'
    bind_time_tracker
    bind_report_generator
  elsif tracker.config[:enable_time_offset_warning]
    Knapsack.logger.info 'Knapsack time offset warning enabled!'
    bind_time_tracker
    bind_time_offset_warning
  else
    Knapsack.logger.warn 'Knapsack adapter is off!'
  end
end
bind_report_generator() click to toggle source
# File lib/knapsack/adapters/base_adapter.rb, line 34
def bind_report_generator
  raise NotImplementedError
end
bind_time_offset_warning() click to toggle source
# File lib/knapsack/adapters/base_adapter.rb, line 38
def bind_time_offset_warning
  raise NotImplementedError
end
bind_time_tracker() click to toggle source
# File lib/knapsack/adapters/base_adapter.rb, line 30
def bind_time_tracker
  raise NotImplementedError
end

Private Instance Methods

tracker() click to toggle source
# File lib/knapsack/adapters/base_adapter.rb, line 44
def tracker
  Knapsack.tracker
end
update_report_config() click to toggle source
# File lib/knapsack/adapters/base_adapter.rb, line 48
def update_report_config
  current_test_file_pattern = Knapsack.report.config[:test_file_pattern]
  current_report_path = Knapsack.report.config[:report_path]

  Knapsack.report.config({
    test_file_pattern: Knapsack::Config::Env.test_file_pattern || current_test_file_pattern || self.class::TEST_DIR_PATTERN,
    report_path: Knapsack::Config::Env.report_path || current_report_path || self.class::REPORT_PATH
  })
end