diff options
author | Chen Kinnrot <kinnrot@gmail.com> | 2017-12-13 10:16:46 +0200 |
---|---|---|
committer | Chen Kinnrot <kinnrot@gmail.com> | 2017-12-13 10:16:46 +0200 |
commit | 041b2052e6d5d715474e34f3625f88f586941bfd (patch) | |
tree | 32b9cf5e4086cb3ccb84eb13b04639eac86fd792 /activesupport/lib/active_support | |
parent | 067fc779c4560fff4812614a2f78f9248f3e55f8 (diff) | |
download | rails-041b2052e6d5d715474e34f3625f88f586941bfd.tar.gz rails-041b2052e6d5d715474e34f3625f88f586941bfd.tar.bz2 rails-041b2052e6d5d715474e34f3625f88f586941bfd.zip |
Empty duration inspect fix
Diffstat (limited to 'activesupport/lib/active_support')
-rw-r--r-- | activesupport/lib/active_support/duration.rb | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/activesupport/lib/active_support/duration.rb b/activesupport/lib/active_support/duration.rb index 1af3411a8a..fe1058762b 100644 --- a/activesupport/lib/active_support/duration.rb +++ b/activesupport/lib/active_support/duration.rb @@ -194,7 +194,6 @@ module ActiveSupport end parts[:seconds] = remainder - parts.reject! { |k, v| v.zero? } new(value, parts) end @@ -211,6 +210,7 @@ module ActiveSupport def initialize(value, parts) #:nodoc: @value, @parts = value, parts.to_h @parts.default = 0 + @parts.reject! { |k, v| v.zero? } end def coerce(other) #:nodoc: @@ -370,6 +370,8 @@ module ActiveSupport alias :before :ago def inspect #:nodoc: + return "0 seconds" if parts.empty? + parts. reduce(::Hash.new(0)) { |h, (l, r)| h[l] += r; h }. sort_by { |unit, _ | PARTS.index(unit) }. |