aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/aggregations_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/test/aggregations_test.rb')
-rw-r--r--activerecord/test/aggregations_test.rb18
1 files changed, 18 insertions, 0 deletions
diff --git a/activerecord/test/aggregations_test.rb b/activerecord/test/aggregations_test.rb
index 89927e5044..299e0484e3 100644
--- a/activerecord/test/aggregations_test.rb
+++ b/activerecord/test/aggregations_test.rb
@@ -108,3 +108,21 @@ class AggregationsTest < Test::Unit::TestCase
assert_equal nil, customers(:david).gps_location
end
end
+
+class OverridingAggregationsTest < Test::Unit::TestCase
+ class Name; end
+ class DifferentName; end
+
+ class Person < ActiveRecord::Base
+ composed_of :composed_of, :mapping => %w(person_first_name first_name)
+ end
+
+ class DifferentPerson < Person
+ composed_of :composed_of, :class_name => 'DifferentName', :mapping => %w(different_person_first_name first_name)
+ end
+
+ def test_composed_of_aggregation_redefinition_reflections_should_differ_and_not_inherited
+ assert_not_equal Person.reflect_on_aggregation(:composed_of),
+ DifferentPerson.reflect_on_aggregation(:composed_of)
+ end
+end