| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/test/chromedriver/status.h" | 5 #include "chrome/test/chromedriver/status.h" |
| 6 | 6 |
| 7 namespace { | 7 namespace { |
| 8 | 8 |
| 9 // Returns the string equivalent of the given |ErrorCode|. | 9 // Returns the string equivalent of the given |ErrorCode|. |
| 10 const char* DefaultMessageForStatusCode(StatusCode code) { | 10 const char* DefaultMessageForStatusCode(StatusCode code) { |
| 11 switch (code) { | 11 switch (code) { |
| 12 case kOk: | 12 case kOk: |
| 13 return "ok"; | 13 return "ok"; |
| 14 case kUnknownCommand: | 14 case kUnknownCommand: |
| 15 return "unknown command"; | 15 return "unknown command"; |
| 16 case kUnknownError: | 16 case kUnknownError: |
| 17 return "unknown error"; | 17 return "unknown error"; |
| 18 case kSessionNotCreatedException: | 18 case kSessionNotCreatedException: |
| 19 return "session not created exception"; | 19 return "session not created exception"; |
| 20 case kNoSuchSession: | 20 case kNoSuchSession: |
| 21 return "no such session"; | 21 return "no such session"; |
| 22 case kChromeNotReachable: |
| 23 return "chrome not reachable"; |
| 22 default: | 24 default: |
| 23 return "<unknown>"; | 25 return "<unknown>"; |
| 24 } | 26 } |
| 25 } | 27 } |
| 26 | 28 |
| 27 } // namespace | 29 } // namespace |
| 28 | 30 |
| 29 Status::Status(StatusCode code) | 31 Status::Status(StatusCode code) |
| 30 : code_(code), msg_(DefaultMessageForStatusCode(code)) {} | 32 : code_(code), msg_(DefaultMessageForStatusCode(code)) {} |
| 31 | 33 |
| 32 Status::Status(StatusCode code, const std::string& details) | 34 Status::Status(StatusCode code, const std::string& details) |
| 33 : code_(code), | 35 : code_(code), |
| 34 msg_(DefaultMessageForStatusCode(code) + std::string(": ") + details) { | 36 msg_(DefaultMessageForStatusCode(code) + std::string(": ") + details) { |
| 35 } | 37 } |
| 36 | 38 |
| 39 Status::Status(StatusCode code, const Status& cause) |
| 40 : code_(code), |
| 41 msg_(DefaultMessageForStatusCode(code) + std::string("\nfrom ") + |
| 42 cause.message()) {} |
| 43 |
| 44 Status::Status(StatusCode code, |
| 45 const std::string& details, |
| 46 const Status& cause) |
| 47 : code_(code), |
| 48 msg_(DefaultMessageForStatusCode(code) + std::string(": ") + details + |
| 49 "\nfrom " + cause.message()) { |
| 50 } |
| 51 |
| 52 Status::~Status() {} |
| 53 |
| 37 bool Status::IsOk() const { | 54 bool Status::IsOk() const { |
| 38 return code_ == kOk; | 55 return code_ == kOk; |
| 39 } | 56 } |
| 40 | 57 |
| 41 bool Status::IsError() const { | 58 bool Status::IsError() const { |
| 42 return code_ != kOk; | 59 return code_ != kOk; |
| 43 } | 60 } |
| 44 | 61 |
| 45 StatusCode Status::code() const { | 62 StatusCode Status::code() const { |
| 46 return code_; | 63 return code_; |
| 47 } | 64 } |
| 48 | 65 |
| 49 const std::string& Status::message() const { | 66 const std::string& Status::message() const { |
| 50 return msg_; | 67 return msg_; |
| 51 } | 68 } |
| OLD | NEW |