1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/test/ruby/enc/test_windows_1252.rb
nagachika 80b1311383 merge revision(s) 52883,52884,53046,53198: [Backport #11838]
* enc/iso_8859_4.c: Added missing lower/upper-case character
	  pair (U+014A and U+014B, LATIN CAPITAL/SMALL LETTER ENG)

	* enc/iso_8859_13.c: Added three missing lower/upper-case
	  character pairs (from Kimihito Matsui)
	  (from Kimihito Matsui)

	* enc/windows_1252.c: separate from ISO-8859-1 to fix 0x80..0x9e
	  range.  [ruby-core:64049] [Bug #10097]

	* enc/iso_8859_2.c, enc/windows_1250.c: separate Windows-1250
	  from ISO-8859-2 to fix 0x80..0x9e range (from Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@53896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-22 19:00:17 +00:00

25 lines
797 B
Ruby

# encoding:windows-1252
require "test/unit"
class TestWindows1252 < Test::Unit::TestCase
def test_stset
assert_match(/^(\xdf)\1$/i, "\xdf\xdf")
assert_match(/^(\xdf)\1$/i, "ssss")
# assert_match(/^(\xdf)\1$/i, "\xdfss") # this must be bug...
assert_match(/^[\xdfz]+$/i, "sszzsszz")
assert_match(/^SS$/i, "\xdf")
assert_match(/^Ss$/i, "\xdf")
end
def test_windows_1252
[0x8a, 0x8c, 0x8e, *0xc0..0xd6, *0xd8..0xde, 0x9f].zip([0x9a, 0x9c, 0x9e, *0xe0..0xf6, *0xf8..0xfe, 0xff]).each do |c1, c2|
c1 = c1.chr("windows-1252")
c2 = c2.chr("windows-1252")
assert_match(/^(#{ c1 })\1$/i, c2 + c1)
assert_match(/^(#{ c2 })\1$/i, c1 + c2)
assert_match(/^[#{ c1 }]+$/i, c2 + c1)
assert_match(/^[#{ c2 }]+$/i, c1 + c2)
end
end
end