date_diff 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ language: ruby
2
+ script: "rake test"
3
+ rvm:
4
+ - 1.8.7
5
+ - 1.9.2
6
+ - 1.9.3
7
+
@@ -20,9 +20,19 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.add_development_dependency "bundler", "~> 1.3"
22
22
  spec.add_development_dependency "rake"
23
- spec.add_development_dependency "activesupport"
24
- spec.add_development_dependency "i18n"
23
+
24
+ if RUBY_VERSION == "1.9.3"
25
+ spec.add_development_dependency "activesupport"
26
+ end
27
+
25
28
  if RUBY_VERSION == "1.8.7"
26
- s.add_development_dependency 'minitest', '3.2.0'
29
+ spec.add_development_dependency "activesupport", "2.3.12"
30
+ spec.add_development_dependency 'minitest', '3.2.0'
27
31
  end
32
+
33
+ if RUBY_VERSION == "1.9.2"
34
+ spec.add_development_dependency "activesupport", "3.2.11"
35
+ end
36
+
37
+ spec.add_development_dependency "i18n"
28
38
  end
@@ -8,41 +8,39 @@ class Date
8
8
  def self.diff(start_date, end_date)
9
9
  common_year_days_in_month = [ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
10
10
  start_date, end_date = end_date, start_date if start_date > end_date
11
-
11
+
12
12
  start_date_month, start_date_day = start_date.month, start_date.day
13
13
  end_date_month, end_date_day = end_date.month, end_date.day
14
-
14
+
15
15
  day_difference = end_date_day - start_date_day
16
-
17
- if (day_difference < 0)
16
+
17
+ if (day_difference < 0)
18
18
  day_difference = nday[start_date_month-1] - start_date_day + end_date_day
19
19
  end_date_month = end_date_month -1
20
20
  end
21
-
22
- if (end_date_month < 0)
21
+
22
+ if (end_date_month < 0)
23
23
  end_date_month = end_date_month + 12
24
24
  end_date.year = end_date.year -1
25
- end
26
-
25
+ end
26
+
27
27
  month_difference = end_date_month - start_date_month
28
-
29
- if (month_difference < 0)
28
+
29
+ if (month_difference < 0)
30
30
  month_difference = month_difference + 12
31
31
  end_date.year = end_date.year -1
32
32
  end
33
-
33
+
34
34
  year_difference = end_date.year - start_date.year
35
-
36
-
35
+
37
36
  difference_hash = { :year => year_difference, :month => month_difference, :day => day_difference }
38
-
37
+
39
38
  difference_array = []
40
- difference_hash.each do |key, value|
39
+ ["year", "month", "day"].each do |key|
40
+ value = difference_hash[key.to_sym]
41
41
  difference_array << value.to_s + " " + ((value > 1)? I18n.t(key.to_s.pluralize, :default => key.to_s.pluralize.to_s) : I18n.t(key.to_s, :default => key.to_s)).to_s if value > 0
42
42
  end
43
43
  difference_hash[:difference] = difference_array.join(" ").to_s
44
44
  difference_hash
45
-
46
-
47
45
  end
48
46
  end
@@ -1,3 +1,3 @@
1
1
  module DateDiff
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: date_diff
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -83,6 +83,7 @@ extensions: []
83
83
  extra_rdoc_files: []
84
84
  files:
85
85
  - .gitignore
86
+ - .travis.yml
86
87
  - Gemfile
87
88
  - LICENSE.txt
88
89
  - README.md