diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-09 03:50:11 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-09 03:50:11 +0000 |
commit | 5a1c2b2677129ffadde65633577f7e0a739a1745 (patch) | |
tree | 812b569d50c737c109f2d9c54dcca4d503d449b8 /test | |
parent | 78cc1c45ee1dac3f32fccb6f0cd8739403d7568c (diff) | |
download | ruby-5a1c2b2677129ffadde65633577f7e0a739a1745.tar.gz |
* re.c (append_utf8): check unicode range.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r-- | test/ruby/test_m17n.rb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/ruby/test_m17n.rb b/test/ruby/test_m17n.rb index 28f636fc65..f0c98eb4eb 100644 --- a/test/ruby/test_m17n.rb +++ b/test/ruby/test_m17n.rb @@ -446,6 +446,16 @@ class TestM17N < Test::Unit::TestCase #assert_raise(SyntaxError) { s1, s2 = u('\xc2'), u('\xa1'); /#{s1}#{s2}/ } end + def test_regexp_unicode + assert_nothing_raised { eval '/\u{0}/' } + assert_nothing_raised { eval '/\u{D7FF}/' } + assert_raise(SyntaxError) { eval '/\u{D800}/' } + assert_raise(SyntaxError) { eval '/\u{DFFF}/' } + assert_nothing_raised { eval '/\u{E000}/' } + assert_nothing_raised { eval '/\u{10FFFF}/' } + assert_raise(SyntaxError) { eval '/\u{110000}/' } + end + def test_regexp_mixed_unicode assert_raise(SyntaxError) { eval(a(%{/\xc2\xa0\\u{6666}/})) } assert_raise(SyntaxError) { eval(e(%{/\xc2\xa0\\u{6666}/})) } |