summaryrefslogtreecommitdiff
path: root/trunk/test/ruby/enc/test_shift_jis.rb
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/test/ruby/enc/test_shift_jis.rb')
-rw-r--r--trunk/test/ruby/enc/test_shift_jis.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/trunk/test/ruby/enc/test_shift_jis.rb b/trunk/test/ruby/enc/test_shift_jis.rb
new file mode 100644
index 0000000000..f81cb7801c
--- /dev/null
+++ b/trunk/test/ruby/enc/test_shift_jis.rb
@@ -0,0 +1,27 @@
+# vim: set fileencoding=shift_jis
+
+require "test/unit"
+
+class TestShiftJIS < Test::Unit::TestCase
+ def test_mbc_case_fold
+ assert_match(/(a)(a)\1\2/i, "aaaA")
+ assert_no_match(/(a)(a)\1\2/i, "aaAA")
+ 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(ArgumentError) { s << 0x82 }
+ end
+end