class Koine::TestRunner::Configuration
Attributes
file_path[R]
Public Class Methods
new(attributes = [])
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 6 def initialize(attributes = []) initialize_options(attributes.dup) initialize_attributes(attributes.dup) end
Public Instance Methods
all?()
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 19 def all? @options[:all] end
config_file()
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 27 def config_file return @options[:config_file] if @options[:config_file] return '.test_runner.yml' if File.exist?('.test_runner.yml') File.expand_path('../../../config/default.yml', __dir__) end
last?()
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 23 def last? @options[:last] end
line()
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 11 def line @options[:line].to_i if line? end
line?()
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 15 def line? @options[:line].to_s.tr('true', '').strip != '' end
run_options()
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 33 def run_options { file_path: file_path, line: line } end
Private Instance Methods
initialize_attributes(arguments)
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 39 def initialize_attributes(arguments) @file_path = arguments.reject { |arg| arg =~ /^--/ }.shift if require_file_name? && @file_path.nil? raise ArgumentError, 'file name was not given' end end
initialize_options(data)
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 51 def initialize_options(data) @options = { all: false } data = data.select { |arg| arg =~ /^--([a-z-]+)/ }.map do |arg| arg.split('--').last.split('=') end data.each do |values| key = values.first value = values.length == 2 ? values.last : true @options[normalize_key(key)] = value end end
normalize_key(key)
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 65 def normalize_key(key) key.tr('-', '_').to_sym end
require_file_name?()
click to toggle source
# File lib/koine/test_runner/configuration.rb, line 47 def require_file_name? !last? end