class Envirobly::Duration

def format_duration(tms)

def format_duration(tms)
  ms = (tms.real * 1000).to_i
  if ms >= 60_000
    minutes = ms / 60_000
    seconds = (ms % 60_000) / 1000
    sprintf("%dm%ds", minutes, seconds)
  elsif ms >= 1000
    seconds = ms / 1000
    sprintf("%ds", seconds)
  else
    sprintf("%dms", ms)
  end
end

def measure(message = nil)

def measure(message = nil)
  measurement = Benchmark.measure do
    yield
  end
  duration = format_duration(measurement)
  if message.nil?
    puts [ "", green_check, faint(duration) ].join(" ")
  else
    puts sprintf(message, duration)
  end
end