date_diff
Advanced tools
+8
-8
@@ -12,4 +12,4 @@ require "date_diff/version" | ||
| start_date_month, start_date_day = start_date.month, start_date.day | ||
| end_date_month, end_date_day = end_date.month, end_date.day | ||
| start_date_year, start_date_month, start_date_day = start_date.year, start_date.month, start_date.day | ||
| end_date_year, end_date_month, end_date_day = end_date.year, end_date.month, end_date.day | ||
@@ -20,8 +20,8 @@ day_difference = end_date_day - start_date_day | ||
| day_difference = common_year_days_in_month[start_date_month-1] - start_date_day + end_date_day | ||
| end_date_month = end_date_month -1 | ||
| end_date_month -= 1 | ||
| end | ||
| if (end_date_month < 0) | ||
| end_date_month = end_date_month + 12 | ||
| end_date.year = end_date.year -1 | ||
| end_date_month += 12 | ||
| end_date_year -= 1 | ||
| end | ||
@@ -32,7 +32,7 @@ | ||
| if (month_difference < 0) | ||
| month_difference = month_difference + 12 | ||
| end_date.year = end_date.year -1 | ||
| month_difference += 12 | ||
| end_date_year -= 1 | ||
| end | ||
| year_difference = end_date.year - start_date.year | ||
| year_difference = end_date_year - start_date_year | ||
@@ -39,0 +39,0 @@ difference_hash = { :year => year_difference, :month => month_difference, :day => day_difference } |
| module DateDiff | ||
| VERSION = "0.0.3" | ||
| VERSION = "0.0.4" | ||
| end |
@@ -7,2 +7,3 @@ require 'helper' | ||
| def test_date_diff_method | ||
| [ | ||
@@ -19,3 +20,7 @@ [Date.parse('2013-01-01'), Date.parse('2013-01-01'), {:year => 0, :month => 0, :day => 0, :difference => ""}], | ||
| [Date.parse('2000-01-01'), Date.parse('2013-06-19'), {:year => 13, :month => 5, :day => 18, :difference => "13 years 5 months 18 days"}] | ||
| [Date.parse('2000-01-01'), Date.parse('2013-06-19'), {:year => 13, :month => 5, :day => 18, :difference => "13 years 5 months 18 days"}], | ||
| [Date.parse('2013-11-19'), Date.parse('2013-11-25'), {:year => 0, :month => 0, :day => 6, :difference => "6 days"}], | ||
| [Date.parse('2012-11-27'), Date.parse('2013-11-25'), {:year => 0, :month => 11, :day => 28, :difference => "11 months 28 days"}] | ||
| ].each do |input| | ||
@@ -22,0 +27,0 @@ assert_equal(Date.diff(input[0], input[1]), input[2]) |