Backport upstream patch to fix test failure on ruby 25

This commit is contained in:
Mamoru TASAKA 2018-02-14 15:04:43 +09:00
parent b23b3fccd9
commit ea96da0455
2 changed files with 44 additions and 3 deletions

View File

@ -0,0 +1,33 @@
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

View File

@ -3,7 +3,7 @@
%global rpmminorver .%(echo %preminorver | sed -e 's|^\\.\\.*||')
%global fullver %{majorver}%{?preminorver}
%global fedorarel 2
%global fedorarel 3
%global gem_name rspec-expectations
@ -14,7 +14,7 @@
Summary: RSpec expectations (should and matchers)
Name: rubygem-%{gem_name}
Version: %{majorver}
Release: %{?preminorver:0.}%{fedorarel}%{?preminorver:%{rpmminorver}}%{?dist}.1
Release: %{?preminorver:0.}%{fedorarel}%{?preminorver:%{rpmminorver}}%{?dist}
Group: Development/Languages
License: MIT
@ -23,6 +23,9 @@ Source0: https://rubygems.org/gems/%{gem_name}-%{fullver}.gem
# %%{SOURCE2} %%{name} %%{version}
Source1: rubygem-%{gem_name}-%{version}-full.tar.gz
Source2: rspec-related-create-full-tarball.sh
# https://github.com/rspec/rspec-expectations/pull/1037
# https://github.com/rspec/rspec-expectations/commit/5999ad46df4782a3136c4bad0c2353daede2cbbd.patch
Patch1: rspec-expectations-3.7.0-aggregator-ruby25.patch
#BuildRequires: ruby(release)
BuildRequires: rubygems-devel
@ -48,6 +51,8 @@ This package contains documentation for %{name}.
%prep
%setup -q -T -n %{gem_name}-%{version} -b 1
%patch1 -p1
gem specification %{SOURCE0} -l --ruby > %{gem_name}.gemspec
%build
@ -84,7 +89,10 @@ ruby -rrubygems -Ilib/ -S rspec spec/
%{gem_docdir}
%changelog
* Tue Feb 13 2018 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.7.1-2
* Wed Feb 14 2018 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.7.0-3
- Backport upstream patch to fix test failure on ruby 25
* Tue Feb 13 2018 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.7.0-2
- ruby 2.5 drops -rubygems usage
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.7.0-1.1