Module: Liri::Common::Duration
- Defined in:
- lib/common/duration.rb
Overview
Módulo Duration
Este módulo se encarga de convertir el tiempo en segundos a un formato legible
Class Method Summary collapse
Class Method Details
.humanize(time, times_round:, times_round_type:) ⇒ Object
15 16 17 18 19 20 21 22 23 24 |
# File 'lib/common/duration.rb', line 15 def humanize(time, times_round:, times_round_type:) # El time puede ser un BigDecimal y aunque se redondee puede responder con un formato 0.744e2, por eso # es imporantes hacerle un to_f para convertirlo a 74.4 antes de proceder a humanizarlo time = time.to_f case times_round_type when :floor then ChronicDuration.output(time.truncate(times_round), format: :short, keep_zero: true) when :roof then ChronicDuration.output(time.round(times_round), format: :short, keep_zero: true) else raise "Invalid times_round_type. Expected: floor or roof. Received: #{times_round_type}" end end |