[MacRuby/MacRuby] 26aa80: StringIO#{each, gets, readline, readlines} will ac...
Branch: refs/heads/master Home: https://github.com/MacRuby/MacRuby Commit: 26aa80126dfd06040d080aa1c518a33a5bb8c6e7 https://github.com/MacRuby/MacRuby/commit/26aa80126dfd06040d080aa1c518a33a5b... Author: Watson <watson1978@gmail.com> Date: 2011-04-07 (Thu, 07 Apr 2011) Changed paths: M lib/stringio.rb M spec/frozen/tags/macruby/library/stringio/gets_tags.txt Log Message: ----------- StringIO#{each, gets, readline, readlines} will accept limit argument. Test Script: {{{ require 'test/unit/assertions.rb' include Test::Unit::Assertions require 'stringio' f = StringIO.new("foo\nbar\nbaz\n") assert_equal("fo", f.gets(nil, 2)) assert_equal("o\n", f.gets('', 2)) assert_equal(4, f.tell) f = StringIO.new("foo\nbar\n\nbaz\n") assert_equal("fo", f.gets('', 2)) assert_equal("o\nba", f.gets('a', 10)) assert_equal(6, f.tell) assert_equal("r\n", f.gets('x', 2)) f = StringIO.new("a\nb") assert_equal("a\n", f.gets) assert_equal("b", f.gets('aa', 2)) assert_equal(nil, f.gets('aa', 2)) f = StringIO.new("foo\nbar\n\n\nbaz\n\n\n\n") assert_equal("fo", f.gets('', 2)) assert_equal("o\n", f.gets('', 2)) assert_equal("ba", f.gets('', 2)) f = StringIO.new("this>is>an>example") assert_equal("this>", f.gets("is>")) assert_equal("is>an>", f.gets("an>")) assert_equal("example", f.gets("example")) assert_equal(nil, f.gets("ple")) f = StringIO.new("a\nb") assert_equal("a\n", f.gets(2)) assert_equal("", f.gets(0)) f = StringIO.new("\npara1\npara2\n\n\n\n\npara3\n\n") assert_equal("para1\npara2\n\n", f.gets('')) assert_equal(14, f.tell) assert_equal("para3\n\n", f.gets('')) assert_equal(24, f.tell) puts :ok }}}
participants (1)
-
noreply@github.com