From 6265b2d804e7a4017fabc2ded4db5f4914faa30d Mon Sep 17 00:00:00 2001 From: Adam Meehan Date: Sat, 6 Nov 2010 19:05:50 +1100 Subject: [PATCH] fix parsing of datetimes with timezone (thanks sigi) --- lib/validates_timeliness/parser.rb | 2 +- spec/parser_spec.rb | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/validates_timeliness/parser.rb b/lib/validates_timeliness/parser.rb index 16cb7db..f987f24 100644 --- a/lib/validates_timeliness/parser.rb +++ b/lib/validates_timeliness/parser.rb @@ -13,7 +13,7 @@ module ValidatesTimeliness if type == :date Date.new(*time_array[0..2]) rescue nil else - make_time(time_array[0..7]) + make_time(time_array[0..6]) end end diff --git a/spec/parser_spec.rb b/spec/parser_spec.rb index b57d211..f48f864 100644 --- a/spec/parser_spec.rb +++ b/spec/parser_spec.rb @@ -7,6 +7,10 @@ describe ValidatesTimeliness::Parser do it "should return time object for valid time string" do parse("2000-01-01 12:13:14", :datetime).should be_kind_of(Time) end + + it "should return Time object for ISO 8601 string with time zone" do + parse("2000-01-01T12:23:42+09:00", :datetime).should be_kind_of(Time) + end it "should return nil for time string with invalid date part" do parse("2000-02-30 12:13:14", :datetime).should be_nil