Additional fix and tests for r53851

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
naruse 2016-02-17 10:15:28 +00:00
parent c00d51c739
commit d092fc5398
2 changed files with 14 additions and 3 deletions

View file

@ -59,6 +59,17 @@ class TestString < Test::Unit::TestCase
assert_equal(Encoding::EUC_JP, S("", capacity: 1000, encoding: "euc-jp").encoding)
end
def test_initialize
str = S("").freeze
assert_equal("", str.__send__(:initialize))
assert_raise(RuntimeError){ str.__send__(:initialize, 'abc') }
assert_raise(RuntimeError){ str.__send__(:initialize, capacity: 1000) }
assert_raise(RuntimeError){ str.__send__(:initialize, 'abc', capacity: 1000) }
assert_raise(RuntimeError){ str.__send__(:initialize, encoding: 'euc-jp') }
assert_raise(RuntimeError){ str.__send__(:initialize, 'abc', encoding: 'euc-jp') }
assert_raise(RuntimeError){ str.__send__(:initialize, 'abc', capacity: 1000, encoding: 'euc-jp') }
end
def test_AREF # '[]'
assert_equal("A", S("AooBar")[0])
assert_equal("B", S("FooBaB")[-1])