diff --git a/lib/webrat/core/configuration.rb b/lib/webrat/core/configuration.rb index 07cbe4d..29c9e81 100755 --- a/lib/webrat/core/configuration.rb +++ b/lib/webrat/core/configuration.rb @@ -1,4 +1,5 @@ require "webrat/core_extensions/deprecate" +require "pathname" module Webrat @@ -26,7 +27,7 @@ module Webrat # Save and open pages with error status codes (500-599) in a browser? Defualts to true. attr_writer :open_error_files - # Save and open page storage directory, defaults to current directory + # Save and open page storage directory, defaults to "tmp" under current directory if exists, otherwise current directory attr_accessor :saved_pages_dir # Which rails environment should the selenium tests be run in? Defaults to test. @@ -63,7 +64,6 @@ module Webrat def initialize # :nodoc: self.open_error_files = true - self.saved_pages_dir = File.expand_path(".") self.application_environment = :test self.application_port = 3001 self.application_address = 'localhost' @@ -72,6 +72,9 @@ module Webrat self.infinite_redirect_limit = 10 self.selenium_browser_key = '*firefox' self.selenium_browser_startup_timeout = 5 + + tmp_dir = Pathname.new(Dir.pwd).join("tmp") + self.saved_pages_dir = tmp_dir.exist? ? tmp_dir : Dir.pwd end def open_error_files? #:nodoc: diff --git a/spec/private/core/configuration_spec.rb b/spec/private/core/configuration_spec.rb index fcb959f..165ce4f 100755 --- a/spec/private/core/configuration_spec.rb +++ b/spec/private/core/configuration_spec.rb @@ -17,11 +17,6 @@ describe Webrat::Configuration do config.should open_error_files end - it "should default saved_pages_dir to current dir" do - config = Webrat::Configuration.new - config.saved_pages_dir.should == File.expand_path(".") - end - it "should detect infinite redirects after 10" do config = Webrat::Configuration.new config.infinite_redirect_limit.should == 10