summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/ruby/test_argf.rb82
-rw-r--r--version.h4
2 files changed, 31 insertions, 55 deletions
diff --git a/test/ruby/test_argf.rb b/test/ruby/test_argf.rb
index ed92a516ad..6f6622e66b 100644
--- a/test/ruby/test_argf.rb
+++ b/test/ruby/test_argf.rb
@@ -54,8 +54,21 @@ class TestArgf < Test::Unit::TestCase
/cygwin|mswin|mingw|bccwin/ =~ RUBY_PLATFORM
end
+ def assert_src_expected(line, src, args = nil)
+ args ||= [@t1.path, @t2.path, @t3.path]
+ expected = src.split(/^/)
+ ruby('-e', src, *args) do |f|
+ expected.each_with_index do |e, i|
+ /#=> *(.*)/ =~ e or next
+ a = f.gets
+ assert_not_nil(a, "[ruby-dev:34445]: remained")
+ assert_equal($1, a.chomp, "[ruby-dev:34445]: line #{line+i}")
+ end
+ end
+ end
+
def test_argf
- src = <<-SRC
+ assert_src_expected(__LINE__+1, <<-'SRC')
a = ARGF
b = a.dup
p [a.gets.chomp, a.lineno, b.gets.chomp, b.lineno] #=> ["1", 1, "1", 1]
@@ -72,20 +85,10 @@ class TestArgf < Test::Unit::TestCase
p [a.gets.chomp, a.lineno, b.gets.chomp, b.lineno] #=> ["5", 5, "5", 8]
p [a.gets.chomp, a.lineno, b.gets.chomp, b.lineno] #=> ["6", 6, "6", 9]
SRC
- expected = src.scan(/\#=> *(.+)/).flatten
- ruby('-e', src, @t1.path, @t2.path, @t3.path) do |f|
- f.each_with_index do |a, i|
- assert_equal(expected.shift, a.chomp, "[ruby-dev:34445]: line #{i}")
- end
-
- assert_empty(expected, "[ruby-dev:34445]: remained")
-
- # is this test OK? [ruby-dev:34445]
- end
end
def test_lineno
- src = <<-SRC
+ assert_src_expected(__LINE__+1, <<-'SRC')
a = ARGF
a.gets; p $. #=> 1
a.gets; p $. #=> 2
@@ -102,14 +105,10 @@ class TestArgf < Test::Unit::TestCase
a.gets; p $. #=> 2001
a.gets; p $. #=> 2001
SRC
- expected = src.scan(/\#=> *(.+)/).join(",")
- ruby('-e', src, @t1.path, @t2.path, @t3.path) do |f|
- assert_equal(expected, f.read.chomp.gsub("\n", ","))
- end
end
def test_lineno2
- src = <<-SRC
+ assert_src_expected(__LINE__+1, <<-'SRC')
a = ARGF.dup
a.gets; p $. #=> 1
a.gets; p $. #=> 2
@@ -125,10 +124,6 @@ class TestArgf < Test::Unit::TestCase
a.gets; p $. #=> 2000
a.gets; p $. #=> 2000
SRC
- expected = src.scan(/\#=> *(.+)/).join(",")
- ruby('-e', src, @t1.path, @t2.path, @t3.path) do |f|
- assert_equal(expected, f.read.chomp.gsub("\n", ","))
- end
end
def test_inplace
@@ -304,73 +299,54 @@ class TestArgf < Test::Unit::TestCase
end
def test_seek
- ruby('-e', <<-SRC, @t1.path, @t2.path, @t3.path) do |f|
+ assert_src_expected(__LINE__+1, <<-'SRC')
ARGF.seek(4)
- p ARGF.gets #=> "3"
+ p ARGF.gets #=> "3\n"
ARGF.seek(0, IO::SEEK_END)
- p ARGF.gets #=> "5"
+ p ARGF.gets #=> "5\n"
ARGF.seek(4)
p ARGF.gets #=> nil
begin
ARGF.seek(0)
rescue
- puts "end"
+ puts "end" #=> end
end
SRC
- a = f.read.split("\n")
- assert_equal('"3\n"', a.shift)
- assert_equal('"5\n"', a.shift)
- assert_equal('nil', a.shift)
- assert_equal('end', a.shift)
- end
end
def test_set_pos
- ruby('-e', <<-SRC, @t1.path, @t2.path, @t3.path) do |f|
+ assert_src_expected(__LINE__+1, <<-'SRC')
ARGF.pos = 4
- p ARGF.gets #=> "3"
+ p ARGF.gets #=> "3\n"
ARGF.pos = 4
- p ARGF.gets #=> "5"
+ p ARGF.gets #=> "5\n"
ARGF.pos = 4
p ARGF.gets #=> nil
begin
ARGF.pos = 4
rescue
- puts "end"
+ puts "end" #=> end
end
SRC
- a = f.read.split("\n")
- assert_equal('"3\n"', a.shift)
- assert_equal('"5\n"', a.shift)
- assert_equal('nil', a.shift)
- assert_equal('end', a.shift)
- end
end
def test_rewind
- ruby('-e', <<-SRC, @t1.path, @t2.path, @t3.path) do |f|
+ assert_src_expected(__LINE__+1, <<-'SRC')
ARGF.pos = 4
ARGF.rewind
- p ARGF.gets #=> "1"
+ p ARGF.gets #=> "1\n"
ARGF.pos = 4
- p ARGF.gets #=> "3"
+ p ARGF.gets #=> "3\n"
ARGF.pos = 4
- p ARGF.gets #=> "5"
+ p ARGF.gets #=> "5\n"
ARGF.pos = 4
p ARGF.gets #=> nil
begin
ARGF.rewind
rescue
- puts "end"
+ puts "end" #=> end
end
SRC
- a = f.read.split("\n")
- assert_equal('"1\n"', a.shift)
- assert_equal('"3\n"', a.shift)
- assert_equal('"5\n"', a.shift)
- assert_equal('nil', a.shift)
- assert_equal('end', a.shift)
- end
end
def test_fileno
diff --git a/version.h b/version.h
index 595a8c3bdb..88b61536e8 100644
--- a/version.h
+++ b/version.h
@@ -1,5 +1,5 @@
#define RUBY_VERSION "1.9.2"
-#define RUBY_RELEASE_DATE "2009-08-30"
+#define RUBY_RELEASE_DATE "2009-08-31"
#define RUBY_PATCHLEVEL -1
#define RUBY_BRANCH_NAME "trunk"
@@ -8,7 +8,7 @@
#define RUBY_VERSION_TEENY 1
#define RUBY_RELEASE_YEAR 2009
#define RUBY_RELEASE_MONTH 8
-#define RUBY_RELEASE_DAY 30
+#define RUBY_RELEASE_DAY 31
#include "ruby/version.h"