From 0e292561756eae33f73d6ab93ee3ddb0aeab3dd2 Mon Sep 17 00:00:00 2001 From: duerst Date: Tue, 12 Jul 2016 23:40:26 +0000 Subject: * test/ruby/enc/test_iso_8859.rb: Excluded dotless i/I with dot from case-insensitive matching because they are not a case pair. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/enc/test_iso_8859.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/test/ruby/enc/test_iso_8859.rb b/test/ruby/enc/test_iso_8859.rb index f6b3b3f28b..067c375f51 100644 --- a/test/ruby/enc/test_iso_8859.rb +++ b/test/ruby/enc/test_iso_8859.rb @@ -29,13 +29,15 @@ class TestISO8859 < Test::Unit::TestCase end def test_iso_8859_3 + # todo: decide on behavior, test, and fix implementation re. İ and ı (0xA9/0xB9) + # treating them as case equivalents is definitely an error eval(%q(# encoding: iso8859-3 assert_match(/^(\xdf)\1$/i, "\xdf\xdf") assert_match(/^(\xdf)\1$/i, "ssss") assert_match(/^[\xdfz]+$/i, "sszzsszz") assert_match(/^SS$/i, "\xdf") assert_match(/^Ss$/i, "\xdf") - [0xa1, 0xa6, *(0xa9..0xac), 0xaf].each do |c| + [0xa1, 0xa6, *(0xaa..0xac), 0xaf].each do |c| c1 = c.chr("iso8859-3") c2 = (c + 0x10).chr("iso8859-3") assert_match(/^(#{ c1 })\1$/i, c2 + c1) -- cgit v1.2.3