revs-utils 2.0.4 → 2.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/Gemfile.lock +1 -1
- data/README.rdoc +7 -0
- data/lib/revs-utils/version.rb +1 -1
- data/lib/revs-utils.rb +6 -3
- data/spec/revs-utils_spec.rb +6 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ODAzOTc4MGRiMTU0NDExMTQ2NDA2MWRlMjhmZWViMDRhMWUyMDhjMQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
Y2NmOGNiZDQwNjcyOTE2ZDEyNzgzOWQ3ODBjM2UyOGQxOTVhZDgyYQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZDEwZDY1NTQ1MjRiY2E4YjIxNWMyNzIwN2U0OTc2ZjlmMGFiMTQwODVkNzQ0
|
10
|
+
YWNmYWY2NDI0ODU1OGQ1OTdjM2I2MmI1ZjY4ODBlYzZjNjY3NTNhNmE3Y2Zi
|
11
|
+
MzVhYWE1OWJmOTI3Nzg1ODk0MTVmMmVlYzc2MDExYmU4YWJiYTc=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZjQ3NjBkNDhkMThlZmUxNTEwZTQxMWY4ODU4MjBmMTI1NzRiOGE0ODVlOWFi
|
14
|
+
ZTdjNzU1NDlhOGNmMDNhOWJhOTRhZDAyYjQ5OWI4MWM0MzlhODlkYzYyZTI2
|
15
|
+
YzVhM2I5ODM2ZjE3ZTgyZGMwOGRhODA5NDU1NGMxMDBlODhmYmY=
|
data/Gemfile.lock
CHANGED
data/README.rdoc
CHANGED
@@ -18,10 +18,17 @@ Shared methods and functions used by revs-indexer, pre-assembly and bulk metadat
|
|
18
18
|
- <b>1.0.6</b> Add some more conditions to CSV header checks
|
19
19
|
- <b>1.0.7</b> Label column needs to be there but does not need to have a value to register
|
20
20
|
- <b>1.0.8</b> Update clean_collection_name method to deal with other possible names
|
21
|
+
<<<<<<< HEAD
|
21
22
|
- <b>2.0.0</b> Updating to use ActionPack 4 for Rails 4 applications. For Rails 3, continue to use 1.x.y releases.
|
22
23
|
- <b>2.0.1</b> Add more common format corrections
|
23
24
|
- <b>2.0.2 and 2.0.3</b> Update valid for metadata method so it is not sensitive to blank or uppercase columns
|
24
25
|
- <b>2.0.4</b> Fix issues with year parsing
|
26
|
+
=======
|
27
|
+
- <b>1.0.9</b> Add more common format corrections
|
28
|
+
- <b>1.0.10</b> Update valid for metadata method so it is not sensitive to blank or uppercase columns
|
29
|
+
- <b>1.0.11</b> Fix issues with year parsing
|
30
|
+
- <b>1.0.12</b> Allow two digit years in year formatting
|
31
|
+
>>>>>>> 9db8640... Allow two digit years in year formatting
|
25
32
|
|
26
33
|
== Running tests
|
27
34
|
|
data/lib/revs-utils/version.rb
CHANGED
data/lib/revs-utils.rb
CHANGED
@@ -235,11 +235,14 @@ module Revs
|
|
235
235
|
date_string.to_s.strip.scan(/\D/).empty? and (starting_year..Date.today.year).include?(date_string.to_i)
|
236
236
|
end
|
237
237
|
|
238
|
-
# tell us if the string passed is in is a full date of the format M/D/YYYY, and returns the date object if it is valid
|
238
|
+
# tell us if the string passed is in is a full date of the format M/D/YYYY or m-d-yyyy or m-d-yy or M/D/YY, and returns the date object if it is valid
|
239
239
|
def get_full_date(date_string)
|
240
240
|
begin
|
241
|
-
|
242
|
-
|
241
|
+
date_obj_string=date_string.gsub('-','/').delete(' ')
|
242
|
+
date_format = (date_obj_string.split('/').last.size == 4 ? '%m/%d/%Y' : '%m/%d/%y') # if we think we have a 4 digit year, parse with 4 year format, else try the two year format
|
243
|
+
date_obj = Date.strptime(date_obj_string, date_format)
|
244
|
+
date_obj=date_obj.prev_year(100) if date_obj > Date.today # if the parsing yields a date in the future, this is a problem, so adjust back a century (due to this issue: http://stackoverflow.com/questions/27058068/ruby-incorrectly-parses-2-digit-year)
|
245
|
+
is_valid_year?(date_obj.year.to_s) ? date_obj : false
|
243
246
|
rescue
|
244
247
|
false
|
245
248
|
end
|
data/spec/revs-utils_spec.rb
CHANGED
@@ -75,10 +75,14 @@ describe "Revs-Utils" do
|
|
75
75
|
end
|
76
76
|
|
77
77
|
it "should indicate if a date is valid" do
|
78
|
-
@revs.get_full_date('bogus').should be_falsey
|
79
78
|
@revs.get_full_date('5/1/1959').should == Date.strptime("5/1/1959", '%m/%d/%Y')
|
80
79
|
@revs.get_full_date('5-1-1959').should == Date.strptime("5/1/1959", '%m/%d/%Y')
|
81
|
-
@revs.get_full_date('5-1-
|
80
|
+
@revs.get_full_date('5-1-2014').should == Date.strptime("5/1/2014", '%m/%d/%Y')
|
81
|
+
@revs.get_full_date('5-1-59').should == Date.strptime("5/1/1959", '%m/%d/%Y') # deal with two digit years ok too
|
82
|
+
@revs.get_full_date('1/1/71').should == Date.strptime("1/1/1971", '%m/%d/%Y') # deal with two digit years ok too
|
83
|
+
@revs.get_full_date('5-1-14').should == Date.strptime("5/1/2014", '%m/%d/%Y') # deal with two digit years ok too
|
84
|
+
@revs.get_full_date('5-1-21').should == Date.strptime("5/1/1921", '%m/%d/%Y') # deal with two digit years ok too
|
85
|
+
@revs.get_full_date('bogus').should be_falsey
|
82
86
|
end
|
83
87
|
|
84
88
|
it "should indicate if we have a valid year" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: revs-utils
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Mangiafico
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-01-
|
11
|
+
date: 2015-01-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: countries
|