mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Ensure of Model#create support custom updated_at and updated_on attributes [#1612 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
This commit is contained in:
parent
70456aed31
commit
63aac33833
2 changed files with 12 additions and 2 deletions
|
@ -23,8 +23,8 @@ module ActiveRecord
|
|||
write_attribute('created_at', t) if respond_to?(:created_at) && created_at.nil?
|
||||
write_attribute('created_on', t) if respond_to?(:created_on) && created_on.nil?
|
||||
|
||||
write_attribute('updated_at', t) if respond_to?(:updated_at)
|
||||
write_attribute('updated_on', t) if respond_to?(:updated_on)
|
||||
write_attribute('updated_at', t) if respond_to?(:updated_at) && updated_at.nil?
|
||||
write_attribute('updated_on', t) if respond_to?(:updated_on) && updated_on.nil?
|
||||
end
|
||||
create_without_timestamps
|
||||
end
|
||||
|
|
|
@ -16,6 +16,7 @@ require 'models/post'
|
|||
require 'models/comment'
|
||||
require 'models/minimalistic'
|
||||
require 'models/warehouse_thing'
|
||||
require 'models/parrot'
|
||||
require 'rexml/document'
|
||||
|
||||
class Category < ActiveRecord::Base; end
|
||||
|
@ -2071,6 +2072,15 @@ class BasicsTest < ActiveRecord::TestCase
|
|||
ActiveRecord::Base.logger = original_logger
|
||||
end
|
||||
|
||||
def test_create_with_custom_timestamps
|
||||
custom_datetime = 1.hour.ago.beginning_of_day
|
||||
|
||||
%w(created_at created_on updated_at updated_on).each do |attribute|
|
||||
parrot = LiveParrot.create(:name => "colombian", attribute => custom_datetime)
|
||||
assert_equal custom_datetime, parrot[attribute]
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
def with_kcode(kcode)
|
||||
if RUBY_VERSION < '1.9'
|
||||
|
|
Loading…
Reference in a new issue