mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* transcode_data.h (rb_transcoder): from_unit_length field added.
from_utf8 field removed. * tool/transcode-tblgen.rb: generate offsets range. follow rb_transcoder change. * transcode.c (transcode_loop): don't use from_utf8. make invalid region from_unit_length wise. * enc/trans/iso2022.erb.c: follow rb_transcoder and transcode_generate_node change. * enc/trans/utf_16_32.erb.c: follow rb_transcoder and transcode_generate_node change. explicit :invalid map removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
a456f022fc
commit
2833d9f95d
7 changed files with 109 additions and 68 deletions
|
@ -267,8 +267,30 @@ class TestTranscode < Test::Unit::TestCase
|
|||
"\x80".encode("UTF-32BE", "UTF-8", invalid: :replace))
|
||||
assert_equal("\xFD\xFF\x00\x00".force_encoding("UTF-32LE"),
|
||||
"\x80".encode("UTF-32LE", "UTF-8", invalid: :replace))
|
||||
|
||||
assert_equal("\uFFFD!",
|
||||
"\x01\x00\x00\x00\x00\x00\x00\x21".encode("utf-8", "utf-32be", :invalid=>:replace), "[ruby-dev:35726]")
|
||||
"\xdc\x00\x00!".encode("utf-8", "utf-16be", :invalid=>:replace))
|
||||
assert_equal("\uFFFD!",
|
||||
"\xd8\x00\x00!".encode("utf-8", "utf-16be", :invalid=>:replace))
|
||||
|
||||
assert_equal("\uFFFD!",
|
||||
"\x00\xdc!\x00".encode("utf-8", "utf-16le", :invalid=>:replace))
|
||||
assert_equal("\uFFFD!",
|
||||
"\x00\xd8!\x00".encode("utf-8", "utf-16le", :invalid=>:replace))
|
||||
|
||||
assert_equal("\uFFFD!",
|
||||
"\x01\x00\x00\x00\x00\x00\x00!".encode("utf-8", "utf-32be", :invalid=>:replace), "[ruby-dev:35726]")
|
||||
assert_equal("\uFFFD!",
|
||||
"\x00\xff\x00\x00\x00\x00\x00!".encode("utf-8", "utf-32be", :invalid=>:replace))
|
||||
assert_equal("\uFFFD!",
|
||||
"\x00\x00\xd8\x00\x00\x00\x00!".encode("utf-8", "utf-32be", :invalid=>:replace))
|
||||
|
||||
assert_equal("\uFFFD!",
|
||||
"\xff!".encode("utf-8", "euc-jp", :invalid=>:replace))
|
||||
assert_equal("\uFFFD!",
|
||||
"\xa1!".encode("utf-8", "euc-jp", :invalid=>:replace))
|
||||
assert_equal("\uFFFD!",
|
||||
"\x8f\xa1!".encode("utf-8", "euc-jp", :invalid=>:replace))
|
||||
end
|
||||
|
||||
def test_undef_replace
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue