aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--test/lib/test/unit/assertions.rb2
-rw-r--r--test/testunit/test_assertion.rb8
2 files changed, 9 insertions, 1 deletions
diff --git a/test/lib/test/unit/assertions.rb b/test/lib/test/unit/assertions.rb
index 4e30de1be0..2a75871d7d 100644
--- a/test/lib/test/unit/assertions.rb
+++ b/test/lib/test/unit/assertions.rb
@@ -602,7 +602,7 @@ EOT
eom
args = args.dup
args.insert((Hash === args.first ? 1 : 0), "-w", "--disable=gems", *$:.map {|l| "-I#{l}"})
- stdout, stderr, status = EnvUtil.invoke_ruby(args, src, true, true, timeout_error: nil, **opt)
+ stdout, stderr, status = EnvUtil.invoke_ruby(args, src, true, true, **opt)
abort = status.coredump? || (status.signaled? && ABORT_SIGNALS.include?(status.termsig))
assert(!abort, FailDesc[status, nil, stderr])
self._assertions += stdout[/^assertions=(\d+)/, 1].to_i
diff --git a/test/testunit/test_assertion.rb b/test/testunit/test_assertion.rb
index 4cd7bd7e45..7e772cc7b9 100644
--- a/test/testunit/test_assertion.rb
+++ b/test/testunit/test_assertion.rb
@@ -6,4 +6,12 @@ class TestAssertion < Test::Unit::TestCase
assert_match(/assertion message must be String or Proc, but TrueClass was given/, error.message)
assert_match(/\A#{Regexp.quote(__FILE__)}:#{line}:/, error.backtrace[0])
end
+
+ def test_timeout_separately
+ assert_raise(Timeout::Error) do
+ assert_separately([], <<~"end;", timeout: 0.1)
+ sleep
+ end;
+ end
+ end
end