class Mnogootex::Job::Logger

Public Class Methods

new(spinner:, processor:, runners:, porters:) click to toggle source
Calls superclass method
# File lib/mnogootex/job/logger.rb, line 8
def initialize(spinner:, processor:, runners:, porters:)
  super do
    while runners.any?(&:alive?)
      self.class.print_status(runners: runners, spinner: spinner)
      sleep 0.02 # 50 fps
    end
    self.class.print_status(runners: runners, spinner: spinner)
    puts
    self.class.print_outcome(runners: runners, porters: porters, processor: processor)
  end
end
print_outcome(runners:, porters:, processor:) click to toggle source
print_status(runners:, spinner:) click to toggle source

Private Class Methods

colour_by_state(string, runner) click to toggle source
# File lib/mnogootex/job/logger.rb, line 41
def colour_by_state(string, runner)
  if runner.alive?
    string.yellow
  elsif runner.successful?
    string.green
  else
    string.red
  end
end