mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
fix code typo in MysqlAdapter
.Closes #12647.
This commit is contained in:
parent
bbb32d205f
commit
d0ea5c5b20
3 changed files with 22 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
* Fix code typo in `MysqlAdapter` when `Encoding.default_internal` is set.
|
||||
|
||||
Fixes #12647.
|
||||
|
||||
*Yves Senn*
|
||||
|
||||
* ActiveRecord::Base#attribute_for_inspect now truncates long arrays (more than 10 elements)
|
||||
|
||||
*Jan Bernacki*
|
||||
|
|
|
@ -559,7 +559,7 @@ module ActiveRecord
|
|||
def set_field_encoding field_name
|
||||
field_name.force_encoding(client_encoding)
|
||||
if internal_enc = Encoding.default_internal
|
||||
field_name = field_name.encoding(internal_enc)
|
||||
field_name = field_name.encode!(internal_enc)
|
||||
end
|
||||
field_name
|
||||
end
|
||||
|
|
|
@ -604,10 +604,25 @@ class BasicsTest < ActiveRecord::TestCase
|
|||
end
|
||||
|
||||
def test_unicode_column_name
|
||||
Weird.reset_column_information
|
||||
weird = Weird.create(:なまえ => 'たこ焼き仮面')
|
||||
assert_equal 'たこ焼き仮面', weird.なまえ
|
||||
end
|
||||
|
||||
def test_respect_internal_encoding
|
||||
if current_adapter?(:PostgreSQLAdapter)
|
||||
skip 'pg does not respect internal encoding and always returns utf8'
|
||||
end
|
||||
old_default_internal = Encoding.default_internal
|
||||
silence_warnings { Encoding.default_internal = "EUC-JP" }
|
||||
|
||||
Weird.reset_column_information
|
||||
|
||||
assert_equal ["EUC-JP"], Weird.columns.map {|c| c.name.encoding.name }.uniq
|
||||
ensure
|
||||
silence_warnings { Encoding.default_internal = old_default_internal }
|
||||
end
|
||||
|
||||
def test_non_valid_identifier_column_name
|
||||
weird = Weird.create('a$b' => 'value')
|
||||
weird.reload
|
||||
|
|
Loading…
Reference in a new issue