Skip to content

Commit

Permalink
Update Capybara monkey patch to check Capybara.raise_server_errors
Browse files Browse the repository at this point in the history
If `Capybara.raise_server_errors` is temporarily disabled for a spec,
reset each session's errors to prevent `reset_sessions_after_rescue!`
from raising an error after `raise_server_errors` has been reset.

Fixes #127.
  • Loading branch information
afn committed Sep 22, 2023
1 parent fe438bd commit abcc4d1
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion lib/pry-rescue/rspec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,13 @@ def self.monkeypatch_capybara
unless Capybara.respond_to?(:reset_sessions_after_rescue!)
class << Capybara
alias_method :reset_sessions_after_rescue!, :reset_sessions!
def reset_sessions!; end
def reset_sessions!
return if Capybara.raise_server_errors

session_pool.reverse_each do |_mode, session|
session.server.reset_error!
end
end
end

after_filters << Capybara.method(:reset_sessions_after_rescue!)
Expand Down

0 comments on commit abcc4d1

Please sign in to comment.