Class: Travis::Tools::Formatter

Inherits:
Object
  • Object
show all
Defined in:
lib/travis/tools/formatter.rb

Constant Summary collapse

DAY =
24 * 60 * 60
TIME_FORMAT =
"%Y-%m-%d %H:%M:%S"
CONFIG_KEYS =
['rvm', 'gemfile', 'env', 'jdk', 'otp_release', 'php', 'node_js', 'perl', 'python', 'scala', 'compiler']

Instance Method Summary collapse

Instance Method Details

#duration(seconds, suffix = nil) ⇒ Object


10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/travis/tools/formatter.rb', line 10

def duration(seconds, suffix = nil)
  return "none" if seconds.nil?
  seconds          = (Time.now - seconds).to_i if seconds.is_a? Time
  output           = []
  minutes, seconds = seconds.divmod(60)
  hours, minutes   = minutes.divmod(60)
  output << "#{hours  } hrs" if hours > 0
  output << "#{minutes} min" if minutes > 0
  output << "#{seconds} sec" if seconds > 0 or output.empty?
  output << suffix           if suffix
  output.join(" ")
end

#job_config(config) ⇒ Object


29
30
31
32
33
34
35
# File 'lib/travis/tools/formatter.rb', line 29

def job_config(config)
  output = []
  config.each_pair do |key, value|
    output << "#{key}: #{value}" if CONFIG_KEYS.include? key
  end
  output.join(", ")
end

#time(time) ⇒ Object


23
24
25
26
27
# File 'lib/travis/tools/formatter.rb', line 23

def time(time)
  return "not yet" if time.nil? # or time > Time.now
  #return duration(time, "ago") if Time.now - time < DAY
  time.localtime.strftime(TIME_FORMAT)
end