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

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

Issue 454133003: [ChromeDriver] Implementing tracing support (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixing nits Created 6 years, 4 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) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/capabilities.h" 5 #include "chrome/test/chromedriver/capabilities.h"
6 6
7 #include <map> 7 #include <map>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 29 matching lines...) Expand all
40 Capabilities* capabilities) { 40 Capabilities* capabilities) {
41 std::string str; 41 std::string str;
42 if (!option.GetAsString(&str)) 42 if (!option.GetAsString(&str))
43 return Status(kUnknownError, "must be a string"); 43 return Status(kUnknownError, "must be a string");
44 if (str.empty()) 44 if (str.empty())
45 return Status(kUnknownError, "cannot be empty"); 45 return Status(kUnknownError, "cannot be empty");
46 *to_set = str; 46 *to_set = str;
47 return Status(kOk); 47 return Status(kOk);
48 } 48 }
49 49
50 Status ParseInterval(int* to_set,
51 const base::Value& option,
52 Capabilities* capabilities) {
53 int parsed_int = 0;
54 if (!option.GetAsInteger(&parsed_int))
55 return Status(kUnknownError, "must be an integer");
56 if (parsed_int <= 0)
57 return Status(kUnknownError, "must be positive");
58 *to_set = parsed_int;
59 return Status(kOk);
60 }
61
50 Status ParseFilePath(base::FilePath* to_set, 62 Status ParseFilePath(base::FilePath* to_set,
51 const base::Value& option, 63 const base::Value& option,
52 Capabilities* capabilities) { 64 Capabilities* capabilities) {
53 base::FilePath::StringType str; 65 base::FilePath::StringType str;
54 if (!option.GetAsString(&str)) 66 if (!option.GetAsString(&str))
55 return Status(kUnknownError, "must be a string"); 67 return Status(kUnknownError, "must be a string");
56 *to_set = base::FilePath(str); 68 *to_set = base::FilePath(str);
57 return Status(kOk); 69 return Status(kOk);
58 } 70 }
59 71
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 return Status(kOk); 328 return Status(kOk);
317 } 329 }
318 330
319 Status ParsePerfLoggingPrefs(const base::Value& option, 331 Status ParsePerfLoggingPrefs(const base::Value& option,
320 Capabilities* capabilities) { 332 Capabilities* capabilities) {
321 const base::DictionaryValue* perf_logging_prefs = NULL; 333 const base::DictionaryValue* perf_logging_prefs = NULL;
322 if (!option.GetAsDictionary(&perf_logging_prefs)) 334 if (!option.GetAsDictionary(&perf_logging_prefs))
323 return Status(kUnknownError, "must be a dictionary"); 335 return Status(kUnknownError, "must be a dictionary");
324 336
325 std::map<std::string, Parser> parser_map; 337 std::map<std::string, Parser> parser_map;
338 parser_map["bufferUsageReportingInterval"] = base::Bind(&ParseInterval,
339 &capabilities->perf_logging_prefs.buffer_usage_reporting_interval);
326 parser_map["enableNetwork"] = base::Bind( 340 parser_map["enableNetwork"] = base::Bind(
327 &ParseInspectorDomainStatus, &capabilities->perf_logging_prefs.network); 341 &ParseInspectorDomainStatus, &capabilities->perf_logging_prefs.network);
328 parser_map["enablePage"] = base::Bind( 342 parser_map["enablePage"] = base::Bind(
329 &ParseInspectorDomainStatus, &capabilities->perf_logging_prefs.page); 343 &ParseInspectorDomainStatus, &capabilities->perf_logging_prefs.page);
330 parser_map["enableTimeline"] = base::Bind( 344 parser_map["enableTimeline"] = base::Bind(
331 &ParseInspectorDomainStatus, &capabilities->perf_logging_prefs.timeline); 345 &ParseInspectorDomainStatus, &capabilities->perf_logging_prefs.timeline);
332 parser_map["traceCategories"] = base::Bind( 346 parser_map["traceCategories"] = base::Bind(
333 &ParseString, &capabilities->perf_logging_prefs.trace_categories); 347 &ParseString, &capabilities->perf_logging_prefs.trace_categories);
334 348
335 for (base::DictionaryValue::Iterator it(*perf_logging_prefs); !it.IsAtEnd(); 349 for (base::DictionaryValue::Iterator it(*perf_logging_prefs); !it.IsAtEnd();
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
515 break; 529 break;
516 str += " "; 530 str += " ";
517 } 531 }
518 return str; 532 return str;
519 } 533 }
520 534
521 PerfLoggingPrefs::PerfLoggingPrefs() 535 PerfLoggingPrefs::PerfLoggingPrefs()
522 : network(InspectorDomainStatus::kDefaultEnabled), 536 : network(InspectorDomainStatus::kDefaultEnabled),
523 page(InspectorDomainStatus::kDefaultEnabled), 537 page(InspectorDomainStatus::kDefaultEnabled),
524 timeline(InspectorDomainStatus::kDefaultEnabled), 538 timeline(InspectorDomainStatus::kDefaultEnabled),
525 trace_categories() {} 539 trace_categories(),
540 buffer_usage_reporting_interval(1000) {}
526 541
527 PerfLoggingPrefs::~PerfLoggingPrefs() {} 542 PerfLoggingPrefs::~PerfLoggingPrefs() {}
528 543
529 Capabilities::Capabilities() 544 Capabilities::Capabilities()
530 : android_use_running_app(false), 545 : android_use_running_app(false),
531 detach(false), 546 detach(false),
532 force_devtools_screenshot(false) {} 547 force_devtools_screenshot(false) {}
533 548
534 Capabilities::~Capabilities() {} 549 Capabilities::~Capabilities() {}
535 550
(...skipping 27 matching lines...) Expand all
563 if (iter == logging_prefs.end() || iter->second == Log::kOff) { 578 if (iter == logging_prefs.end() || iter->second == Log::kOff) {
564 const base::DictionaryValue* chrome_options = NULL; 579 const base::DictionaryValue* chrome_options = NULL;
565 if (desired_caps.GetDictionary("chromeOptions", &chrome_options) && 580 if (desired_caps.GetDictionary("chromeOptions", &chrome_options) &&
566 chrome_options->HasKey("perfLoggingPrefs")) { 581 chrome_options->HasKey("perfLoggingPrefs")) {
567 return Status(kUnknownError, "perfLoggingPrefs specified, " 582 return Status(kUnknownError, "perfLoggingPrefs specified, "
568 "but performance logging was not enabled"); 583 "but performance logging was not enabled");
569 } 584 }
570 } 585 }
571 return Status(kOk); 586 return Status(kOk);
572 } 587 }
OLDNEW
« no previous file with comments | « chrome/test/chromedriver/capabilities.h ('k') | chrome/test/chromedriver/capabilities_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698