34 lines
1.4 KiB
Diff
34 lines
1.4 KiB
Diff
|
From 5999ad46df4782a3136c4bad0c2353daede2cbbd Mon Sep 17 00:00:00 2001
|
||
|
From: Myron Marston <myron.marston@gmail.com>
|
||
|
Date: Sat, 30 Dec 2017 17:36:55 -0800
|
||
|
Subject: [PATCH] Disable Ruby 2.5 feature to avoid test failures on 2.5.
|
||
|
|
||
|
---
|
||
|
spec/rspec/expectations/failure_aggregator_spec.rb | 13 +++++++++++++
|
||
|
1 file changed, 13 insertions(+)
|
||
|
|
||
|
diff --git a/spec/rspec/expectations/failure_aggregator_spec.rb b/spec/rspec/expectations/failure_aggregator_spec.rb
|
||
|
index 6628aa75..40a1ae35 100644
|
||
|
--- a/spec/rspec/expectations/failure_aggregator_spec.rb
|
||
|
+++ b/spec/rspec/expectations/failure_aggregator_spec.rb
|
||
|
@@ -216,6 +216,19 @@ def expect_error_included_in_aggregated_failure(error)
|
||
|
end
|
||
|
|
||
|
context "when an expectation failure happens in another thread" do
|
||
|
+ # On Ruby 2.5+, the new `report_on_exception` causes the errors in the threads
|
||
|
+ # to print warnings, which our rspec-support test harness converts into a test
|
||
|
+ # failure since we want to enforce warnings-free code. To prevent the warning,
|
||
|
+ # we need to disable the setting here.
|
||
|
+ if Thread.respond_to?(:report_on_exception)
|
||
|
+ around do |example|
|
||
|
+ orig = Thread.report_on_exception
|
||
|
+ Thread.report_on_exception = false
|
||
|
+ example.run
|
||
|
+ Thread.report_on_exception = orig
|
||
|
+ end
|
||
|
+ end
|
||
|
+
|
||
|
it "includes the failure in the failures array if there are other failures" do
|
||
|
expect {
|
||
|
aggregate_failures do
|