Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fix for Mongoid shim for reload which was nicely moved into a module …

…to allow super
  • Loading branch information...
commit 907fd3e4393f605bfb97dfae0dcb4e8f379f97d8 1 parent e44e9d2
@adzap adzap authored
View
2  Gemfile
@@ -11,7 +11,7 @@ gem 'ruby-debug', :platforms => [:ruby_18, :jruby]
gem 'ruby-debug19', :platforms => [:ruby_19]
group :mongoid do
- gem 'mongoid', '2.2.0'
+ gem 'mongoid', '~> 2.3.0'
gem 'bson_ext'
gem 'system_timer', :platforms => [:ruby_18]
end
View
15 lib/validates_timeliness/orm/mongoid.rb
@@ -31,6 +31,10 @@ def timeliness_attribute_type(attr_name)
end
end
+ def reload
+ _clear_timeliness_cache
+ super
+ end
end
end
end
@@ -39,9 +43,12 @@ module Mongoid::Document
include ValidatesTimeliness::AttributeMethods
include ValidatesTimeliness::ORM::Mongoid
- def reload_with_timeliness
- _clear_timeliness_cache
- reload_without_timeliness
+ # Pre-2.3 reload
+ if instance_methods.include?('reload')
+ def reload_with_timeliness
+ _clear_timeliness_cache
+ reload_without_timeliness
+ end
+ alias_method_chain :reload, :timeliness
end
- alias_method_chain :reload, :timeliness
end
View
14 spec/validates_timeliness/orm/mongoid_spec.rb
@@ -69,22 +69,22 @@ class Article
end
context "for a date column" do
- it 'should store a Time value after parsing string' do
+ it 'should store a Date value after parsing string' do
r = Article.new
r.publish_date = '2010-01-01'
- r.publish_date.should be_kind_of(Time)
+ r.publish_date.should be_kind_of(Date)
r.publish_date.should == Date.new(2010, 1, 1)
end
end
context "for a datetime column" do
- it 'should parse string into Time value' do
+ it 'should parse string into DateTime value' do
r = Article.new
r.publish_datetime = '2010-01-01 12:00'
- r.publish_datetime.should be_kind_of(Time)
- r.publish_datetime.should == Time.utc(2010,1,1,12,0)
+ r.publish_datetime.should be_kind_of(DateTime)
+ r.publish_datetime.should == DateTime.new(2010,1,1,12,0)
end
end
end
@@ -108,6 +108,6 @@ class Article
rescue LoadError
puts "Mongoid specs skipped. Mongoid not installed"
-rescue StandardError
- puts "Mongoid specs skipped. MongoDB connection failed."
+rescue StandardError => e
+ puts "Mongoid specs skipped. MongoDB connection failed with error: #{e.message}"
end
Please sign in to comment.
Something went wrong with that request. Please try again.