aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2014-04-07 12:23:29 -0500
committerRafael Mendonça França <rafaelmfranca@gmail.com>2014-04-07 12:23:29 -0500
commit6bbbe0b6513d7452cba43680f0da8362b98d4ca5 (patch)
treeba6982905161f77d1530d49dd046a0af4754f3ee /activerecord/test
parent83e9e193f86741401a463cae17163ea0cd6b2389 (diff)
parentc4bdca19a7a61eb12c75c4a3225e54b69b486a15 (diff)
downloadrails-6bbbe0b6513d7452cba43680f0da8362b98d4ca5.tar.gz
rails-6bbbe0b6513d7452cba43680f0da8362b98d4ca5.tar.bz2
rails-6bbbe0b6513d7452cba43680f0da8362b98d4ca5.zip
Merge pull request #14632 from matthewd/escape_bytea
Use connection-specific bytea escaping
Diffstat (limited to 'activerecord/test')
-rw-r--r--activerecord/test/cases/adapters/postgresql/bytea_test.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapters/postgresql/bytea_test.rb b/activerecord/test/cases/adapters/postgresql/bytea_test.rb
index c3394d7712..84fa199f17 100644
--- a/activerecord/test/cases/adapters/postgresql/bytea_test.rb
+++ b/activerecord/test/cases/adapters/postgresql/bytea_test.rb
@@ -70,6 +70,23 @@ class PostgresqlByteaTest < ActiveRecord::TestCase
assert_equal(data, record.payload)
end
+ def test_via_to_sql
+ data = "'\u001F\\"
+ record = ByteaDataType.create(payload: data)
+ sql = ByteaDataType.where(payload: data).select(:payload).to_sql
+ result = @connection.query(sql)
+ assert_equal([[data]], result)
+ end
+
+ def test_via_to_sql_with_complicating_connection
+ Thread.new do
+ other_conn = ActiveRecord::Base.connection
+ other_conn.execute('SET standard_conforming_strings = off')
+ end.join
+
+ test_via_to_sql
+ end
+
def test_write_binary
data = File.read(File.join(File.dirname(__FILE__), '..', '..', '..', 'assets', 'example.log'))
assert(data.size > 1)