aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/test')
-rw-r--r--activerecord/test/cases/custom_properties_test.rb9
-rw-r--r--activerecord/test/schema/schema.rb1
2 files changed, 6 insertions, 4 deletions
diff --git a/activerecord/test/cases/custom_properties_test.rb b/activerecord/test/cases/custom_properties_test.rb
index 047c1b9b74..a406704114 100644
--- a/activerecord/test/cases/custom_properties_test.rb
+++ b/activerecord/test/cases/custom_properties_test.rb
@@ -4,6 +4,7 @@ class OverloadedType < ActiveRecord::Base
property :overloaded_float, Type::Integer.new
property :overloaded_string_with_limit, Type::String.new(limit: 50)
property :non_existent_decimal, Type::Decimal.new
+ property :string_with_default, Type::String.new, default: 'the overloaded default'
end
class ChildOfOverloadedType < OverloadedType
@@ -62,12 +63,12 @@ module ActiveRecord
end
end
- def test_overloaded_properties_have_no_default
+ def test_changing_defaults
data = OverloadedType.new
unoverloaded_data = UnoverloadedType.new
- assert_nil data.overloaded_float
- assert unoverloaded_data.overloaded_float
+ assert_equal 'the overloaded default', data.string_with_default
+ assert_equal 'the original default', unoverloaded_data.string_with_default
end
def test_children_inherit_custom_properties
@@ -84,7 +85,7 @@ module ActiveRecord
def test_overloading_properties_does_not_change_column_order
column_names = OverloadedType.column_names
- assert_equal %w(id overloaded_float unoverloaded_float overloaded_string_with_limit non_existent_decimal), column_names
+ assert_equal %w(id overloaded_float unoverloaded_float overloaded_string_with_limit string_with_default non_existent_decimal), column_names
end
end
end
diff --git a/activerecord/test/schema/schema.rb b/activerecord/test/schema/schema.rb
index 4cce58f4f4..5f459cf682 100644
--- a/activerecord/test/schema/schema.rb
+++ b/activerecord/test/schema/schema.rb
@@ -860,6 +860,7 @@ ActiveRecord::Schema.define do
t.float :overloaded_float, default: 500
t.float :unoverloaded_float
t.string :overloaded_string_with_limit, limit: 255
+ t.string :string_with_default, default: 'the original default'
end
end