diff --git a/lib/capybara/session.rb b/lib/capybara/session.rb index 68601353..260d9d2a 100644 --- a/lib/capybara/session.rb +++ b/lib/capybara/session.rb @@ -77,8 +77,8 @@ module Capybara def reset! if @touched driver.reset! - @touched = false assert_no_selector :xpath, "/html/body/*" + @touched = false end raise @server.error if Capybara.raise_server_errors and @server and @server.error ensure diff --git a/spec/selenium_spec.rb b/spec/selenium_spec.rb index 57e0628f..57e4b7b2 100644 --- a/spec/selenium_spec.rb +++ b/spec/selenium_spec.rb @@ -35,6 +35,14 @@ describe Capybara::Session do end end + describe "#reset!" do + it "freshly reset session should not be touched" do + @session.instance_variable_set(:@touched, true) + @session.reset! + @session.instance_variable_get(:@touched).should be_false + end + end + describe "exit codes" do before do @current_dir = Dir.getwd