From 00ce4b4aa176ff5bd07d01d1fae5d7ee27b53e8f Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Wed, 5 Jun 2013 17:14:55 +0900 Subject: adding a test for #10830 Conflicts: activerecord/test/cases/adapters/postgresql/bytea_test.rb --- .../test/cases/adapters/postgresql/bytea_test.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'activerecord/test/cases/adapters/postgresql/bytea_test.rb') diff --git a/activerecord/test/cases/adapters/postgresql/bytea_test.rb b/activerecord/test/cases/adapters/postgresql/bytea_test.rb index d7d77f96e2..f3990980eb 100644 --- a/activerecord/test/cases/adapters/postgresql/bytea_test.rb +++ b/activerecord/test/cases/adapters/postgresql/bytea_test.rb @@ -15,6 +15,7 @@ class PostgresqlByteaTest < ActiveRecord::TestCase @connection.transaction do @connection.create_table('bytea_data_type') do |t| t.binary 'payload' + t.binary 'serialized' end end end @@ -84,4 +85,21 @@ class PostgresqlByteaTest < ActiveRecord::TestCase assert_equal(nil, record.payload) assert_equal(nil, ByteaDataType.where(id: record.id).first.payload) end + + class Serializer + def load(str); str; end + def dump(str); str; end + end + + def test_serialize + serializer = Serializer.new + klass = Class.new(ByteaDataType) { + serialize :serialized, Serializer.new + } + obj = klass.new + obj.serialized = "hello world" + obj.save! + obj.reload + assert_equal "hello world", obj.serialized + end end -- cgit v1.2.3 From 04347540510aff4ce7df2abafcc517de338bd668 Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Wed, 5 Jun 2013 17:30:11 +0900 Subject: the typecast value should be passed to the serializer. fixes #10830 --- activerecord/test/cases/adapters/postgresql/bytea_test.rb | 1 - 1 file changed, 1 deletion(-) (limited to 'activerecord/test/cases/adapters/postgresql/bytea_test.rb') diff --git a/activerecord/test/cases/adapters/postgresql/bytea_test.rb b/activerecord/test/cases/adapters/postgresql/bytea_test.rb index f3990980eb..489efac932 100644 --- a/activerecord/test/cases/adapters/postgresql/bytea_test.rb +++ b/activerecord/test/cases/adapters/postgresql/bytea_test.rb @@ -92,7 +92,6 @@ class PostgresqlByteaTest < ActiveRecord::TestCase end def test_serialize - serializer = Serializer.new klass = Class.new(ByteaDataType) { serialize :serialized, Serializer.new } -- cgit v1.2.3 From 8910f12fb4d86a58dedb36b19f4b2470337662e7 Mon Sep 17 00:00:00 2001 From: Rajarshi Das Date: Tue, 13 Aug 2013 17:56:15 +0530 Subject: using assert_not instead of refute --- activerecord/test/cases/adapters/postgresql/bytea_test.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'activerecord/test/cases/adapters/postgresql/bytea_test.rb') diff --git a/activerecord/test/cases/adapters/postgresql/bytea_test.rb b/activerecord/test/cases/adapters/postgresql/bytea_test.rb index 489efac932..b8dd35c4c5 100644 --- a/activerecord/test/cases/adapters/postgresql/bytea_test.rb +++ b/activerecord/test/cases/adapters/postgresql/bytea_test.rb @@ -66,7 +66,7 @@ class PostgresqlByteaTest < ActiveRecord::TestCase def test_write_value data = "\u001F" record = ByteaDataType.create(payload: data) - refute record.new_record? + assert_not record.new_record? assert_equal(data, record.payload) end @@ -74,14 +74,14 @@ class PostgresqlByteaTest < ActiveRecord::TestCase data = File.read(File.join(File.dirname(__FILE__), '..', '..', '..', 'assets', 'example.log')) assert(data.size > 1) record = ByteaDataType.create(payload: data) - refute record.new_record? + assert_not record.new_record? assert_equal(data, record.payload) assert_equal(data, ByteaDataType.where(id: record.id).first.payload) end def test_write_nil record = ByteaDataType.create(payload: nil) - refute record.new_record? + assert_not record.new_record? assert_equal(nil, record.payload) assert_equal(nil, ByteaDataType.where(id: record.id).first.payload) end -- cgit v1.2.3