summaryrefslogtreecommitdiff
path: root/test/ruby
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-01-25 14:26:56 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-01-25 14:26:56 +0000
commit8142629cae291cd6dfb2dd5b67849bb915d4b6cf (patch)
treeb7f38c11b2be3acb2280e45a72f939f4fbc134ec /test/ruby
parent3f25c4f65e37c30482c326148202510a7858df74 (diff)
* test/ruby/test_string.rb (test_split): add tests.
patched by Hugh Sasse [ruby-core:27794] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@26410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby')
-rw-r--r--test/ruby/test_string.rb252
1 files changed, 252 insertions, 0 deletions
diff --git a/test/ruby/test_string.rb b/test/ruby/test_string.rb
index 5775f4b878..fc046060eb 100644
--- a/test/ruby/test_string.rb
+++ b/test/ruby/test_string.rb
@@ -153,4 +153,256 @@ class TestString < Test::Unit::TestCase
ensure
$KCODE = original_kcode
end
+
+ def test_split
+ result = " now's the time".split
+ assert_equal("now's", result[0])
+ assert_equal("the", result[1])
+ assert_equal("time", result[2])
+
+ result = " now's the time".split(' ')
+ assert_equal("now's", result[0])
+ assert_equal("the", result[1])
+ assert_equal("time", result[2])
+
+ result = " now's the time".split(/ /)
+ assert_equal("", result[0])
+ assert_equal("now's", result[1])
+ assert_equal("", result[2])
+ assert_equal("the", result[3])
+ assert_equal("time", result[4])
+
+ result = "1, 2.34,56, 7".split(%r{,\s*})
+ assert_equal("1", result[0])
+ assert_equal("2.34", result[1])
+ assert_equal("56", result[2])
+ assert_equal("7", result[3])
+
+ result = "1, 2.34,56".split(%r{(,\s*)})
+ assert_equal("1", result[0])
+ assert_equal(", ", result[1])
+ assert_equal("2.34", result[2])
+ assert_equal(",", result[3])
+ assert_equal("56", result[4])
+
+ result = "wd :sp: wd".split(/(:(\w+):)/)
+ assert_equal("wd ", result[0])
+ assert_equal(":sp:", result[1])
+ assert_equal("sp", result[2])
+ assert_equal(" wd", result[3])
+
+ result = "hello".split(//)
+ assert_equal("h", result[0])
+ assert_equal("e", result[1])
+ assert_equal("l", result[2])
+ assert_equal("l", result[3])
+ assert_equal("o", result[4])
+
+ result = "hello".split(//, 3)
+ assert_equal("h", result[0])
+ assert_equal("e", result[1])
+ assert_equal("llo", result[2])
+
+ result = "hi mom".split(%r{\s*})
+ assert_equal("h", result[0])
+ assert_equal("i", result[1])
+ assert_equal("m", result[2])
+ assert_equal("o", result[3])
+ assert_equal("m", result[4])
+
+ result = "mellow yellow".split("ello")
+ assert_equal("m", result[0])
+ assert_equal("w y", result[1])
+ assert_equal("w", result[2])
+
+ result = "1,2,,3,4,,".split(',')
+ assert_equal("1", result[0])
+ assert_equal("2", result[1])
+ assert_equal("", result[2])
+ assert_equal("3", result[3])
+ assert_equal("4", result[4])
+
+ result = "1,2,,3,4,,".split(',', 4)
+ assert_equal("1", result[0])
+ assert_equal("2", result[1])
+ assert_equal("", result[2])
+ assert_equal("3,4,,", result[3])
+
+ result = "1,2,,3,4,,".split(',', -4)
+ assert_equal("1", result[0])
+ assert_equal("2", result[1])
+ assert_equal("", result[2])
+ assert_equal("3", result[3])
+ assert_equal("4", result[4])
+ assert_equal("", result[5])
+ assert_equal("", result[6])
+ end
+
+ def test_split
+ result = " now's the time".split
+ assert_equal("now's", result[0])
+ assert_equal("the", result[1])
+ assert_equal("time", result[2])
+
+ result = " now's the time".split(' ')
+ assert_equal("now's", result[0])
+ assert_equal("the", result[1])
+ assert_equal("time", result[2])
+
+ result = " now's the time".split(/ /)
+ assert_equal("", result[0])
+ assert_equal("now's", result[1])
+ assert_equal("", result[2])
+ assert_equal("the", result[3])
+ assert_equal("time", result[4])
+
+ result = "1, 2.34,56, 7".split(%r{,\s*})
+ assert_equal("1", result[0])
+ assert_equal("2.34", result[1])
+ assert_equal("56", result[2])
+ assert_equal("7", result[3])
+
+ result = "1, 2.34,56".split(%r{(,\s*)})
+ assert_equal("1", result[0])
+ assert_equal(", ", result[1])
+ assert_equal("2.34", result[2])
+ assert_equal(",", result[3])
+ assert_equal("56", result[4])
+
+ result = "wd :sp: wd".split(/(:(\w+):)/)
+ assert_equal("wd ", result[0])
+ assert_equal(":sp:", result[1])
+ assert_equal("sp", result[2])
+ assert_equal(" wd", result[3])
+
+ result = "hello".split(//)
+ assert_equal("h", result[0])
+ assert_equal("e", result[1])
+ assert_equal("l", result[2])
+ assert_equal("l", result[3])
+ assert_equal("o", result[4])
+
+ result = "hello".split(//, 3)
+ assert_equal("h", result[0])
+ assert_equal("e", result[1])
+ assert_equal("llo", result[2])
+
+ result = "hi mom".split(%r{\s*})
+ assert_equal("h", result[0])
+ assert_equal("i", result[1])
+ assert_equal("m", result[2])
+ assert_equal("o", result[3])
+ assert_equal("m", result[4])
+
+ result = "mellow yellow".split("ello")
+ assert_equal("m", result[0])
+ assert_equal("w y", result[1])
+ assert_equal("w", result[2])
+
+ result = "1,2,,3,4,,".split(',')
+ assert_equal("1", result[0])
+ assert_equal("2", result[1])
+ assert_equal("", result[2])
+ assert_equal("3", result[3])
+ assert_equal("4", result[4])
+
+ result = "1,2,,3,4,,".split(',', 4)
+ assert_equal("1", result[0])
+ assert_equal("2", result[1])
+ assert_equal("", result[2])
+ assert_equal("3,4,,", result[3])
+
+ result = "1,2,,3,4,,".split(',', -4)
+ assert_equal("1", result[0])
+ assert_equal("2", result[1])
+ assert_equal("", result[2])
+ assert_equal("3", result[3])
+ assert_equal("4", result[4])
+ assert_equal("", result[5])
+ assert_equal("", result[6])
+ end
+
+ def test_split
+ result = " now's the time".split
+ assert_equal("now's", result[0])
+ assert_equal("the", result[1])
+ assert_equal("time", result[2])
+
+ result = " now's the time".split(' ')
+ assert_equal("now's", result[0])
+ assert_equal("the", result[1])
+ assert_equal("time", result[2])
+
+ result = " now's the time".split(/ /)
+ assert_equal("", result[0])
+ assert_equal("now's", result[1])
+ assert_equal("", result[2])
+ assert_equal("the", result[3])
+ assert_equal("time", result[4])
+
+ result = "1, 2.34,56, 7".split(%r{,\s*})
+ assert_equal("1", result[0])
+ assert_equal("2.34", result[1])
+ assert_equal("56", result[2])
+ assert_equal("7", result[3])
+
+ result = "1, 2.34,56".split(%r{(,\s*)})
+ assert_equal("1", result[0])
+ assert_equal(", ", result[1])
+ assert_equal("2.34", result[2])
+ assert_equal(",", result[3])
+ assert_equal("56", result[4])
+
+ result = "wd :sp: wd".split(/(:(\w+):)/)
+ assert_equal("wd ", result[0])
+ assert_equal(":sp:", result[1])
+ assert_equal("sp", result[2])
+ assert_equal(" wd", result[3])
+
+ result = "hello".split(//)
+ assert_equal("h", result[0])
+ assert_equal("e", result[1])
+ assert_equal("l", result[2])
+ assert_equal("l", result[3])
+ assert_equal("o", result[4])
+
+ result = "hello".split(//, 3)
+ assert_equal("h", result[0])
+ assert_equal("e", result[1])
+ assert_equal("llo", result[2])
+
+ result = "hi mom".split(%r{\s*})
+ assert_equal("h", result[0])
+ assert_equal("i", result[1])
+ assert_equal("m", result[2])
+ assert_equal("o", result[3])
+ assert_equal("m", result[4])
+
+ result = "mellow yellow".split("ello")
+ assert_equal("m", result[0])
+ assert_equal("w y", result[1])
+ assert_equal("w", result[2])
+
+ result = "1,2,,3,4,,".split(',')
+ assert_equal("1", result[0])
+ assert_equal("2", result[1])
+ assert_equal("", result[2])
+ assert_equal("3", result[3])
+ assert_equal("4", result[4])
+
+ result = "1,2,,3,4,,".split(',', 4)
+ assert_equal("1", result[0])
+ assert_equal("2", result[1])
+ assert_equal("", result[2])
+ assert_equal("3,4,,", result[3])
+
+ result = "1,2,,3,4,,".split(',', -4)
+ assert_equal("1", result[0])
+ assert_equal("2", result[1])
+ assert_equal("", result[2])
+ assert_equal("3", result[3])
+ assert_equal("4", result[4])
+ assert_equal("", result[5])
+ assert_equal("", result[6])
+ end
end