Skip to content
Permalink
Browse files

Add days_in_year method

  • Loading branch information
pacso authored and fxn committed Nov 11, 2015
1 parent 9ccb341 commit 2f4f4d2cf1e4c5a442459fc250daf66186d110fa
@@ -3,12 +3,17 @@

To opt-in load the [listen](https://github.com/guard/listen) gem in `Gemfile`:

group :development do
gem 'listen', '~> 3.0.4'
end
group :development do
gem 'listen', '~> 3.0.4'
end

*Puneet Agarwal* and *Xavier Noria*

* Added `Time#days_in_year` to return the number of days in the given year, or the
current year if no argument is provided.

*Jon Pascoe*

* Updated `parameterize` to preserve the case of a string, optionally.

Example:
@@ -26,6 +26,12 @@ def days_in_month(month, year = current.year)
end
end

# Returns the number of days in the given year.
# If no year is specified, it will use the current year.
def days_in_year(year = current.year)
days_in_month(2, year) + 337
end

# Returns <tt>Time.zone.now</tt> when <tt>Time.zone</tt> or <tt>config.time_zone</tt> are set, otherwise just returns <tt>Time.now</tt>.
def current
::Time.zone ? ::Time.zone.now : ::Time.now
@@ -617,6 +617,25 @@ def test_days_in_month_feb_in_leap_year_without_year_arg
end
end

def test_days_in_year_with_year
assert_equal 365, Time.days_in_year(2005)
assert_equal 366, Time.days_in_year(2004)
assert_equal 366, Time.days_in_year(2000)
assert_equal 365, Time.days_in_year(1900)
end

def test_days_in_year_in_common_year_without_year_arg
Time.stub(:now, Time.utc(2007)) do
assert_equal 365, Time.days_in_year
end
end

def test_days_in_year_in_leap_year_without_year_arg
Time.stub(:now, Time.utc(2008)) do
assert_equal 366, Time.days_in_year
end
end

def test_last_month_on_31st
assert_equal Time.local(2004, 2, 29), Time.local(2004, 3, 31).last_month
end

0 comments on commit 2f4f4d2

Please sign in to comment.
You can’t perform that action at this time.