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 2022-02-24 18:20:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-rspec-rails (Old)
and /work/SRC/openSUSE:Factory/.rubygem-rspec-rails.new.1958 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-rspec-rails"
Thu Feb 24 18:20:22 2022 rev:7 rq:956127 version:5.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-rspec-rails/rubygem-rspec-rails.changes
2021-08-25 20:59:46.073038336 +0200
+++
/work/SRC/openSUSE:Factory/.rubygem-rspec-rails.new.1958/rubygem-rspec-rails.changes
2022-02-24 18:23:37.870655697 +0100
@@ -1,0 +2,7 @@
+Tue Feb 15 07:41:08 UTC 2022 - Stephan Kulow <[email protected]>
+
+updated to version 5.1.0
+ see installed Changelog.md
+
+
+-------------------------------------------------------------------
Old:
----
rspec-rails-5.0.2.gem
New:
----
rspec-rails-5.1.0.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-rspec-rails.spec ++++++
--- /var/tmp/diff_new_pack.M0zqzw/_old 2022-02-24 18:23:38.278655590 +0100
+++ /var/tmp/diff_new_pack.M0zqzw/_new 2022-02-24 18:23:38.282655589 +0100
@@ -1,7 +1,7 @@
#
# spec file for package rubygem-rspec-rails
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -24,7 +24,7 @@
#
Name: rubygem-rspec-rails
-Version: 5.0.2
+Version: 5.1.0
Release: 0
%define mod_name rspec-rails
%define mod_full_name %{mod_name}-%{version}
++++++ rspec-rails-5.0.2.gem -> rspec-rails-5.1.0.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Changelog.md new/Changelog.md
--- old/Changelog.md 2021-08-14 10:29:28.000000000 +0200
+++ new/Changelog.md 2022-01-26 13:32:06.000000000 +0100
@@ -1,5 +1,25 @@
### Development
-[Full
Changelog](https://github.com/rspec/rspec-rails/compare/v5.0.2...5-0-maintenance)
+[Full
Changelog](https://github.com/rspec/rspec-rails/compare/v5.1.0...5-1-maintenance)
+
+### 5.1.0 / 2022-01-26
+[Full Changelog](https://github.com/rspec/rspec-rails/compare/v5.0.3...v5.1.0)
+
+Enhancements:
+
+* Make the API request scaffold template more consistent and compatible with
+ Rails 6.1. (Naoto Hamada, #2484)
+* Change the scaffold `rails_helper.rb` template to use `require_relative`.
+ (Jon Dufresne, #2528)
+
+### 5.0.3 / 2022-01-26
+[Full Changelog](https://github.com/rspec/rspec-rails/compare/v5.0.2...v5.0.3)
+
+Bug Fixes:
+
+* Properly name params in controller and request spec templates when
+ using the `--model-name` parameter. (@kenzo-tanaka, #2534)
+* Fix support for `have_enqueued_mail` on Ruby 3.1 with Rails 6.1.
+ (Fabio Napoleoni, Mikael Henriksson, Phil Pirozhkov, Jon Rowe, #2566)
### 5.0.2 / 2021-08-14
[Full Changelog](https://github.com/rspec/rspec-rails/compare/v5.0.1...v5.0.2)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/README.md new/README.md
--- old/README.md 2021-08-14 10:29:28.000000000 +0200
+++ new/README.md 2022-01-26 13:32:06.000000000 +0100
@@ -8,9 +8,11 @@
detailed explanations of how the application is supposed to behave,
expressed in plain English.
-Use **[`rspec-rails` 4.x][]** for Rails from 5.0 to 6.0.
-Use **[`rspec-rails` 3.x][]** for Rails earlier than 5.0.
-Use **[`rspec-rails` 1.x][]** for Rails 2.x.
+According to [RSpec Rails new versioning strategy][] use:
+* **[`rspec-rails` 5.x][]** for Rails 6.x.
+* **[`rspec-rails` 4.x][]** for Rails from 5.x or 6.x.
+* **[`rspec-rails` 3.x][]** for Rails earlier than 5.0.
+* **[`rspec-rails` 1.x][]** for Rails 2.x.
[Build Status]: https://secure.travis-ci.org/rspec/rspec-rails.svg?branch=main
[travis-ci]: https://travis-ci.org/rspec/rspec-rails
@@ -23,11 +25,13 @@
[`rspec-rails` 1.x]: https://github.com/dchelimsky/rspec-rails
[`rspec-rails` 3.x]: https://github.com/rspec/rspec-rails/tree/3-9-maintenance
[`rspec-rails` 4.x]: https://github.com/rspec/rspec-rails/tree/4-1-maintenance
+[`rspec-rails` 5.x]: https://github.com/rspec/rspec-rails/tree/5-0-maintenance
+[RSpec Rails new versioning strategy]:
https://github.com/rspec/rspec-rails/blob/main/rfcs/versioning-strategy.md
## Installation
-**IMPORTANT** This README / branch refers to the 5.0.x series of releases.
-See the [`main` branch on
Github](https://github.com/rspec/rspec-rails/tree/main) for more up to date
releases.
+**IMPORTANT** This README / branch refers to the current development build.
+See the [`5-0-maintenance` branch on
Github](https://github.com/rspec/rspec-rails/tree/5-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`:
@@ -229,18 +233,18 @@
meaning the helper methods provided by default in Rails tests
are available in RSpec, as well.
- | Spec type | Corresponding Rails test class |
- | -------------- | -------------------------------- |
- | [model][] | |
- | [controller][] | [`ActionController::TestCase`][] |
- | [mailer][] | `ActionMailer::TestCase` |
- | [job][] | |
- | [view][] | `ActionView::TestCase` |
- | [routing][] | |
- | [helper][] | `ActionView::TestCase` |
- | [request][] | [`ActionDispatch::IntegrationTest`][] |
- | [feature][] | |
- | [system][] | [`ActionDispatch::SystemTestCase`][] |
+| Spec type | Corresponding Rails test class |
+| -------------- | -------------------------------- |
+| [model][] | |
+| [controller][] | [`ActionController::TestCase`][] |
+| [mailer][] | `ActionMailer::TestCase` |
+| [job][] | |
+| [view][] | `ActionView::TestCase` |
+| [routing][] | |
+| [helper][] | `ActionView::TestCase` |
+| [request][] | [`ActionDispatch::IntegrationTest`][] |
+| [feature][] | |
+| [system][] | [`ActionDispatch::SystemTestCase`][] |
Follow the links above to see examples of each spec type,
or for official Rails API documentation on the given `TestCase` class.
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/install/templates/spec/rails_helper.rb
new/lib/generators/rspec/install/templates/spec/rails_helper.rb
--- old/lib/generators/rspec/install/templates/spec/rails_helper.rb
2021-08-14 10:29:28.000000000 +0200
+++ new/lib/generators/rspec/install/templates/spec/rails_helper.rb
2022-01-26 13:32:06.000000000 +0100
@@ -1,7 +1,7 @@
# This file is copied to spec/ when you run 'rails generate rspec:install'
require 'spec_helper'
ENV['RAILS_ENV'] ||= 'test'
-require File.expand_path('../config/environment', __dir__)
+require_relative '../config/environment'
# Prevent database truncation if the environment is production
abort("The Rails environment is running in production mode!") if
Rails.env.production?
require 'rspec/rails'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/generators/rspec/scaffold/scaffold_generator.rb
new/lib/generators/rspec/scaffold/scaffold_generator.rb
--- old/lib/generators/rspec/scaffold/scaffold_generator.rb 2021-08-14
10:29:28.000000000 +0200
+++ new/lib/generators/rspec/scaffold/scaffold_generator.rb 2022-01-26
13:32:06.000000000 +0100
@@ -127,6 +127,10 @@
def banner
self.class.banner
end
+
+ def show_helper(resource_name = file_name)
+ "#{singular_route_name}_url(#{resource_name})"
+ end
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/generators/rspec/scaffold/templates/api_controller_spec.rb
new/lib/generators/rspec/scaffold/templates/api_controller_spec.rb
--- old/lib/generators/rspec/scaffold/templates/api_controller_spec.rb
2021-08-14 10:29:28.000000000 +0200
+++ new/lib/generators/rspec/scaffold/templates/api_controller_spec.rb
2022-01-26 13:32:06.000000000 +0100
@@ -64,21 +64,21 @@
context "with valid params" do
it "creates a new <%= class_name %>" do
expect {
- post :create, params: {<%= ns_file_name %>: valid_attributes},
session: valid_session
+ post :create, params: {<%= singular_table_name %>:
valid_attributes}, session: valid_session
}.to change(<%= class_name %>, :count).by(1)
end
- it "renders a JSON response with the new <%= ns_file_name %>" do
- post :create, params: {<%= ns_file_name %>: valid_attributes},
session: valid_session
+ it "renders a JSON response with the new <%= singular_table_name %>" do
+ post :create, params: {<%= singular_table_name %>: valid_attributes},
session: valid_session
expect(response).to have_http_status(:created)
expect(response.content_type).to eq('application/json')
- expect(response.location).to eq(<%= ns_file_name %>_url(<%= class_name
%>.last))
+ expect(response.location).to eq(<%= singular_table_name %>_url(<%=
class_name %>.last))
end
end
context "with invalid params" do
- it "renders a JSON response with errors for the new <%= ns_file_name %>"
do
- post :create, params: {<%= ns_file_name %>: invalid_attributes},
session: valid_session
+ it "renders a JSON response with errors for the new <%=
singular_table_name %>" do
+ post :create, params: {<%= singular_table_name %>:
invalid_attributes}, session: valid_session
expect(response).to have_http_status(:unprocessable_entity)
expect(response.content_type).to eq('application/json')
end
@@ -91,25 +91,25 @@
skip("Add a hash of attributes valid for your model")
}
- it "updates the requested <%= ns_file_name %>" do
+ it "updates the requested <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name
%>: new_attributes}, session: valid_session
+ put :update, params: {id: <%= file_name %>.to_param, <%=
singular_table_name %>: new_attributes}, session: valid_session
<%= file_name %>.reload
skip("Add assertions for updated state")
end
- it "renders a JSON response with the <%= ns_file_name %>" do
+ it "renders a JSON response with the <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name
%>: valid_attributes}, session: valid_session
+ put :update, params: {id: <%= file_name %>.to_param, <%=
singular_table_name %>: valid_attributes}, session: valid_session
expect(response).to have_http_status(:ok)
expect(response.content_type).to eq('application/json')
end
end
context "with invalid params" do
- it "renders a JSON response with errors for the <%= ns_file_name %>" do
+ it "renders a JSON response with errors for the <%= singular_table_name
%>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name
%>: invalid_attributes}, session: valid_session
+ put :update, params: {id: <%= file_name %>.to_param, <%=
singular_table_name %>: invalid_attributes}, session: valid_session
expect(response).to have_http_status(:unprocessable_entity)
expect(response.content_type).to eq('application/json')
end
@@ -117,7 +117,7 @@
end
describe "DELETE #destroy" do
- it "destroys the requested <%= ns_file_name %>" do
+ it "destroys the requested <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
expect {
delete :destroy, params: {id: <%= file_name %>.to_param}, session:
valid_session
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/generators/rspec/scaffold/templates/api_request_spec.rb
new/lib/generators/rspec/scaffold/templates/api_request_spec.rb
--- old/lib/generators/rspec/scaffold/templates/api_request_spec.rb
2021-08-14 10:29:28.000000000 +0200
+++ new/lib/generators/rspec/scaffold/templates/api_request_spec.rb
2022-01-26 13:32:06.000000000 +0100
@@ -46,7 +46,7 @@
describe "GET /show" do
it "renders a successful response" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- get <%= show_helper.tr('@', '') %>, as: :json
+ get <%= show_helper %>, as: :json
expect(response).to be_successful
end
end
@@ -56,13 +56,13 @@
it "creates a new <%= class_name %>" do
expect {
post <%= index_helper %>_url,
- params: { <%= ns_file_name %>: valid_attributes }, headers:
valid_headers, as: :json
+ params: { <%= singular_table_name %>: valid_attributes },
headers: valid_headers, as: :json
}.to change(<%= class_name %>, :count).by(1)
end
- it "renders a JSON response with the new <%= ns_file_name %>" do
+ it "renders a JSON response with the new <%= singular_table_name %>" do
post <%= index_helper %>_url,
- params: { <%= ns_file_name %>: valid_attributes }, headers:
valid_headers, as: :json
+ params: { <%= singular_table_name %>: valid_attributes },
headers: valid_headers, as: :json
expect(response).to have_http_status(:created)
expect(response.content_type).to
match(a_string_including("application/json"))
end
@@ -72,15 +72,15 @@
it "does not create a new <%= class_name %>" do
expect {
post <%= index_helper %>_url,
- params: { <%= ns_file_name %>: invalid_attributes }, as: :json
+ params: { <%= singular_table_name %>: invalid_attributes }, as:
:json
}.to change(<%= class_name %>, :count).by(0)
end
- it "renders a JSON response with errors for the new <%= ns_file_name %>"
do
+ it "renders a JSON response with errors for the new <%=
singular_table_name %>" do
post <%= index_helper %>_url,
- params: { <%= ns_file_name %>: invalid_attributes }, headers:
valid_headers, as: :json
+ params: { <%= singular_table_name %>: invalid_attributes },
headers: valid_headers, as: :json
expect(response).to have_http_status(:unprocessable_entity)
- expect(response.content_type).to eq("application/json")
+ expect(response.content_type).to
match(a_string_including("application/json"))
end
end
end
@@ -91,17 +91,17 @@
skip("Add a hash of attributes valid for your model")
}
- it "updates the requested <%= ns_file_name %>" do
+ it "updates the requested <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- patch <%= show_helper.tr('@', '') %>,
+ patch <%= show_helper %>,
params: { <%= singular_table_name %>: new_attributes }, headers:
valid_headers, as: :json
<%= file_name %>.reload
skip("Add assertions for updated state")
end
- it "renders a JSON response with the <%= ns_file_name %>" do
+ it "renders a JSON response with the <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- patch <%= show_helper.tr('@', '') %>,
+ patch <%= show_helper %>,
params: { <%= singular_table_name %>: new_attributes }, headers:
valid_headers, as: :json
expect(response).to have_http_status(:ok)
expect(response.content_type).to
match(a_string_including("application/json"))
@@ -109,21 +109,21 @@
end
context "with invalid parameters" do
- it "renders a JSON response with errors for the <%= ns_file_name %>" do
+ it "renders a JSON response with errors for the <%= singular_table_name
%>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- patch <%= show_helper.tr('@', '') %>,
+ patch <%= show_helper %>,
params: { <%= singular_table_name %>: invalid_attributes },
headers: valid_headers, as: :json
expect(response).to have_http_status(:unprocessable_entity)
- expect(response.content_type).to eq("application/json")
+ expect(response.content_type).to
match(a_string_including("application/json"))
end
end
end
describe "DELETE /destroy" do
- it "destroys the requested <%= ns_file_name %>" do
+ it "destroys the requested <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
expect {
- delete <%= show_helper.tr('@', '') %>, headers: valid_headers, as:
:json
+ delete <%= show_helper %>, headers: valid_headers, as: :json
}.to change(<%= class_name %>, :count).by(-1)
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
2021-08-14 10:29:28.000000000 +0200
+++ new/lib/generators/rspec/scaffold/templates/controller_spec.rb
2022-01-26 13:32:06.000000000 +0100
@@ -79,19 +79,19 @@
context "with valid params" do
it "creates a new <%= class_name %>" do
expect {
- post :create, params: {<%= ns_file_name %>: valid_attributes},
session: valid_session
+ post :create, params: {<%= singular_table_name %>:
valid_attributes}, session: valid_session
}.to change(<%= class_name %>, :count).by(1)
end
- it "redirects to the created <%= ns_file_name %>" do
- post :create, params: {<%= ns_file_name %>: valid_attributes},
session: valid_session
+ it "redirects to the created <%= singular_table_name %>" do
+ post :create, params: {<%= singular_table_name %>: valid_attributes},
session: valid_session
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
- post :create, params: {<%= ns_file_name %>: invalid_attributes},
session: valid_session
+ post :create, params: {<%= singular_table_name %>:
invalid_attributes}, session: valid_session
expect(response).to be_successful
end
end
@@ -103,16 +103,16 @@
skip("Add a hash of attributes valid for your model")
}
- it "updates the requested <%= ns_file_name %>" do
+ it "updates the requested <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name
%>: new_attributes}, session: valid_session
+ put :update, params: {id: <%= file_name %>.to_param, <%=
singular_table_name %>: new_attributes}, session: valid_session
<%= file_name %>.reload
skip("Add assertions for updated state")
end
- it "redirects to the <%= ns_file_name %>" do
+ it "redirects to the <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name
%>: valid_attributes}, session: valid_session
+ put :update, params: {id: <%= file_name %>.to_param, <%=
singular_table_name %>: valid_attributes}, session: valid_session
expect(response).to redirect_to(<%= file_name %>)
end
end
@@ -120,14 +120,14 @@
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
- put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name
%>: invalid_attributes}, session: valid_session
+ put :update, params: {id: <%= file_name %>.to_param, <%=
singular_table_name %>: invalid_attributes}, session: valid_session
expect(response).to be_successful
end
end
end
describe "DELETE #destroy" do
- it "destroys the requested <%= ns_file_name %>" do
+ it "destroys the requested <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
expect {
delete :destroy, params: {id: <%= file_name %>.to_param}, session:
valid_session
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 2021-08-14
10:29:28.000000000 +0200
+++ new/lib/generators/rspec/scaffold/templates/request_spec.rb 2022-01-26
13:32:06.000000000 +0100
@@ -1,4 +1,4 @@
- require 'rails_helper'
+require 'rails_helper'
# This spec was generated by rspec-rails when you ran the scaffold generator.
# It demonstrates how one might use RSpec to test the controller code that
@@ -18,6 +18,7 @@
include Engine.routes.url_helpers
<% end -%>
+ # This should return the minimal set of attributes required to create a valid
# <%= class_name %>. As you add validations to <%= class_name %>, be sure to
# adjust the attributes here as well.
let(:valid_attributes) {
@@ -41,7 +42,7 @@
describe "GET /show" do
it "renders a successful response" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- get <%= show_helper.tr('@', '') %>
+ get <%= show_helper %>
expect(response).to be_successful
end
end
@@ -54,9 +55,9 @@
end
describe "GET /edit" do
- it "render a successful response" do
+ it "renders a successful response" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- get <%= edit_helper.tr('@','') %>
+ get <%= edit_helper %>
expect(response).to be_successful
end
end
@@ -65,25 +66,25 @@
context "with valid parameters" do
it "creates a new <%= class_name %>" do
expect {
- post <%= index_helper %>_url, params: { <%= ns_file_name %>:
valid_attributes }
+ post <%= index_helper %>_url, params: { <%= singular_table_name %>:
valid_attributes }
}.to change(<%= class_name %>, :count).by(1)
end
- it "redirects to the created <%= ns_file_name %>" do
- post <%= index_helper %>_url, params: { <%= ns_file_name %>:
valid_attributes }
- expect(response).to redirect_to(<%= show_helper.gsub("\@#{file_name}",
class_name+".last") %>)
+ it "redirects to the created <%= singular_table_name %>" do
+ post <%= index_helper %>_url, params: { <%= singular_table_name %>:
valid_attributes }
+ expect(response).to redirect_to(<%= show_helper(class_name+".last") %>)
end
end
context "with invalid parameters" do
it "does not create a new <%= class_name %>" do
expect {
- post <%= index_helper %>_url, params: { <%= ns_file_name %>:
invalid_attributes }
+ post <%= index_helper %>_url, params: { <%= singular_table_name %>:
invalid_attributes }
}.to change(<%= class_name %>, :count).by(0)
end
it "renders a successful response (i.e. to display the 'new' template)"
do
- post <%= index_helper %>_url, params: { <%= ns_file_name %>:
invalid_attributes }
+ post <%= index_helper %>_url, params: { <%= singular_table_name %>:
invalid_attributes }
expect(response).to be_successful
end
end
@@ -95,16 +96,16 @@
skip("Add a hash of attributes valid for your model")
}
- it "updates the requested <%= ns_file_name %>" do
+ it "updates the requested <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- patch <%= show_helper.tr('@', '') %>, params: { <%=
singular_table_name %>: new_attributes }
+ patch <%= show_helper %>, params: { <%= singular_table_name %>:
new_attributes }
<%= file_name %>.reload
skip("Add assertions for updated state")
end
- it "redirects to the <%= ns_file_name %>" do
+ it "redirects to the <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- patch <%= show_helper.tr('@', '') %>, params: { <%=
singular_table_name %>: new_attributes }
+ patch <%= show_helper %>, params: { <%= singular_table_name %>:
new_attributes }
<%= file_name %>.reload
expect(response).to redirect_to(<%= singular_table_name %>_url(<%=
file_name %>))
end
@@ -113,23 +114,23 @@
context "with invalid parameters" do
it "renders a successful response (i.e. to display the 'edit' template)"
do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- patch <%= show_helper.tr('@', '') %>, params: { <%=
singular_table_name %>: invalid_attributes }
+ patch <%= show_helper %>, params: { <%= singular_table_name %>:
invalid_attributes }
expect(response).to be_successful
end
end
end
describe "DELETE /destroy" do
- it "destroys the requested <%= ns_file_name %>" do
+ it "destroys the requested <%= singular_table_name %>" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
expect {
- delete <%= show_helper.tr('@', '') %>
+ delete <%= show_helper %>
}.to change(<%= class_name %>, :count).by(-1)
end
it "redirects to the <%= table_name %> list" do
<%= file_name %> = <%= class_name %>.create! valid_attributes
- delete <%= show_helper.tr('@', '') %>
+ delete <%= show_helper %>
expect(response).to redirect_to(<%= index_helper %>_url)
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/matchers/have_enqueued_mail.rb
new/lib/rspec/rails/matchers/have_enqueued_mail.rb
--- old/lib/rspec/rails/matchers/have_enqueued_mail.rb 2021-08-14
10:29:28.000000000 +0200
+++ new/lib/rspec/rails/matchers/have_enqueued_mail.rb 2022-01-26
13:32:06.000000000 +0100
@@ -4,6 +4,7 @@
require "rspec/mocks/argument_matchers"
require "rspec/rails/matchers/active_job"
+# rubocop: disable Metrics/ClassLength
module RSpec
module Rails
module Matchers
@@ -119,9 +120,11 @@
end
def mail_job_message(job)
- mailer_method = job[:args][0..1].join('.')
+ job_args = deserialize_arguments(job)
+
+ mailer_method = job_args[0..1].join('.')
+ mailer_args = job_args[3..-1]
- mailer_args = job[:args][3..-1]
msg_parts = []
msg_parts << "with #{mailer_args}" if mailer_args.any?
msg_parts << "on queue #{job[:queue]}" if job[:queue] && job[:queue]
!= 'mailers'
@@ -130,6 +133,30 @@
"#{mailer_method} #{msg_parts.join(', ')}".strip
end
+ # Ruby 3.1 changed how params were serialized on Rails 6.1
+ # so we override the active job implementation and customise it here.
+ def deserialize_arguments(job)
+ args = super
+
+ return args unless Hash === args.last
+
+ hash = args.pop
+
+ if hash.key?("_aj_ruby2_keywords")
+ keywords = hash["_aj_ruby2_keywords"]
+
+ original_hash = keywords.each_with_object({}) { |new_hash,
keyword| new_hash[keyword.to_sym] = hash[keyword] }
+
+ args + [original_hash]
+ elsif hash.key?(:args) && hash.key?(:params)
+ args + [hash]
+ elsif hash.key?(:args)
+ args + hash[:args]
+ else
+ args + [hash]
+ end
+ end
+
def legacy_mail?(job)
job[:job] <= ActionMailer::DeliveryJob
end
@@ -196,3 +223,4 @@
end
end
end
+# rubocop: enable Metrics/ClassLength
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/rspec/rails/matchers/have_http_status.rb
new/lib/rspec/rails/matchers/have_http_status.rb
--- old/lib/rspec/rails/matchers/have_http_status.rb 2021-08-14
10:29:28.000000000 +0200
+++ new/lib/rspec/rails/matchers/have_http_status.rb 2022-01-26
13:32:06.000000000 +0100
@@ -1,6 +1,6 @@
# The following code inspired and modified from Rails' `assert_response`:
#
-#
https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/testing/assertions/response.rb#L22-L38
+#
https://github.com/rails/rails/blob/main/actionpack/lib/action_dispatch/testing/assertions/response.rb#L22-L38
#
# Thank you to all the Rails devs who did the heavy lifting on this!
@@ -243,7 +243,7 @@
# @return [Array<Symbol>] of status codes which represent a HTTP
status
# code "group"
- # @see
https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/testing/test_response.rb
`ActionDispatch::TestResponse`
+ # @see
https://github.com/rails/rails/blob/main/actionpack/lib/action_dispatch/testing/test_response.rb
`ActionDispatch::TestResponse`
def self.valid_statuses
[
:error, :success, :missing,
@@ -313,7 +313,7 @@
# @return [String] formatting the associated code(s) for the various
# status code "groups"
- # @see
https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/testing/test_response.rb
`ActionDispatch::TestResponse`
+ # @see
https://github.com/rails/rails/blob/main/actionpack/lib/action_dispatch/testing/test_response.rb
`ActionDispatch::TestResponse`
# @see https://github.com/rack/rack/blob/master/lib/rack/response.rb
`Rack::Response`
def type_codes
# At the time of this commit the most recent version of
@@ -373,7 +373,7 @@
# expect(response).to have_http_status(404)
# expect(page).to have_http_status(:created)
#
- # @see
https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/testing/test_response.rb
`ActionDispatch::TestResponse`
+ # @see
https://github.com/rails/rails/blob/main/actionpack/lib/action_dispatch/testing/test_response.rb
`ActionDispatch::TestResponse`
# @see https://github.com/rack/rack/blob/master/lib/rack/utils.rb
`Rack::Utils::SYMBOL_TO_STATUS_CODE`
def have_http_status(target)
raise ArgumentError, "Invalid HTTP status: nil" unless target
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 2021-08-14 10:29:28.000000000 +0200
+++ new/lib/rspec/rails/version.rb 2022-01-26 13:32:06.000000000 +0100
@@ -3,7 +3,7 @@
# Version information for RSpec Rails.
module Version
# Current version of RSpec Rails, in semantic versioning format.
- STRING = '5.0.2'
+ STRING = '5.1.0'
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2021-08-14 10:29:28.000000000 +0200
+++ new/metadata 2022-01-26 13:32:06.000000000 +0100
@@ -1,7 +1,7 @@
--- !ruby/object:Gem::Specification
name: rspec-rails
version: !ruby/object:Gem::Version
- version: 5.0.2
+ version: 5.1.0
platform: ruby
authors:
- David Chelimsky
@@ -44,7 +44,7 @@
ZsVDj6a7lH3cNqtWXZxrb2wO38qV5AkYj8SQK7Hj3/Yui9myUX3crr+PdetazSqQ
F3MdtaDehhjC
-----END CERTIFICATE-----
-date: 2021-08-14 00:00:00.000000000 Z
+date: 2022-01-26 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: actionpack
@@ -176,16 +176,28 @@
name: cucumber
requirement: !ruby/object:Gem::Requirement
requirements:
- - - "~>"
+ - - ">="
+ - !ruby/object:Gem::Version
+ version: '3.2'
+ - - "!="
+ - !ruby/object:Gem::Version
+ version: 4.0.0
+ - - "<"
- !ruby/object:Gem::Version
- version: 1.3.5
+ version: 8.0.0
type: :development
prerelease: false
version_requirements: !ruby/object:Gem::Requirement
requirements:
- - - "~>"
+ - - ">="
+ - !ruby/object:Gem::Version
+ version: '3.2'
+ - - "!="
+ - !ruby/object:Gem::Version
+ version: 4.0.0
+ - - "<"
- !ruby/object:Gem::Version
- version: 1.3.5
+ version: 8.0.0
description: rspec-rails is a testing framework for Rails 5+.
email: [email protected]
executables: []
@@ -296,7 +308,7 @@
- MIT
metadata:
bug_tracker_uri: https://github.com/rspec/rspec-rails/issues
- changelog_uri: https://github.com/rspec/rspec-rails/blob/v5.0.2/Changelog.md
+ changelog_uri: https://github.com/rspec/rspec-rails/blob/v5.1.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 +328,7 @@
- !ruby/object:Gem::Version
version: '0'
requirements: []
-rubygems_version: 3.2.22
+rubygems_version: 3.3.3
signing_key:
specification_version: 4
summary: RSpec for Rails
Binary files old/metadata.gz.sig and new/metadata.gz.sig differ