Move test_not_compatible_with_serialize_macro to JSONSharedTestCases

Because `JSONSharedTestCases` is also used for `Mysql2JSONTest`.
This commit is contained in:
Ryuta Kamizono 2017-08-05 08:26:39 +09:00
parent 8f44d16619
commit 7b11f0c8ca
2 changed files with 11 additions and 11 deletions

@ -21,8 +21,8 @@ def test_default
@connection.add_column "json_data_type", "permissions", column_type, default: { "users": "read", "posts": ["read", "write"] }
klass.reset_column_information
assert_equal({ "users" => "read", "posts" => ["read", "write"] }, JsonDataType.column_defaults["permissions"])
assert_equal({ "users" => "read", "posts" => ["read", "write"] }, JsonDataType.new.permissions)
assert_equal({ "users" => "read", "posts" => ["read", "write"] }, klass.column_defaults["permissions"])
assert_equal({ "users" => "read", "posts" => ["read", "write"] }, klass.new.permissions)
end
def test_deserialize_with_array
@ -33,15 +33,6 @@ def test_deserialize_with_array
x.reload
assert_equal ["foo" => "bar"], x.objects
end
def test_not_compatible_with_serialize_macro
new_klass = Class.new(klass) do
serialize :payload, JSON
end
assert_raises(ActiveRecord::AttributeMethods::Serialization::ColumnNotSerializableError) do
new_klass.new
end
end
end
class PostgresqlJSONTest < ActiveRecord::PostgreSQLTestCase

@ -216,6 +216,15 @@ def test_assigning_boolean
assert_equal true, json.payload
end
def test_not_compatible_with_serialize_macro
new_klass = Class.new(klass) do
serialize :payload, JSON
end
assert_raises(ActiveRecord::AttributeMethods::Serialization::ColumnNotSerializableError) do
new_klass.new
end
end
private
def klass
JsonDataType