aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrick <technoweenie@gmail.com>2008-09-03 19:49:12 -0700
committerrick <technoweenie@gmail.com>2008-09-03 19:49:12 -0700
commit4b387a1f0abb8f6f9eaf49daf12ef871e841d3c7 (patch)
treea71bea8a0a307eb54a19b6c87b8b17fed14861e0
parent886d1a0102378450b6ed4c28f9dd62c60d1bd671 (diff)
do not version #created_at or #created_on
-rw-r--r--lib/acts_as_versioned.rb2
-rw-r--r--test/fixtures/pages.yml3
-rw-r--r--test/schema.rb2
-rw-r--r--test/versioned_test.rb7
4 files changed, 12 insertions, 2 deletions
diff --git a/lib/acts_as_versioned.rb b/lib/acts_as_versioned.rb
index 46c072104..5299e0dc7 100644
--- a/lib/acts_as_versioned.rb
+++ b/lib/acts_as_versioned.rb
@@ -185,7 +185,7 @@ module ActiveRecord #:nodoc:
self.version_sequence_name = options[:sequence_name]
self.max_version_limit = options[:limit].to_i
self.version_condition = options[:if] || true
- self.non_versioned_columns = [self.primary_key, inheritance_column, 'version', 'lock_version', versioned_inheritance_column]
+ self.non_versioned_columns = [self.primary_key, inheritance_column, 'version', 'lock_version', versioned_inheritance_column, 'created_at', 'created_on']
self.version_association_options = {
:class_name => "#{self.to_s}::#{versioned_class_name}",
:foreign_key => versioned_foreign_key,
diff --git a/test/fixtures/pages.yml b/test/fixtures/pages.yml
index 07ac51f97..9f4ab546a 100644
--- a/test/fixtures/pages.yml
+++ b/test/fixtures/pages.yml
@@ -4,4 +4,5 @@ welcome:
body: Such a lovely day
version: 24
author_id: 1
- revisor_id: 1 \ No newline at end of file
+ revisor_id: 1
+ created_on: "2008-01-01 00:00:00" \ No newline at end of file
diff --git a/test/schema.rb b/test/schema.rb
index 06051a406..4e7e96319 100644
--- a/test/schema.rb
+++ b/test/schema.rb
@@ -3,6 +3,7 @@ ActiveRecord::Schema.define(:version => 0) do
t.column :version, :integer
t.column :title, :string, :limit => 255
t.column :body, :text
+ t.column :created_on, :datetime
t.column :updated_on, :datetime
t.column :author_id, :integer
t.column :revisor_id, :integer
@@ -13,6 +14,7 @@ ActiveRecord::Schema.define(:version => 0) do
t.column :version, :integer
t.column :title, :string, :limit => 255
t.column :body, :text
+ t.column :created_on, :datetime
t.column :updated_on, :datetime
t.column :author_id, :integer
t.column :revisor_id, :integer
diff --git a/test/versioned_test.rb b/test/versioned_test.rb
index 624553086..6ab9e739c 100644
--- a/test/versioned_test.rb
+++ b/test/versioned_test.rb
@@ -14,6 +14,13 @@ class VersionedTest < Test::Unit::TestCase
assert_instance_of Page.versioned_class, p.versions.first
end
+ def test_version_has_unique_created_at
+ p = pages(:welcome)
+ p.title = 'update me'
+ p.save!
+ assert_not_equal p.created_on, p.versions.latest.created_on
+ end
+
def test_saves_without_revision
p = pages(:welcome)
old_versions = p.versions.count