From b11893eac03a46138f38980cbea7a98251d3fee6 Mon Sep 17 00:00:00 2001 From: Adam Meehan Date: Sat, 12 Sep 2009 14:14:37 +1000 Subject: [PATCH] fix dummy date part in Validator.type_cast_value removed all core extensions --- lib/validates_timeliness.rb | 4 --- lib/validates_timeliness/core_ext/date.rb | 13 -------- .../core_ext/date_time.rb | 13 -------- lib/validates_timeliness/core_ext/time.rb | 13 -------- lib/validates_timeliness/validator.rb | 14 +++++++-- lib/validates_timeliness/version.rb | 2 +- spec/core_ext/dummy_time_spec.rb | 31 ------------------- 7 files changed, 13 insertions(+), 77 deletions(-) delete mode 100644 lib/validates_timeliness/core_ext/date.rb delete mode 100644 lib/validates_timeliness/core_ext/date_time.rb delete mode 100644 lib/validates_timeliness/core_ext/time.rb delete mode 100644 spec/core_ext/dummy_time_spec.rb diff --git a/lib/validates_timeliness.rb b/lib/validates_timeliness.rb index 510c5c5..88eab8d 100644 --- a/lib/validates_timeliness.rb +++ b/lib/validates_timeliness.rb @@ -7,10 +7,6 @@ require 'validates_timeliness/active_record/attribute_methods' require 'validates_timeliness/active_record/multiparameter_attributes' require 'validates_timeliness/action_view/instance_tag' -require 'validates_timeliness/core_ext/time' -require 'validates_timeliness/core_ext/date' -require 'validates_timeliness/core_ext/date_time' - module ValidatesTimeliness mattr_accessor :default_timezone diff --git a/lib/validates_timeliness/core_ext/date.rb b/lib/validates_timeliness/core_ext/date.rb deleted file mode 100644 index 96babdd..0000000 --- a/lib/validates_timeliness/core_ext/date.rb +++ /dev/null @@ -1,13 +0,0 @@ -module ValidatesTimeliness - module CoreExtensions - module Date - - def to_dummy_time - ::Time.send(ValidatesTimeliness.default_timezone, 2000, 1, 1, 0, 0, 0) - end - - end - end -end - -Date.send(:include, ValidatesTimeliness::CoreExtensions::Date) diff --git a/lib/validates_timeliness/core_ext/date_time.rb b/lib/validates_timeliness/core_ext/date_time.rb deleted file mode 100644 index b5f7fc9..0000000 --- a/lib/validates_timeliness/core_ext/date_time.rb +++ /dev/null @@ -1,13 +0,0 @@ -module ValidatesTimeliness - module CoreExtensions - module DateTime - - def to_dummy_time - ::Time.send(ValidatesTimeliness.default_timezone, 2000, 1, 1, hour, min, sec) - end - - end - end -end - -DateTime.send(:include, ValidatesTimeliness::CoreExtensions::DateTime) diff --git a/lib/validates_timeliness/core_ext/time.rb b/lib/validates_timeliness/core_ext/time.rb deleted file mode 100644 index f011641..0000000 --- a/lib/validates_timeliness/core_ext/time.rb +++ /dev/null @@ -1,13 +0,0 @@ -module ValidatesTimeliness - module CoreExtensions - module Time - - def to_dummy_time - self.class.send(ValidatesTimeliness.default_timezone, 2000, 1, 1, hour, min, sec) - end - - end - end -end - -Time.send(:include, ValidatesTimeliness::CoreExtensions::Time) diff --git a/lib/validates_timeliness/validator.rb b/lib/validates_timeliness/validator.rb index 0f4a938..4ba29e6 100644 --- a/lib/validates_timeliness/validator.rb +++ b/lib/validates_timeliness/validator.rb @@ -197,11 +197,11 @@ module ValidatesTimeliness else value = case type when :time - value.to_dummy_time + dummy_time(value) when :date value.to_date when :datetime - if value.is_a?(DateTime) || value.is_a?(Time) + if value.is_a?(Time) || value.is_a?(DateTime) value.to_time else value.to_time(ValidatesTimeliness.default_timezone) @@ -217,6 +217,16 @@ module ValidatesTimeliness end end + def dummy_time(value) + if value.is_a?(Time) || value.is_a?(DateTime) + time = [value.hour, value.min, value.sec] + else + time = [0,0,0] + end + dummy_date = ValidatesTimeliness::Formats.dummy_date_for_time_type + Time.send(ValidatesTimeliness.default_timezone, *(dummy_date + time)) + end + end end diff --git a/lib/validates_timeliness/version.rb b/lib/validates_timeliness/version.rb index 31650f8..6f2fd8e 100644 --- a/lib/validates_timeliness/version.rb +++ b/lib/validates_timeliness/version.rb @@ -1,3 +1,3 @@ module ValidatesTimeliness - VERSION = "2.2.0" + VERSION = "2.2.1" end diff --git a/spec/core_ext/dummy_time_spec.rb b/spec/core_ext/dummy_time_spec.rb deleted file mode 100644 index 5871d4e..0000000 --- a/spec/core_ext/dummy_time_spec.rb +++ /dev/null @@ -1,31 +0,0 @@ -require File.expand_path(File.dirname(__FILE__) + '/../spec_helper') - -describe ValidatesTimeliness::CoreExtensions::Date do - before do - @a_date = Date.new(2008, 7, 1) - end - - it "should make a date value into a dummy time value" do - @a_date.to_dummy_time.should == Time.utc(2000,1,1,0,0,0) - end -end - -describe ValidatesTimeliness::CoreExtensions::Time do - before do - @a_time = Time.mktime(2008, 7, 1, 2, 3, 4) - end - - it "should make a time value into a dummy time value" do - @a_time.to_dummy_time.should == Time.utc(2000,1,1,2,3,4) - end -end - -describe ValidatesTimeliness::CoreExtensions::DateTime do - before do - @a_datetime = DateTime.new(2008, 7, 1, 2, 3, 4) - end - - it "should make a datetime value into a dummy time value" do - @a_datetime.to_dummy_time.should == Time.utc(2000,1,1,2,3,4) - end -end