Class: Crosstest::Core::CLI

Inherits:
Thor
  • Object
show all
Defined in:
lib/crosstest/core/cli.rb

Constant Summary collapse

BUILT_IN_TASKS =
%w(bootstrap)

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.extra_argsObject

Override Thor’s start to strip extra_args from ARGV before it’s processed



11
12
13
# File 'lib/crosstest/core/cli.rb', line 11

def extra_args
  @extra_args
end

Class Method Details

.start(given_args = ARGV, config = {}) ⇒ Object



13
14
15
16
17
18
19
20
21
22
# File 'lib/crosstest/core/cli.rb', line 13

def start(given_args = ARGV, config = {})
  if given_args && (split_pos = given_args.index('--'))
    @extra_args = given_args.slice(split_pos + 1, given_args.length).map do | arg |
      # Restore quotes
      arg.match(/\=/) ? restore_quotes(arg) : arg
    end
    given_args = given_args.slice(0, split_pos)
  end
  super given_args, config
end