Fix issue #1237 so browser doesn't intialize during session reset

This commit is contained in:
Scott Bonebrake 2014-09-19 14:18:50 -07:00
parent 9af20821c7
commit 5665396fc9
4 changed files with 13 additions and 1 deletions

View File

@ -133,4 +133,8 @@ class Capybara::Driver::Base
def needs_server?
false
end
def browser_initialized?
true
end
end

View File

@ -86,6 +86,10 @@ class Capybara::RackTest::Driver < Capybara::Driver::Base
@browser = nil
end
def browser_initialized?
!@browser.nil?
end
def get(*args, &block); browser.get(*args, &block); end
def post(*args, &block); browser.post(*args, &block); end
def put(*args, &block); browser.put(*args, &block); end

View File

@ -237,6 +237,10 @@ class Capybara::Selenium::Driver < Capybara::Driver::Base
Selenium::WebDriver::Error::NoSuchWindowError
end
def browser_initialized?
!@browser.nil?
end
private
def within_given_window(handle)

View File

@ -101,7 +101,7 @@ module Capybara
def reset!
if @touched
driver.reset!
assert_no_selector :xpath, "/html/body/*"
assert_no_selector :xpath, "/html/body/*" if driver.browser_initialized?
@touched = false
end
raise_server_error!