Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(286)

Side by Side Diff: chrome/test/chromedriver/logging.cc

Issue 14591005: C++ readability review from original change https://chromiumcodereview.appspot.com/14263024/ (Closed) Base URL: https://src.chromium.org/chrome/trunk/src/
Patch Set: Rewrite ConsoleLogger::OnEvent from stringstream to printf. Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/logging.h" 5 #include "chrome/test/chromedriver/logging.h"
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/time.h" 9 #include "base/time.h"
10 #include "chrome/test/chromedriver/capabilities.h" 10 #include "chrome/test/chromedriver/capabilities.h"
11 #include "chrome/test/chromedriver/chrome/console_logger.h" 11 #include "chrome/test/chromedriver/chrome/console_logger.h"
12 #include "chrome/test/chromedriver/chrome/performance_logger.h" 12 #include "chrome/test/chromedriver/chrome/performance_logger.h"
13 #include "chrome/test/chromedriver/chrome/status.h" 13 #include "chrome/test/chromedriver/chrome/status.h"
14 14
15 15
16 namespace { 16 namespace {
17 17
18 // Map between WebDriverLog::WebDriverLevel and its name in WD wire protocol. 18 // Map between WebDriverLog::WebDriverLevel and its name in WD wire protocol.
19 // Array indices are the WebDriverLog::WebDriverLevel enum values. 19 // Array indices are the WebDriverLog::WebDriverLevel enum values.
20 const char* kWebDriverLevelNames[] = { 20 const char* const kWebDriverLevelNames[] = {
21 "ALL", "DEBUG", "INFO", "WARNING", "SEVERE", "OFF" 21 "ALL", "DEBUG", "INFO", "WARNING", "SEVERE", "OFF"
22 }; 22 };
23 23
24 // Map between Log::Level and WebDriverLog::WebDriverLevel. 24 // Map between Log::Level and WebDriverLog::WebDriverLevel.
25 // Array indices are the Log::Level enum values. 25 // Array indices are the Log::Level enum values.
26 WebDriverLog::WebDriverLevel kLogLevelToWebDriverLevels[] = { 26 WebDriverLog::WebDriverLevel kLogLevelToWebDriverLevels[] = {
27 WebDriverLog::kWdDebug, // kDebug 27 WebDriverLog::kWdDebug, // kDebug
28 WebDriverLog::kWdInfo, // kLog 28 WebDriverLog::kWdInfo, // kLog
29 WebDriverLog::kWdWarning, // kWarning 29 WebDriverLog::kWdWarning, // kWarning
30 WebDriverLog::kWdSevere // kError 30 WebDriverLog::kWdSevere // kError
31 }; 31 };
32 32
33 // Translates Log::Level to WebDriverLog::WebDriverLevel.
33 WebDriverLog::WebDriverLevel LogLevelToWebDriverLevel(Log::Level level) { 34 WebDriverLog::WebDriverLevel LogLevelToWebDriverLevel(Log::Level level) {
34 const int index = level - Log::kDebug; 35 const int index = level - Log::kDebug;
35 CHECK(index >= 0); 36 CHECK_GE(index, 0);
36 CHECK(static_cast<size_t>(index) < arraysize(kLogLevelToWebDriverLevels)); 37 CHECK_LT(static_cast<size_t>(index), arraysize(kLogLevelToWebDriverLevels));
37 return kLogLevelToWebDriverLevels[index]; 38 return kLogLevelToWebDriverLevels[index];
38 } 39 }
39 40
41 // Returns WD wire protocol level name for a WebDriverLog::WebDriverLevel.
40 std::string GetWebDriverLevelName( 42 std::string GetWebDriverLevelName(
41 const WebDriverLog::WebDriverLevel level) { 43 const WebDriverLog::WebDriverLevel level) {
42 const int index = level - WebDriverLog::kWdAll; 44 const int index = level - WebDriverLog::kWdAll;
43 CHECK(index >= 0); 45 CHECK_GE(index, 0);
44 CHECK(static_cast<size_t>(index) < arraysize(kWebDriverLevelNames)); 46 CHECK_LT(static_cast<size_t>(index), arraysize(kWebDriverLevelNames));
45 return kWebDriverLevelNames[index]; 47 return kWebDriverLevelNames[index];
46 } 48 }
47 49
48 } // namespace 50 } // namespace
49 51
50 bool WebDriverLog::NameToLevel( 52 bool WebDriverLog::NameToLevel(
51 const std::string& name, WebDriverLog::WebDriverLevel* out_level) { 53 const std::string& name, WebDriverLog::WebDriverLevel* out_level) {
52 for (size_t i = 0; i < arraysize(kWebDriverLevelNames); ++i) { 54 for (size_t i = 0; i < arraysize(kWebDriverLevelNames); ++i) {
53 if (name == kWebDriverLevelNames[i]) { 55 if (name == kWebDriverLevelNames[i]) {
54 CHECK(WebDriverLog::kWdAll + i <= WebDriverLog::kWdOff); 56 CHECK(WebDriverLog::kWdAll + i <= WebDriverLog::kWdOff);
jdennett 2013/05/23 03:44:24 CHECK_LE
klm 2013/05/23 15:21:39 Done.
55 *out_level = 57 *out_level =
56 static_cast<WebDriverLog::WebDriverLevel>(WebDriverLog::kWdAll + i); 58 static_cast<WebDriverLog::WebDriverLevel>(WebDriverLog::kWdAll + i);
57 return true; 59 return true;
58 } 60 }
59 } 61 }
60 return false; 62 return false;
61 } 63 }
62 64
63 WebDriverLog::WebDriverLog( 65 WebDriverLog::WebDriverLog(
64 const std::string& type, WebDriverLog::WebDriverLevel min_wd_level) 66 const std::string& type, WebDriverLog::WebDriverLevel min_wd_level)
65 : type_(type), 67 : type_(type),
66 min_wd_level_(min_wd_level), 68 min_wd_level_(min_wd_level),
67 entries_(new base::ListValue()) { 69 entries_(new base::ListValue()) {
68 VLOG(1) << "Log(" << type_ << ", " << min_wd_level_ << ")"; 70 VLOG(1) << "Log(" << type_ << ", " << min_wd_level_ << ")";
69 } 71 }
70 72
71 WebDriverLog::~WebDriverLog() { 73 WebDriverLog::~WebDriverLog() {
72 VLOG(1) << "Log type '" << type_ << "' lost " 74 VLOG(1) << "Log type '" << type_ << "' lost "
73 << entries_->GetSize() << " entries on destruction"; 75 << entries_->GetSize() << " entries on destruction";
74 } 76 }
75 77
76 const std::string& WebDriverLog::GetType() { 78 const std::string& WebDriverLog::GetType() {
77 return type_; 79 return type_;
78 } 80 }
79 81
80 void WebDriverLog::AddEntry(const base::Time& time, 82 void WebDriverLog::AddEntry(const base::Time& time,
81 Log::Level level, 83 Log::Level level,
82 const std::string& message) { 84 const std::string& message) {
83 const WebDriverLog::WebDriverLevel wd_level = LogLevelToWebDriverLevel(level); 85 const WebDriverLog::WebDriverLevel wd_level = LogLevelToWebDriverLevel(level);
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 WebDriverLog* browser_log = new WebDriverLog("browser", browser_log_level); 140 WebDriverLog* browser_log = new WebDriverLog("browser", browser_log_level);
139 devtools_logs.push_back(browser_log); 141 devtools_logs.push_back(browser_log);
140 // If the level is OFF, don't even bother listening for DevTools events. 142 // If the level is OFF, don't even bother listening for DevTools events.
141 if (browser_log_level != WebDriverLog::kWdOff) 143 if (browser_log_level != WebDriverLog::kWdOff)
142 listeners.push_back(new ConsoleLogger(browser_log)); 144 listeners.push_back(new ConsoleLogger(browser_log));
143 145
144 out_devtools_logs->swap(devtools_logs); 146 out_devtools_logs->swap(devtools_logs);
145 out_listeners->swap(listeners); 147 out_listeners->swap(listeners);
146 return Status(kOk); 148 return Status(kOk);
147 } 149 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698