Class: Polytrix::Command::Action

Inherits:
Base
  • Object
show all
Includes:
RunAction
Defined in:
lib/polytrix/command/action.rb

Constant Summary

Constants inherited from Base

Base::SUPPORTED_EXTENSIONS

Instance Method Summary collapse

Methods included from RunAction

#run_action

Methods inherited from Base

#initialize

Methods included from Polytrix::Core::FileSystemHelper

#find_file, #recursive_parent_search

Methods included from StringHelpers

included

Methods included from StringHelpers::ClassMethods

#slugify

Methods included from DefaultLogger

included

Methods included from DefaultLogger::ClassMethods

#logger

Constructor Details

This class inherits a constructor from Polytrix::Command::Base

Instance Method Details

#callObject

Invoke the command.



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/polytrix/command/action.rb', line 9

def call
  banner "Starting Polytrix (v#{Polytrix::VERSION})"
  elapsed = Benchmark.measure do
    setup
    tests = parse_subcommand(args.first)
    implementors = tests.map(&:implementor).uniq
    # Logging.mdc['command'] = action
    if [:clone, :bootstrap].include? action # actions on implementors
      run_action(action, implementors)
    else # actions on tests
      run_action(action, tests)
    end
  end
  banner "Polytrix is finished. #{Util.duration(elapsed.real)}"
end