diff options
| author | kkania@chromium.org <kkania@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-20 15:02:33 +0000 |
|---|---|---|
| committer | kkania@chromium.org <kkania@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-20 15:02:33 +0000 |
| commit | 2937a8c72bfd28188ccd0b3f3b54bc3303b5f537 (patch) | |
| tree | 384b91fec1c7736bee9ce5e61055e84febe2fcd5 /chrome/test/webdriver/commands/screenshot_command.cc | |
| parent | cdca989154d270a6553c1c8e2df0122b521b49eb (diff) | |
| download | chromium_src-2937a8c72bfd28188ccd0b3f3b54bc3303b5f537.zip chromium_src-2937a8c72bfd28188ccd0b3f3b54bc3303b5f537.tar.gz chromium_src-2937a8c72bfd28188ccd0b3f3b54bc3303b5f537.tar.bz2 | |
Refactor error handling in chromedriver. Introduce new error class containing a webdriver error code, possible error details, and a stack trace.
Also some minor cleanup of the command files.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/7042018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86081 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/test/webdriver/commands/screenshot_command.cc')
| -rw-r--r-- | chrome/test/webdriver/commands/screenshot_command.cc | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/chrome/test/webdriver/commands/screenshot_command.cc b/chrome/test/webdriver/commands/screenshot_command.cc index bec6d98..352b062 100644 --- a/chrome/test/webdriver/commands/screenshot_command.cc +++ b/chrome/test/webdriver/commands/screenshot_command.cc @@ -10,8 +10,8 @@ #include "base/base64.h" #include "base/values.h" #include "chrome/test/webdriver/commands/response.h" -#include "chrome/test/webdriver/error_codes.h" #include "chrome/test/webdriver/session.h" +#include "chrome/test/webdriver/webdriver_error.h" namespace webdriver { @@ -27,23 +27,21 @@ bool ScreenshotCommand::DoesGet() { void ScreenshotCommand::ExecuteGet(Response* const response) { std::string raw_bytes; - if (!session_->GetScreenShot(&raw_bytes)) { - SET_WEBDRIVER_ERROR(response, "Screenshot of current page failed", - kInternalServerError); + Error* error = session_->GetScreenShot(&raw_bytes); + if (error) { + response->SetError(error); return; } // Convert the raw binary data to base 64 encoding for webdriver. std::string base64_screenshot; if (!base::Base64Encode(raw_bytes, &base64_screenshot)) { - SET_WEBDRIVER_ERROR(response, "Encoding the PNG to base64 format failed", - kInternalServerError); + response->SetError(new Error( + kUnknownError, "Encoding the PNG to base64 format failed")); return; } response->SetValue(new StringValue(base64_screenshot)); - response->SetStatus(kSuccess); } } // namespace webdriver - |
