From ee7f3175bfdaf195881b5be6c828c8085b6cad71 Mon Sep 17 00:00:00 2001 From: Tom Stuart Date: Thu, 31 May 2012 12:48:24 +0100 Subject: [PATCH] Tweak john-griffin's work. * Don't suppress browser errors, only JS errors * Send exception objects to the log to avoid message-splitting pain --- lib/capybara/poltergeist/browser.rb | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/lib/capybara/poltergeist/browser.rb b/lib/capybara/poltergeist/browser.rb index b060f8b..40ac133 100644 --- a/lib/capybara/poltergeist/browser.rb +++ b/lib/capybara/poltergeist/browser.rb @@ -124,9 +124,14 @@ module Capybara::Poltergeist if json['error'] if json['error']['name'] == 'Poltergeist.JavascriptError' - error(JavascriptError, json['error']) + error = JavascriptError.new(json['error']) + if raise_errors + raise error + else + log error + end else - error(BrowserError, json['error']) + raise BrowserError.new(json['error']) end end json['response'] @@ -137,15 +142,6 @@ module Capybara::Poltergeist end private - - def error(klass, message) - if raise_errors - raise klass.new(message) - else - log message - end - end - def log(message) logger.puts message if logger end