diff options
| author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-07-31 10:59:39 +0000 |
|---|---|---|
| committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-07-31 10:59:39 +0000 |
| commit | 9a67b8528097ca42bcbb82b8e267019a6871d565 (patch) | |
| tree | e48dbaa6abbe12987f4a8a8fb50a63482fafd548 /test/ruby/test_transcode.rb | |
| parent | a46a71fabdc4314adb62566219ea396c08bffc59 (diff) | |
| download | ruby-9a67b8528097ca42bcbb82b8e267019a6871d565.tar.gz ruby-9a67b8528097ca42bcbb82b8e267019a6871d565.tar.xz ruby-9a67b8528097ca42bcbb82b8e267019a6871d565.zip | |
* transcode.c (get_replacement_character): use U+FFFD as replacement
character when convert to Unicode.
* test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
rename from test_public_review_issue_121.
* test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
enable option2.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_transcode.rb')
| -rw-r--r-- | test/ruby/test_transcode.rb | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/test/ruby/test_transcode.rb b/test/ruby/test_transcode.rb index 9ec2b4367..6aa599b1b 100644 --- a/test/ruby/test_transcode.rb +++ b/test/ruby/test_transcode.rb @@ -312,16 +312,13 @@ class TestTranscode < Test::Unit::TestCase # check_both_ways("\u9299", "\x1b$(Dd!\x1b(B", "iso-2022-jp-1") # JIS X 0212 区68 点01 銙 end - def test_public_review_issue_121 # see http://www.unicode.org/review/pr-121.html + def test_unicode_public_review_issue_121 # see http://www.unicode.org/review/pr-121.html # assert_equal("\x00\x61\x00?\x00\x62".force_encoding('UTF-16BE'), # "\x61\xF1\x80\x80\xE1\x80\xC2\x62".encode('UTF-16BE', 'UTF-8', invalid: :replace)) # option 1 - assert_equal("\x00\x61\x00?\x00?\x00?\x00\x62".force_encoding('UTF-16BE'), + assert_equal("\x00\x61\xFF\xFD\xFF\xFD\xFF\xFD\x00\x62".force_encoding('UTF-16BE'), "\x61\xF1\x80\x80\xE1\x80\xC2\x62".encode('UTF-16BE', 'UTF-8', invalid: :replace)) # option 2 - # The next test doesn't work because of a bug in the implementation - # but we currently don't plan to fix that bug because we'll rewrite - # this stuff a bit anyway. - # assert_equal("\x61\x00?\x00?\x00?\x00\x62\x00".force_encoding('UTF-16LE'), - # "\x61\xF1\x80\x80\xE1\x80\xC2\x62".encode('UTF-16LE', 'UTF-8', invalid: :replace)) # option 2 + assert_equal("\x61\x00\xFD\xFF\xFD\xFF\xFD\xFF\x62\x00".force_encoding('UTF-16LE'), + "\x61\xF1\x80\x80\xE1\x80\xC2\x62".encode('UTF-16LE', 'UTF-8', invalid: :replace)) # option 2 # assert_equal("\x00\x61\x00?\x00?\x00?\x00?\x00?\x00?\x00\x62".force_encoding('UTF-16BE'), # "\x61\xF1\x80\x80\xE1\x80\xC2\x62".encode('UTF-16BE', 'UTF-8', invalid: :replace)) # option 3 end |
