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_shift_jis.rb
naruse 800f04c6a5 * numeric.c (rb_enc_uint_char): raise RangeError when added codepoint
is invalid. [Feature #5855] [Bug #5863] [Bug #5864]

* string.c (rb_str_concat): ditto.

* string.c (rb_str_concat): set encoding as ASCII-8BIT when the string
  is US-ASCII and the argument is an integer greater than 127.

* regenc.c (onigenc_mb2_code_to_mbclen): rearrange error code.

* enc/euc_jp.c (code_to_mbclen): ditto.

* enc/shift_jis.c (code_to_mbclen): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-08 20:42:45 +00:00

27 lines
795 B
Ruby
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# vim: set fileencoding=shift_jis
require "test/unit"
class TestShiftJIS < Test::Unit::TestCase
def test_mbc_case_fold
assert_match(/()(a)\1\2/i, "aA")
assert_no_match(/()(a)\1\2/i, "aA")
end
def test_property
assert_match(/あ{0}\p{Hiragana}{4}/, "ひらがな")
assert_no_match(/あ{0}\p{Hiragana}{4}/, "カタカナ")
assert_no_match(/あ{0}\p{Hiragana}{4}/, "漢字漢字")
assert_no_match(/あ{0}\p{Katakana}{4}/, "ひらがな")
assert_match(/あ{0}\p{Katakana}{4}/, "カタカナ")
assert_no_match(/あ{0}\p{Katakana}{4}/, "漢字漢字")
assert_raise(RegexpError) { Regexp.new('あ{0}\p{foobarbaz}') }
end
def test_code_to_mbclen
s = "あいうえお"
s << 0x82a9
assert_equal("あいうえおか", s)
assert_raise(RangeError) { s << 0x82 }
end
end