Issue #5850 has been updated by Ayumu AIZAWA.
=begin
GCが変更されたからなのかわかりませんが、挙動が変化しました。
test_io.rbの全体を実行した場合のみ test_copy_stream がエラーとなります。
== test_autoclose のみ実行した場合:
1:ruby ➔ make test-all TESTS=“-n ‘/test_autoclose\Z/’
test/ruby/test_io.rb”
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext
– --disable-gems “./test/runner.rb” --ruby=“./miniruby -I./lib -I.
-I.ext/common ./tool/runruby.rb --extout=.ext – --disable-gems” -n
‘/test_autoclose\Z/’ test/ruby/test_io.rb
Run options: “–ruby=./miniruby -I./lib -I. -I.ext/common
./tool/runruby.rb --extout=.ext – --disable-gems” -n
/test_autoclose\Z/
Running tests:
.
Finished tests in 0.608045s, 1.6446 tests/s, 13.1569 assertions/s.
1 tests, 8 assertions, 0 failures, 0 errors, 0 skips
ruby -v: ruby 2.0.0dev (2012-01-08 trunk 34230) [x86_64-darwin10.8.0]
== test_copy_stream のみ実行した場合:
1:ruby ➔ make test-all TESTS=“-n ‘/test_copy_stream\Z/’
test/ruby/test_io.rb”
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext
– --disable-gems “./test/runner.rb” --ruby=“./miniruby -I./lib -I.
-I.ext/common ./tool/runruby.rb --extout=.ext – --disable-gems” -n
‘/test_copy_stream\Z/’ test/ruby/test_io.rb
Run options: “–ruby=./miniruby -I./lib -I. -I.ext/common
./tool/runruby.rb --extout=.ext – --disable-gems” -n
/test_copy_stream\Z/
Running tests:
.
Finished tests in 1.147130s, 0.8717 tests/s, 52.3044 assertions/s.
1 tests, 60 assertions, 0 failures, 0 errors, 0 skips
ruby -v: ruby 2.0.0dev (2012-01-08 trunk 34230) [x86_64-darwin10.8.0]
== test_autoclose と test_copy_stream を実行した場合:
1:ruby ➔ make test-all TESTS=“-n ‘/test_(autoclose|copy_stream)\Z/’
test/ruby/test_io.rb”
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext
– --disable-gems “./test/runner.rb” --ruby=“./miniruby -I./lib -I.
-I.ext/common ./tool/runruby.rb --extout=.ext – --disable-gems” -n
‘/test_(autoclose|copy_stream)\Z/’ test/ruby/test_io.rb
Run options: “–ruby=./miniruby -I./lib -I. -I.ext/common
./tool/runruby.rb --extout=.ext – --disable-gems” -n
“/test_(autoclose|copy_stream)\Z/”
Running tests:
…
Finished tests in 1.767467s, 1.1316 tests/s, 38.4731 assertions/s.
2 tests, 68 assertions, 0 failures, 0 errors, 0 skips
ruby -v: ruby 2.0.0dev (2012-01-08 trunk 34230) [x86_64-darwin10.8.0]
== test_io.rb 全体を実行した場合:
1:ruby ➔ make test-all TESTS=“test/ruby/test_io.rb”
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext
– --disable-gems “./test/runner.rb” --ruby=“./miniruby -I./lib -I.
-I.ext/common ./tool/runruby.rb --extout=.ext – --disable-gems”
test/ruby/test_io.rb
Run options: “–ruby=./miniruby -I./lib -I. -I.ext/common
./tool/runruby.rb --extout=.ext – --disable-gems”
Running tests:
…E…
Finished tests in 4.331913s, 26.3163 tests/s, 131.8124 assertions/s.
- Error:
test_copy_stream(TestIO):
IOError: closed stream
/Users/ayumin/github/ruby/lib/tempfile.rb:275:in close' /Users/ayumin/github/ruby/lib/tempfile.rb:275:in
call’
/Users/ayumin/github/ruby/test/ruby/test_io.rb:416:in read' /Users/ayumin/github/ruby/test/ruby/test_io.rb:416:in
block (4 levels)
in test_copy_stream’
114 tests, 571 assertions, 0 failures, 1 errors, 0 skips
ruby -v: ruby 2.0.0dev (2012-01-08 trunk 34230) [x86_64-darwin10.8.0]
make: *** [yes-test-all] Error 1
=end
Bug #5850: Failure test/ruby/test_io.rb
Author: Ayumu AIZAWA
Status: Open
Priority: Normal
Assignee:
Category: core
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2012-01-06 trunk 34219) [x86_64-darwin10.8.0]
=begin
r34219で test/ruby/test_io.rb が1件失敗、1件エラーになります。
エラーの方は-j で実行すると最初は失敗してそのあと成功します。
0:ruby ➔ make test-all TESTS=test/ruby/test_io.rb
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext
– --disable-gems “./test/runner.rb” --ruby=“./miniruby -I./lib -I.
-I.ext/common ./tool/runruby.rb --extout=.ext – --disable-gems”
test/ruby/test_io.rb
Run options: “–ruby=./miniruby -I./lib -I. -I.ext/common
./tool/runruby.rb --extout=.ext – --disable-gems”
Running tests:
.F…E…
Finished tests in 4.242426s, 26.8714 tests/s, 134.3571 assertions/s.
-
Failure:
test_autoclose(TestIO)
[/Users/ayumin/github/ruby/test/ruby/test_io.rb:1444]:
Errno::EBADF expected but nothing was raised.
-
Error:
test_copy_stream(TestIO):
Errno::EBADF: Bad file descriptor
/Users/ayumin/github/ruby/test/ruby/test_io.rb:32:in close' /Users/ayumin/github/ruby/test/ruby/test_io.rb:32:in
rescue in block
in pipe’
/Users/ayumin/github/ruby/test/ruby/test_io.rb:29:in `block in pipe’
114 tests, 570 assertions, 1 failures, 1 errors, 0 skips
ruby -v: ruby 2.0.0dev (2012-01-06 trunk 34219) [x86_64-darwin10.8.0]
make: *** [yes-test-all] Error 2
0:ruby ➔ make test-all TESTS=‘-j 2 test/ruby/test_io.rb’
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext
– --disable-gems “./test/runner.rb” --ruby=“./miniruby -I./lib -I.
-I.ext/common ./tool/runruby.rb --extout=.ext – --disable-gems” -j 2
test/ruby/test_io.rb
Run options: “–ruby=./miniruby -I./lib -I. -I.ext/common
./tool/runruby.rb --extout=.ext – --disable-gems” -j 2
Running tests:
.F…E…
Retrying…
.F…
Finished tests in 10.072929s, 11.3175 tests/s, 56.5873 assertions/s.
- Failure:
test_autoclose(TestIO)
[/Users/ayumin/github/ruby/test/ruby/test_io.rb:1444]:
Errno::EBADF expected but nothing was raised.
114 tests, 570 assertions, 1 failures, 0 errors, 0 skips
ruby -v: ruby 2.0.0dev (2012-01-06 trunk 34219) [x86_64-darwin10.8.0]
make: *** [yes-test-all] Error 1
=end