summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-12-12 18:44:21 +0000
committereregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-12-12 18:44:21 +0000
commit6671a826ac0531fb8df2b3fceb726f66ddcce5af (patch)
treeeb60f45d34266faf8730800a83fc15f0b3435493
parent2dfbc64fab124dba4416357736c22c9cadbe3c49 (diff)
Fix tests which fail with extra stderr output when a Thread dies
* [Feature #14143] [ruby-core:83979]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--test/digest/test_digest.rb1
-rw-r--r--test/ruby/test_io.rb16
2 files changed, 11 insertions, 6 deletions
diff --git a/test/digest/test_digest.rb b/test/digest/test_digest.rb
index abb6352e5a..4cae455076 100644
--- a/test/digest/test_digest.rb
+++ b/test/digest/test_digest.rb
@@ -264,6 +264,7 @@ module TestDigest
assert_nothing_raised {
t = Thread.start {
sleep 0.1
+ Thread.current.report_on_exception = false
Digest::Foo.new
}
Digest(:Foo).new
diff --git a/test/ruby/test_io.rb b/test/ruby/test_io.rb
index a0a574e69d..f3b509a261 100644
--- a/test/ruby/test_io.rb
+++ b/test/ruby/test_io.rb
@@ -2911,11 +2911,15 @@ __END__
$stdin.reopen(r)
r.close
read_thread = Thread.new do
- $stdin.read(1)
+ begin
+ $stdin.read(1)
+ rescue IOError => e
+ e
+ end
end
sleep(0.1) until read_thread.stop?
$stdin.close
- assert_raise(IOError) {read_thread.join}
+ assert_kind_of(IOError, read_thread.value)
end
end;
end
@@ -3539,7 +3543,9 @@ __END__
thread = Thread.new do
begin
q << true
- while r.gets
+ assert_raise_with_message(IOError, /stream closed/) do
+ while r.gets
+ end
end
ensure
closed = r.closed?
@@ -3548,9 +3554,7 @@ __END__
q.pop
sleep 0.01 until thread.stop?
r.close
- assert_raise_with_message(IOError, /stream closed/) do
- thread.join
- end
+ thread.join
assert_equal(true, closed, bug13158 + ': stream should be closed')
end
end;