Wrap examples with Rails executor
bensheldon opened this issue · 2 comments
Describe the solution you'd like
In #2644, Execution Contexts were cleared, but did not go to fully wrapping specs with a Rails Executor. In the current version of Rails (7.1) TestCases look like this:
ActiveSupport.on_load(:active_support_test_case) do
if app.config.active_support.executor_around_test_case
require "active_support/executor/test_helper"
include ActiveSupport::Executor::TestHelper
else
require "active_support/current_attributes/test_helper"
include ActiveSupport::CurrentAttributes::TestHelper
require "active_support/execution_context/test_helper"
include ActiveSupport::ExecutionContext::TestHelper
end
end...and it would be nice if rspec-rails offered that too of using ActiveSupport::Executor::TestHelper
I found my way here for the CurrentAttributes reset portion but seems several of these things are tied together. Worth noting that even with a rails spec type (e.g. type: :request) CurrentAttributes are not reset in rspec-rails. I've created #2752 and #2753 to help address this. The former is a temporary fix considering the current state of the RailsExampleGroup to match what Rails does for that condition. It will reset CurrentAttributes for each example. The ideal fix is in the latter which should use either the executor or the individual test helpers like noted in the description here.