Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package rubygem-rspec-rails for
openSUSE:Factory checked in at 2021-03-15 10:56:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-rspec-rails (Old)
and /work/SRC/openSUSE:Factory/.rubygem-rspec-rails.new.2401 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-rspec-rails"
Mon Mar 15 10:56:20 2021 rev:4 rq:879034 version:5.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-rspec-rails/rubygem-rspec-rails.changes
2021-01-25 18:23:37.984429846 +0100
+++
/work/SRC/openSUSE:Factory/.rubygem-rspec-rails.new.2401/rubygem-rspec-rails.changes
2021-03-15 10:56:21.497352030 +0100
@@ -1,0 +2,16 @@
+Mon Mar 15 04:21:34 UTC 2021 - Manuel Schnitzer <[email protected]>
+
+- updated to version 5.0.0
+
+ [Full
Changelog](https://github.com/rspec/rspec-rails/compare/v4.1.1...v5.0.0)
+
+ Enhancements:
+
+ * Support new #file_fixture_path and new fixture test support code. (Jon
Rowe, #2398)
+ * Support for Rails 6.1. (Benoit Tigeot, Jon Rowe, Phil Pirozhkov, and more
#2398)
+
+ Breaking Changes:
+
+ * Drop support for Rails below 5.2.
+
+-------------------------------------------------------------------
Old:
----
rspec-rails-4.0.2.gem
New:
----
rspec-rails-5.0.0.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-rspec-rails.spec ++++++
--- /var/tmp/diff_new_pack.u6mso8/_old 2021-03-15 10:56:23.049354412 +0100
+++ /var/tmp/diff_new_pack.u6mso8/_new 2021-03-15 10:56:23.049354412 +0100
@@ -24,7 +24,7 @@
#
Name: rubygem-rspec-rails
-Version: 4.0.2
+Version: 5.0.0
Release: 0
%define mod_name rspec-rails
%define mod_full_name %{mod_name}-%{version}
++++++ rspec-rails-4.0.2.gem -> rspec-rails-5.0.0.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Changelog.md new/Changelog.md
--- old/Changelog.md 2020-12-26 18:41:39.000000000 +0100
+++ new/Changelog.md 2021-03-09 09:50:41.000000000 +0100
@@ -1,3 +1,38 @@
+### 5.0.0 / 2021-03-09
+[Full Changelog](https://github.com/rspec/rspec-rails/compare/v4.1.1...main)
+
+Enhancements:
+
+* Support new #file_fixture_path and new fixture test support code. (Jon Rowe,
#2398)
+* Support for Rails 6.1. (Benoit Tigeot, Jon Rowe, Phil Pirozhkov, and more
#2398)
+
+Breaking Changes:
+
+* Drop support for Rails below 5.2.
+
+### 4.1.1 / 2021-03-09
+
+Bug Fixes:
+
+* Remove generated specs when destroying a generated controller.
+ (@Naokimi, #2475)
+
+### 4.1.0 / 2021-03-06
+
+Enhancements:
+
+* Issue a warning when using job matchers with `#at` mis-match on `usec`
precision.
+ (Jon Rowe, #2350)
+* Generated request specs now have a bare `_spec` suffix instead of
`request_spec`.
+ (Eloy Espinaco, Luka L??dicke, #2355, #2356, #2378)
+* Generated scaffold now includes engine route helpers when inside a mountable
engine.
+ (Andrew W. Lee, #2372)
+* Improve request spec "controller" scafold when no action is specified.
+ (Thomas Hareau, #2399)
+* Introduce testing snippets concept (Phil Pirozhkov, Benoit Tigeot, #2423)
+* Prevent collisions with `let(:name)` for Rails 6.1 and `let(:method_name)`
on older
+ Rails. (Benoit Tigeot, #2461)
+
### 4.0.2 / 2020-12-26
[Full Changelog](https://github.com/rspec/rspec-rails/compare/v4.0.1...v4.0.2)
@@ -9,6 +44,7 @@
(Phil Pirozhkov, Jon Rowe, #2353, #2354)
* Remove old #fixture_path feature detection code which broke under newer
Rails.
(Koen Punt, Jon Rowe, #2370)
+* Fix an error when `use_active_record` is `false` (Phil Pirozhkov, #2423)
### 4.0.1 / 2020-05-16
[Full Changelog](https://github.com/rspec/rspec-rails/compare/v4.0.0...v4.0.1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/README.md new/README.md
--- old/README.md 2020-12-26 18:41:39.000000000 +0100
+++ new/README.md 2021-03-09 09:50:41.000000000 +0100
@@ -1,4 +1,4 @@
-# rspec-rails [![Build Status][]][travis-ci] [![Code Climate][]][code-climate]
[![Gem Version][]](gem-version)
+# rspec-rails [![Code Climate][]][code-climate] [![Gem Version][]][gem-version]
`rspec-rails` brings the [RSpec][] testing framework to [Ruby on Rails][]
as a drop-in alternative to its default testing framework, Minitest.
@@ -24,13 +24,16 @@
## Installation
+**IMPORTANT** This README / branch refers to the current development build.
+See the [`4-1-maintenance` branch on
Github](https://github.com/rspec/rspec-rails/tree/4-0-maintenance) if you want
or require the latest stable release.
+
1. Add `rspec-rails` to **both** the `:development` and `:test` groups
of your app???s `Gemfile`:
```ruby
# Run against the latest stable release
group :development, :test do
- gem 'rspec-rails', '~> 4.0.1'
+ gem 'rspec-rails', '~> 4.1.0'
end
# Or, run against the main branch
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
Binary files old/checksums.yaml.gz.sig and new/checksums.yaml.gz.sig differ
Binary files old/data.tar.gz.sig and new/data.tar.gz.sig differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/generators/rspec/controller/controller_generator.rb
new/lib/generators/rspec/controller/controller_generator.rb
--- old/lib/generators/rspec/controller/controller_generator.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/generators/rspec/controller/controller_generator.rb 2021-03-09
09:50:41.000000000 +0100
@@ -16,7 +16,7 @@
return unless options[:request_specs]
template 'request_spec.rb',
- File.join('spec/requests', class_path,
"#{file_name}_request_spec.rb")
+ File.join('spec/requests', class_path, "#{file_name}_spec.rb")
end
def generate_controller_spec
@@ -27,7 +27,7 @@
end
def generate_view_specs
- return if actions.empty?
+ return if actions.empty? && behavior == :invoke
return unless options[:view_specs] && options[:template_engine]
empty_directory File.join("spec", "views", file_path)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/generators/rspec/controller/templates/request_spec.rb
new/lib/generators/rspec/controller/templates/request_spec.rb
--- old/lib/generators/rspec/controller/templates/request_spec.rb
2020-12-26 18:41:39.000000000 +0100
+++ new/lib/generators/rspec/controller/templates/request_spec.rb
2021-03-09 09:50:41.000000000 +0100
@@ -1,7 +1,12 @@
require 'rails_helper'
RSpec.describe "<%= class_name.pluralize %>", <%= type_metatag(:request) %> do
-<% namespaced_path = regular_class_path.join('/') %>
+<% namespaced_path = regular_class_path.join('/') -%>
+<% if actions.empty? -%>
+ describe "GET /index" do
+ pending "add some examples (or delete) #{__FILE__}"
+ end
+<% end -%>
<% for action in actions -%>
describe "GET /<%= action %>" do
it "returns http success" do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/generators/rspec/mailer/templates/mailer_spec.rb
new/lib/generators/rspec/mailer/templates/mailer_spec.rb
--- old/lib/generators/rspec/mailer/templates/mailer_spec.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/generators/rspec/mailer/templates/mailer_spec.rb 2021-03-09
09:50:41.000000000 +0100
@@ -1,10 +1,10 @@
require "rails_helper"
<% module_namespacing do -%>
-RSpec.describe <%= Rails.version.to_f >= 5.0 ? class_name.sub(/(Mailer)?$/,
'Mailer') : class_name %>, <%= type_metatag(:mailer) %> do
+RSpec.describe <%= class_name.sub(/(Mailer)?$/, 'Mailer') %>, <%=
type_metatag(:mailer) %> do
<% for action in actions -%>
describe "<%= action %>" do
- let(:mail) { <%= Rails.version.to_f >= 5.0 ? class_name.sub(/(Mailer)?$/,
'Mailer') : class_name %>.<%= action %> }
+ let(:mail) { <%= class_name.sub(/(Mailer)?$/, 'Mailer') %>.<%= action %> }
it "renders the headers" do
expect(mail.subject).to eq(<%= action.to_s.humanize.inspect %>)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/generators/rspec/mailer/templates/preview.rb
new/lib/generators/rspec/mailer/templates/preview.rb
--- old/lib/generators/rspec/mailer/templates/preview.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/generators/rspec/mailer/templates/preview.rb 2021-03-09
09:50:41.000000000 +0100
@@ -5,7 +5,7 @@
# Preview this email at http://localhost:3000/rails/mailers/<%= file_path
%>/<%= action %>
def <%= action %>
- <%= Rails.version.to_f >= 5.0 ? class_name.sub(/(Mailer)?$/, 'Mailer') :
class_name %>.<%= action %>
+ <%= class_name.sub(/(Mailer)?$/, 'Mailer') %>.<%= action %>
end
<% end -%>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/generators/rspec/scaffold/templates/controller_spec.rb
new/lib/generators/rspec/scaffold/templates/controller_spec.rb
--- old/lib/generators/rspec/scaffold/templates/controller_spec.rb
2020-12-26 18:41:39.000000000 +0100
+++ new/lib/generators/rspec/scaffold/templates/controller_spec.rb
2021-03-09 09:50:41.000000000 +0100
@@ -46,11 +46,7 @@
describe "GET #index" do
it "returns a success response" do
<%= class_name %>.create! valid_attributes
-<% if Rails::VERSION::STRING < '5.0' -%>
- get :index, {}, valid_session
-<% else -%>
get :index, params: {}, session: valid_session
-<% end -%>
expect(response).to be_successful
end
end
@@ -59,22 +55,14 @@
describe "GET #show" do
it "returns a success response" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
-<% if Rails::VERSION::STRING < '5.0' -%>
- get :show, {id: <%= file_name %>.to_param}, valid_session
-<% else -%>
get :show, params: {id: <%= file_name %>.to_param}, session:
valid_session
-<% end -%>
expect(response).to be_successful
end
end
describe "GET #new" do
it "returns a success response" do
-<% if Rails::VERSION::STRING < '5.0' -%>
- get :new, {}, valid_session
-<% else -%>
get :new, params: {}, session: valid_session
-<% end -%>
expect(response).to be_successful
end
end
@@ -82,11 +70,7 @@
describe "GET #edit" do
it "returns a success response" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
-<% if Rails::VERSION::STRING < '5.0' -%>
- get :edit, {id: <%= file_name %>.to_param}, valid_session
-<% else -%>
get :edit, params: {id: <%= file_name %>.to_param}, session:
valid_session
-<% end -%>
expect(response).to be_successful
end
end
@@ -95,31 +79,19 @@
context "with valid params" do
it "creates a new <%= class_name %>" do
expect {
-<% if Rails::VERSION::STRING < '5.0' -%>
- post :create, {<%= ns_file_name %>: valid_attributes}, valid_session
-<% else -%>
post :create, params: {<%= ns_file_name %>: valid_attributes},
session: valid_session
-<% end -%>
}.to change(<%= class_name %>, :count).by(1)
end
it "redirects to the created <%= ns_file_name %>" do
-<% if Rails::VERSION::STRING < '5.0' -%>
- post :create, {<%= ns_file_name %>: valid_attributes}, valid_session
-<% else -%>
post :create, params: {<%= ns_file_name %>: valid_attributes},
session: valid_session
-<% end -%>
expect(response).to redirect_to(<%= class_name %>.last)
end
end
context "with invalid params" do
it "returns a success response (i.e. to display the 'new' template)" do
-<% if Rails::VERSION::STRING < '5.0' -%>
- post :create, {<%= ns_file_name %>: invalid_attributes}, valid_session
-<% else -%>
post :create, params: {<%= ns_file_name %>: invalid_attributes},
session: valid_session
-<% end -%>
expect(response).to be_successful
end
end
@@ -133,22 +105,14 @@
it "updates the requested <%= ns_file_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
-<% if Rails::VERSION::STRING < '5.0' -%>
- put :update, {id: <%= file_name %>.to_param, <%= ns_file_name %>:
new_attributes}, valid_session
-<% else -%>
put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name
%>: new_attributes}, session: valid_session
-<% end -%>
<%= file_name %>.reload
skip("Add assertions for updated state")
end
it "redirects to the <%= ns_file_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
-<% if Rails::VERSION::STRING < '5.0' -%>
- put :update, {id: <%= file_name %>.to_param, <%= ns_file_name %>:
valid_attributes}, valid_session
-<% else -%>
put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name
%>: valid_attributes}, session: valid_session
-<% end -%>
expect(response).to redirect_to(<%= file_name %>)
end
end
@@ -156,11 +120,7 @@
context "with invalid params" do
it "returns a success response (i.e. to display the 'edit' template)" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
-<% if Rails::VERSION::STRING < '5.0' -%>
- put :update, {id: <%= file_name %>.to_param, <%= ns_file_name %>:
invalid_attributes}, valid_session
-<% else -%>
put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name
%>: invalid_attributes}, session: valid_session
-<% end -%>
expect(response).to be_successful
end
end
@@ -170,21 +130,13 @@
it "destroys the requested <%= ns_file_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
expect {
-<% if Rails::VERSION::STRING < '5.0' -%>
- delete :destroy, {id: <%= file_name %>.to_param}, valid_session
-<% else -%>
delete :destroy, params: {id: <%= file_name %>.to_param}, session:
valid_session
-<% end -%>
}.to change(<%= class_name %>, :count).by(-1)
end
it "redirects to the <%= table_name %> list" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
-<% if Rails::VERSION::STRING < '5.0' -%>
- delete :destroy, {id: <%= file_name %>.to_param}, valid_session
-<% else -%>
delete :destroy, params: {id: <%= file_name %>.to_param}, session:
valid_session
-<% end -%>
expect(response).to redirect_to(<%= index_helper %>_url)
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/generators/rspec/scaffold/templates/edit_spec.rb
new/lib/generators/rspec/scaffold/templates/edit_spec.rb
--- old/lib/generators/rspec/scaffold/templates/edit_spec.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/generators/rspec/scaffold/templates/edit_spec.rb 2021-03-09
09:50:41.000000000 +0100
@@ -16,11 +16,7 @@
assert_select "form[action=?][method=?]", <%= ns_file_name %>_path(@<%=
ns_file_name %>), "post" do
<% for attribute in output_attributes -%>
<%- name = attribute.respond_to?(:column_name) ? attribute.column_name :
attribute.name %>
-<% if Rails.version.to_f >= 5.1 -%>
assert_select "<%= attribute.input_type -%>[name=?]", "<%= ns_file_name
%>[<%= name %>]"
-<% else -%>
- assert_select "<%= attribute.input_type -%>#<%= ns_file_name %>_<%= name
%>[name=?]", "<%= ns_file_name %>[<%= name %>]"
-<% end -%>
<% end -%>
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/generators/rspec/scaffold/templates/new_spec.rb
new/lib/generators/rspec/scaffold/templates/new_spec.rb
--- old/lib/generators/rspec/scaffold/templates/new_spec.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/generators/rspec/scaffold/templates/new_spec.rb 2021-03-09
09:50:41.000000000 +0100
@@ -15,11 +15,7 @@
assert_select "form[action=?][method=?]", <%= index_helper %>_path, "post"
do
<% for attribute in output_attributes -%>
<%- name = attribute.respond_to?(:column_name) ? attribute.column_name :
attribute.name %>
-<% if Rails.version.to_f >= 5.1 -%>
assert_select "<%= attribute.input_type -%>[name=?]", "<%= ns_file_name
%>[<%= name %>]"
-<% else -%>
- assert_select "<%= attribute.input_type -%>#<%= ns_file_name %>_<%= name
%>[name=?]", "<%= ns_file_name %>[<%= name %>]"
-<% end -%>
<% end -%>
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/generators/rspec/scaffold/templates/request_spec.rb
new/lib/generators/rspec/scaffold/templates/request_spec.rb
--- old/lib/generators/rspec/scaffold/templates/request_spec.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/generators/rspec/scaffold/templates/request_spec.rb 2021-03-09
09:50:41.000000000 +0100
@@ -14,6 +14,10 @@
<% module_namespacing do -%>
RSpec.describe "/<%= name.underscore.pluralize %>", <%= type_metatag(:request)
%> do
+ <% if mountable_engine? -%>
+ include Engine.routes.url_helpers
+ <% end -%>
+
# <%= class_name %>. As you add validations to <%= class_name %>, be sure to
# adjust the attributes here as well.
let(:valid_attributes) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/generators/rspec/system/system_generator.rb
new/lib/generators/rspec/system/system_generator.rb
--- old/lib/generators/rspec/system/system_generator.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/generators/rspec/system/system_generator.rb 2021-03-09
09:50:41.000000000 +0100
@@ -1,25 +1,23 @@
require 'generators/rspec'
-if ::Rails::VERSION::STRING >= '5.1'
- module Rspec
- module Generators
- # @private
- class SystemGenerator < Base
- class_option :system_specs, type: :boolean, default: true, desc:
"Generate system specs"
+module Rspec
+ module Generators
+ # @private
+ class SystemGenerator < Base
+ class_option :system_specs, type: :boolean, default: true, desc:
"Generate system specs"
- def generate_system_spec
- return unless options[:system_specs]
+ def generate_system_spec
+ return unless options[:system_specs]
- template template_name, File.join('spec/system', class_path,
filename)
- end
+ template template_name, File.join('spec/system', class_path, filename)
+ end
- def template_name
- 'system_spec.rb'
- end
+ def template_name
+ 'system_spec.rb'
+ end
- def filename
- "#{table_name}_spec.rb"
- end
+ def filename
+ "#{table_name}_spec.rb"
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/configuration.rb
new/lib/rspec/rails/configuration.rb
--- old/lib/rspec/rails/configuration.rb 2020-12-26 18:41:39.000000000
+0100
+++ new/lib/rspec/rails/configuration.rb 2021-03-09 09:50:41.000000000
+0100
@@ -80,10 +80,8 @@
# `RSpec::Rails::FixtureSupport` directly instead
config.include RSpec::Rails::FixtureSupport
- if ::Rails::VERSION::STRING > '5'
- config.add_setting :file_fixture_path, default: 'spec/fixtures/files'
- config.include RSpec::Rails::FileFixtureSupport
- end
+ config.add_setting :file_fixture_path, default: 'spec/fixtures/files'
+ config.include RSpec::Rails::FileFixtureSupport
# Add support for fixture_path on fixture_file_upload
config.include RSpec::Rails::FixtureFileUploadSupport
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/example/request_example_group.rb
new/lib/rspec/rails/example/request_example_group.rb
--- old/lib/rspec/rails/example/request_example_group.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/rspec/rails/example/request_example_group.rb 2021-03-09
09:50:41.000000000 +0100
@@ -10,10 +10,7 @@
include RSpec::Rails::Matchers::RedirectTo
include RSpec::Rails::Matchers::RenderTemplate
include ActionController::TemplateAssertions
-
- if ActionPack::VERSION::MAJOR >= 5
- include ActionDispatch::IntegrationTest::Behavior
- end
+ include ActionDispatch::IntegrationTest::Behavior
# Delegates to `Rails.application`.
def app
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/file_fixture_support.rb
new/lib/rspec/rails/file_fixture_support.rb
--- old/lib/rspec/rails/file_fixture_support.rb 2020-12-26 18:41:39.000000000
+0100
+++ new/lib/rspec/rails/file_fixture_support.rb 2021-03-09 09:50:41.000000000
+0100
@@ -1,16 +1,14 @@
-if ::Rails::VERSION::STRING > '5'
- require 'active_support/testing/file_fixtures'
+require 'active_support/testing/file_fixtures'
- module RSpec
- module Rails
- # @private
- module FileFixtureSupport
- extend ActiveSupport::Concern
- include ActiveSupport::Testing::FileFixtures
+module RSpec
+ module Rails
+ # @private
+ module FileFixtureSupport
+ extend ActiveSupport::Concern
+ include ActiveSupport::Testing::FileFixtures
- included do
- self.file_fixture_path = RSpec.configuration.file_fixture_path
- end
+ included do
+ self.file_fixture_path = RSpec.configuration.file_fixture_path
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/fixture_file_upload_support.rb
new/lib/rspec/rails/fixture_file_upload_support.rb
--- old/lib/rspec/rails/fixture_file_upload_support.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/rspec/rails/fixture_file_upload_support.rb 2021-03-09
09:50:41.000000000 +0100
@@ -6,21 +6,42 @@
private
- def rails_fixture_file_wrapper
- RailsFixtureFileWrapper.fixture_path = nil
- resolved_fixture_path =
- if respond_to?(:fixture_path) && !fixture_path.nil?
- fixture_path.to_s
- else
- (RSpec.configuration.fixture_path || '').to_s
- end
- RailsFixtureFileWrapper.fixture_path =
File.join(resolved_fixture_path, '') unless resolved_fixture_path.strip.empty?
- RailsFixtureFileWrapper.instance
+ # In Rails 6.2 fixture file path needs to be relative to
`file_fixture_path` instead, this change
+ # was brought in with a deprecation warning on 6.1. In Rails 6.2 expect
to rework this to remove
+ # the old accessor.
+ if ::Rails.version.to_f >= 6.1
+ def rails_fixture_file_wrapper
+ RailsFixtureFileWrapper.file_fixture_path = nil
+ resolved_fixture_path =
+ if respond_to?(:file_fixture_path) && !file_fixture_path.nil?
+ file_fixture_path.to_s
+ else
+ (RSpec.configuration.fixture_path || '').to_s
+ end
+ RailsFixtureFileWrapper.file_fixture_path =
File.join(resolved_fixture_path, '') unless resolved_fixture_path.strip.empty?
+ RailsFixtureFileWrapper.instance
+ end
+ else
+ def rails_fixture_file_wrapper
+ RailsFixtureFileWrapper.fixture_path = nil
+ resolved_fixture_path =
+ if respond_to?(:fixture_path) && !fixture_path.nil?
+ fixture_path.to_s
+ else
+ (RSpec.configuration.fixture_path || '').to_s
+ end
+ RailsFixtureFileWrapper.fixture_path =
File.join(resolved_fixture_path, '') unless resolved_fixture_path.strip.empty?
+ RailsFixtureFileWrapper.instance
+ end
end
class RailsFixtureFileWrapper
include ActionDispatch::TestProcess if
defined?(ActionDispatch::TestProcess)
+ if ::Rails.version.to_f >= 6.1
+ include ActiveSupport::Testing::FileFixtures
+ end
+
class << self
attr_accessor :fixture_path
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/fixture_support.rb
new/lib/rspec/rails/fixture_support.rb
--- old/lib/rspec/rails/fixture_support.rb 2020-12-26 18:41:39.000000000
+0100
+++ new/lib/rspec/rails/fixture_support.rb 2021-03-09 09:50:41.000000000
+0100
@@ -9,16 +9,19 @@
include RSpec::Rails::MinitestAssertionAdapter
include ActiveRecord::TestFixtures
+ # @private prevent ActiveSupport::TestFixtures to start a DB
transaction.
+ # Monkey patched to avoid collisions with 'let(:name)' in Rails 6.1
and after
+ # and let(:method_name) before Rails 6.1.
+ def run_in_transaction?
+ use_transactional_tests && !self.class.uses_transaction?(self)
+ end
+
included do
if RSpec.configuration.use_active_record?
include Fixtures
self.fixture_path = RSpec.configuration.fixture_path
- if ::Rails::VERSION::STRING > '5'
- self.use_transactional_tests =
RSpec.configuration.use_transactional_fixtures
- else
- self.use_transactional_fixtures =
RSpec.configuration.use_transactional_fixtures
- end
+ self.use_transactional_tests =
RSpec.configuration.use_transactional_fixtures
self.use_instantiated_fixtures =
RSpec.configuration.use_instantiated_fixtures
fixtures RSpec.configuration.global_fixtures if
RSpec.configuration.global_fixtures
@@ -50,13 +53,6 @@
end
end
end
-
- if ::Rails.version.to_f >= 6.1
- # @private return the example name for TestFixtures
- def name
- @example
- end
- end
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/matchers/action_mailbox.rb
new/lib/rspec/rails/matchers/action_mailbox.rb
--- old/lib/rspec/rails/matchers/action_mailbox.rb 2020-12-26
18:41:39.000000000 +0100
+++ new/lib/rspec/rails/matchers/action_mailbox.rb 2021-03-09
09:50:41.000000000 +0100
@@ -22,11 +22,20 @@
@inbound_email = create_inbound_email(message)
end
- def matches?(mailbox)
- @mailbox = mailbox
- @receiver = ApplicationMailbox.router.send(:match_to_mailbox,
inbound_email)
+ if defined?(::ApplicationMailbox) &&
::ApplicationMailbox.router.respond_to?(:mailbox_for)
+ def matches?(mailbox)
+ @mailbox = mailbox
+ @receiver = ApplicationMailbox.router.mailbox_for(inbound_email)
- @receiver == @mailbox
+ @receiver == @mailbox
+ end
+ else
+ def matches?(mailbox)
+ @mailbox = mailbox
+ @receiver = ApplicationMailbox.router.send(:match_to_mailbox,
inbound_email)
+
+ @receiver == @mailbox
+ end
end
def failure_message
@@ -41,7 +50,7 @@
"expected #{describe_inbound_email} not to route to #{mailbox}"
end
- private
+ private
attr_reader :inbound_email, :mailbox, :receiver
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/matchers/active_job.rb
new/lib/rspec/rails/matchers/active_job.rb
--- old/lib/rspec/rails/matchers/active_job.rb 2020-12-26 18:41:39.000000000
+0100
+++ new/lib/rspec/rails/matchers/active_job.rb 2021-03-09 09:50:41.000000000
+0100
@@ -163,7 +163,29 @@
return job[:at].nil? if @at == :no_wait
return false unless job[:at]
- values_match?(@at, Time.at(job[:at]))
+ scheduled_at = Time.at(job[:at])
+ values_match?(@at, scheduled_at) ||
check_for_inprecise_value(scheduled_at)
+ end
+
+ def check_for_inprecise_value(scheduled_at)
+ return unless Time === @at && values_match?(@at.change(usec: 0),
scheduled_at)
+
+ RSpec.warn_with((<<-WARNING).gsub(/^\s+\|/, '').chomp)
+ |[WARNING] Your expected `at(...)` value does not match the job
scheduled_at value
+ |unless microseconds are removed. This precision error often
occurs when checking
+ |values against `Time.current` / `Time.now` which have usec
precision, but Rails
+ |uses `n.seconds.from_now` internally which has a usec count of
`0`.
+ |
+ |Use `change(usec: 0)` to correct these values. For example:
+ |
+ |`Time.current.change(usec: 0)`
+ |
+ |Note: RSpec cannot do this for you because jobs can be scheduled
with usec
+ |precision and we do not know wether it is on purpose or not.
+ |
+ |
+ WARNING
+ false
end
def set_expected_number(relativity, count)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/version.rb
new/lib/rspec/rails/version.rb
--- old/lib/rspec/rails/version.rb 2020-12-26 18:41:39.000000000 +0100
+++ new/lib/rspec/rails/version.rb 2021-03-09 09:50:41.000000000 +0100
@@ -3,7 +3,7 @@
# Version information for RSpec Rails.
module Version
# Current version of RSpec Rails, in semantic versioning format.
- STRING = '4.0.2'
+ STRING = '5.0.0'
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec-rails.rb new/lib/rspec-rails.rb
--- old/lib/rspec-rails.rb 2020-12-26 18:41:39.000000000 +0100
+++ new/lib/rspec-rails.rb 2021-03-09 09:50:41.000000000 +0100
@@ -7,13 +7,11 @@
# Railtie to hook into Rails.
class Railtie < ::Rails::Railtie
# As of Rails 5.1.0 you can register directories to work with `rake
notes`
- if ::Rails::VERSION::STRING >= '5.1'
- require 'rails/source_annotation_extractor'
- if ::Rails::VERSION::STRING >= '6.0'
-
::Rails::SourceAnnotationExtractor::Annotation.register_directories("spec")
- else
- SourceAnnotationExtractor::Annotation.register_directories("spec")
- end
+ require 'rails/source_annotation_extractor'
+ if ::Rails::VERSION::STRING >= '6.0'
+
::Rails::SourceAnnotationExtractor::Annotation.register_directories("spec")
+ else
+ SourceAnnotationExtractor::Annotation.register_directories("spec")
end
generators = config.app_generators
generators.integration_tool :rspec
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2020-12-26 18:41:39.000000000 +0100
+++ new/metadata 2021-03-09 09:50:41.000000000 +0100
@@ -1,7 +1,7 @@
--- !ruby/object:Gem::Specification
name: rspec-rails
version: !ruby/object:Gem::Version
- version: 4.0.2
+ version: 5.0.0
platform: ruby
authors:
- David Chelimsky
@@ -44,7 +44,7 @@
ZsVDj6a7lH3cNqtWXZxrb2wO38qV5AkYj8SQK7Hj3/Yui9myUX3crr+PdetazSqQ
F3MdtaDehhjC
-----END CERTIFICATE-----
-date: 2020-12-26 00:00:00.000000000 Z
+date: 2021-03-09 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: actionpack
@@ -52,42 +52,42 @@
requirements:
- - ">="
- !ruby/object:Gem::Version
- version: '4.2'
+ version: '5.2'
type: :runtime
prerelease: false
version_requirements: !ruby/object:Gem::Requirement
requirements:
- - ">="
- !ruby/object:Gem::Version
- version: '4.2'
+ version: '5.2'
- !ruby/object:Gem::Dependency
name: activesupport
requirement: !ruby/object:Gem::Requirement
requirements:
- - ">="
- !ruby/object:Gem::Version
- version: '4.2'
+ version: '5.2'
type: :runtime
prerelease: false
version_requirements: !ruby/object:Gem::Requirement
requirements:
- - ">="
- !ruby/object:Gem::Version
- version: '4.2'
+ version: '5.2'
- !ruby/object:Gem::Dependency
name: railties
requirement: !ruby/object:Gem::Requirement
requirements:
- - ">="
- !ruby/object:Gem::Version
- version: '4.2'
+ version: '5.2'
type: :runtime
prerelease: false
version_requirements: !ruby/object:Gem::Requirement
requirements:
- - ">="
- !ruby/object:Gem::Version
- version: '4.2'
+ version: '5.2'
- !ruby/object:Gem::Dependency
name: rspec-core
requirement: !ruby/object:Gem::Requirement
@@ -150,14 +150,14 @@
requirements:
- - "~>"
- !ruby/object:Gem::Version
- version: 1.1.2
+ version: 1.1.5
type: :development
prerelease: false
version_requirements: !ruby/object:Gem::Requirement
requirements:
- - "~>"
- !ruby/object:Gem::Version
- version: 1.1.2
+ version: 1.1.5
- !ruby/object:Gem::Dependency
name: aruba
requirement: !ruby/object:Gem::Requirement
@@ -296,7 +296,7 @@
- MIT
metadata:
bug_tracker_uri: https://github.com/rspec/rspec-rails/issues
- changelog_uri: https://github.com/rspec/rspec-rails/blob/v4.0.2/Changelog.md
+ changelog_uri: https://github.com/rspec/rspec-rails/blob/v5.0.0/Changelog.md
documentation_uri: https://rspec.info/documentation/
mailing_list_uri: https://groups.google.com/forum/#!forum/rspec
source_code_uri: https://github.com/rspec/rspec-rails
@@ -316,7 +316,7 @@
- !ruby/object:Gem::Version
version: '0'
requirements: []
-rubygems_version: 3.1.4
+rubygems_version: 3.2.4
signing_key:
specification_version: 4
summary: RSpec for Rails
Binary files old/metadata.gz.sig and new/metadata.gz.sig differ