summaryrefslogtreecommitdiff
path: root/test/ruby/test_utf16.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/ruby/test_utf16.rb')
-rw-r--r--test/ruby/test_utf16.rb31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/ruby/test_utf16.rb b/test/ruby/test_utf16.rb
index 3ffc8b86ec..474e7e8acc 100644
--- a/test/ruby/test_utf16.rb
+++ b/test/ruby/test_utf16.rb
@@ -10,6 +10,33 @@ class TestUTF16 < Test::Unit::TestCase
end
end
+ def enccall(recv, meth, *args)
+ desc = ''
+ if String === recv
+ desc << encdump(recv)
+ else
+ desc << recv.inspect
+ end
+ desc << '.' << meth.to_s
+ if !args.empty?
+ desc << '('
+ args.each_with_index {|a, i|
+ desc << ',' if 0 < i
+ if String === a
+ desc << encdump(a)
+ else
+ desc << a.inspect
+ end
+ }
+ desc << ')'
+ end
+ result = nil
+ assert_nothing_raised(desc) {
+ result = recv.send(meth, *args)
+ }
+ result
+ end
+
# tests start
def test_utf16be_valid_encoding
@@ -72,4 +99,8 @@ class TestUTF16 < Test::Unit::TestCase
"a#{s}"
}
end
+
+ def test_slice!
+ enccall("aa".force_encoding("UTF-16BE"), :slice!, -1)
+ end
end