aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/models
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2009-09-08 10:22:45 -0500
committerJoshua Peek <josh@joshpeek.com>2009-09-08 10:26:39 -0500
commit2ea1d684d93bd59887a9fd12e647941f0d1f4868 (patch)
tree808bb2e7a081c5010df134269e765d3b4c0a12b9 /activerecord/test/models
parent4f37b97033f596ec2c95eb53e9964e051c224981 (diff)
downloadrails-2ea1d684d93bd59887a9fd12e647941f0d1f4868.tar.gz
rails-2ea1d684d93bd59887a9fd12e647941f0d1f4868.tar.bz2
rails-2ea1d684d93bd59887a9fd12e647941f0d1f4868.zip
Refactor new callbacks and AR implementation.
Signed-off-by: Joshua Peek <josh@joshpeek.com>
Diffstat (limited to 'activerecord/test/models')
-rw-r--r--activerecord/test/models/author.rb3
-rw-r--r--activerecord/test/models/project.rb3
-rw-r--r--activerecord/test/models/topic.rb17
3 files changed, 20 insertions, 3 deletions
diff --git a/activerecord/test/models/author.rb b/activerecord/test/models/author.rb
index f264f980d6..7cbc6e803f 100644
--- a/activerecord/test/models/author.rb
+++ b/activerecord/test/models/author.rb
@@ -94,8 +94,9 @@ class Author < ActiveRecord::Base
belongs_to :author_address_extra, :dependent => :delete, :class_name => "AuthorAddress"
attr_accessor :post_log
+ after_initialize :set_post_log
- def after_initialize
+ def set_post_log
@post_log = []
end
diff --git a/activerecord/test/models/project.rb b/activerecord/test/models/project.rb
index 422b12dc83..416032cb75 100644
--- a/activerecord/test/models/project.rb
+++ b/activerecord/test/models/project.rb
@@ -22,8 +22,9 @@ class Project < ActiveRecord::Base
has_and_belongs_to_many :well_payed_salary_groups, :class_name => "Developer", :group => "developers.salary", :having => "SUM(salary) > 10000", :select => "SUM(salary) as salary"
attr_accessor :developers_log
+ after_initialize :set_developers_log
- def after_initialize
+ def set_developers_log
@developers_log = []
end
diff --git a/activerecord/test/models/topic.rb b/activerecord/test/models/topic.rb
index c16a6f2be9..baca4972cb 100644
--- a/activerecord/test/models/topic.rb
+++ b/activerecord/test/models/topic.rb
@@ -52,6 +52,15 @@ class Topic < ActiveRecord::Base
id
end
+ before_validation :before_validation_for_transaction
+ before_save :before_save_for_transaction
+ before_destroy :before_destroy_for_transaction
+
+ after_save :after_save_for_transaction
+ after_create :after_create_for_transaction
+
+ after_initialize :set_email_address
+
protected
def approved=(val)
@custom_approved = val
@@ -66,11 +75,17 @@ class Topic < ActiveRecord::Base
self.class.delete_all "parent_id = #{id}"
end
- def after_initialize
+ def set_email_address
if self.new_record?
self.author_email_address = 'test@test.com'
end
end
+
+ def before_validation_for_transaction; end
+ def before_save_for_transaction; end
+ def before_destroy_for_transaction; end
+ def after_save_for_transaction; end
+ def after_create_for_transaction; end
end
module Web