[前][次][番号順一覧][スレッド一覧]

ruby-changes:14570

From: naruse <ko1@a...>
Date: Mon, 25 Jan 2010 23:27:08 +0900 (JST)
Subject: [ruby-changes:14570] Ruby:r26410 (ruby_1_8): * test/ruby/test_string.rb (test_split): add tests.

naruse	2010-01-25 23:26:56 +0900 (Mon, 25 Jan 2010)

  New Revision: 26410

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=26410

  Log:
    * test/ruby/test_string.rb (test_split): add tests.
      patched by Hugh Sasse [ruby-core:27794]

  Modified files:
    branches/ruby_1_8/ChangeLog
    branches/ruby_1_8/test/ruby/test_string.rb

Index: ruby_1_8/ChangeLog
===================================================================
--- ruby_1_8/ChangeLog	(revision 26409)
+++ ruby_1_8/ChangeLog	(revision 26410)
@@ -1,3 +1,8 @@
+Mon Jan 25 23:24:26 2010  NARUSE, Yui  <naruse@r...>
+
+	* test/ruby/test_string.rb (test_split): add tests.
+	  patched by Hugh Sasse [ruby-core:27794]
+
 Fri Jan 22 01:22:27 2010  NAKAMURA Usaku  <usa@r...>
 
 	* eval.c (thread_timer, rb_thread_stop_timer): check the timing of
Index: ruby_1_8/test/ruby/test_string.rb
===================================================================
--- ruby_1_8/test/ruby/test_string.rb	(revision 26409)
+++ ruby_1_8/test/ruby/test_string.rb	(revision 26410)
@@ -153,4 +153,256 @@
   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

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]