mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Do not run app.executor callbacks in integration tests
This reverts changes made to integration tests in PR #23807. The issue happens when using capybara with a driver that needs to start a server in a separate thread like (poltergeist, selenium, etc). Both threads the capybara server one and the test thread end running syncronize over the interlock.
This commit is contained in:
parent
4f21ac7e9c
commit
cf075d9f55
1 changed files with 2 additions and 11 deletions
|
@ -455,24 +455,17 @@ module ActionDispatch
|
|||
def before_setup # :nodoc:
|
||||
@app = nil
|
||||
@integration_session = nil
|
||||
@execution_context = nil
|
||||
super
|
||||
end
|
||||
|
||||
def after_teardown # :nodoc:
|
||||
remove!
|
||||
super
|
||||
end
|
||||
|
||||
def integration_session
|
||||
@integration_session ||= create_session(app).tap { @execution_context = app.respond_to?(:executor) && app.executor.run! }
|
||||
@integration_session ||= create_session(app)
|
||||
end
|
||||
|
||||
# Reset the current session. This is useful for testing multiple sessions
|
||||
# in a single test case.
|
||||
def reset!
|
||||
remove!
|
||||
integration_session
|
||||
@integration_session = create_session(app)
|
||||
end
|
||||
|
||||
def create_session(app)
|
||||
|
@ -488,8 +481,6 @@ module ActionDispatch
|
|||
end
|
||||
|
||||
def remove! # :nodoc:
|
||||
@execution_context.complete! if @execution_context
|
||||
@execution_context = nil
|
||||
@integration_session = nil
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue