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

Side by Side Diff: chrome/test/webdriver/commands/webelement_commands.cc

Issue 10834004: Correct const accessors in base/values.(h|cc) (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: One more, Windows-only Created 8 years, 5 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/webdriver/commands/webelement_commands.h" 5 #include "chrome/test/webdriver/commands/webelement_commands.h"
6 6
7 #include "base/file_util.h" 7 #include "base/file_util.h"
8 #include "base/format_macros.h" 8 #include "base/format_macros.h"
9 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
10 #include "base/string_split.h" 10 #include "base/string_split.h"
11 #include "base/string_util.h" 11 #include "base/string_util.h"
12 #include "base/stringprintf.h" 12 #include "base/stringprintf.h"
13 #include "base/utf_string_conversions.h" 13 #include "base/utf_string_conversions.h"
14 #include "base/values.h" 14 #include "base/values.h"
15 #include "chrome/test/webdriver/commands/response.h" 15 #include "chrome/test/webdriver/commands/response.h"
16 #include "chrome/test/webdriver/webdriver_basic_types.h" 16 #include "chrome/test/webdriver/webdriver_basic_types.h"
17 #include "chrome/test/webdriver/webdriver_error.h" 17 #include "chrome/test/webdriver/webdriver_error.h"
18 #include "chrome/test/webdriver/webdriver_session.h" 18 #include "chrome/test/webdriver/webdriver_session.h"
19 #include "chrome/test/webdriver/webdriver_util.h" 19 #include "chrome/test/webdriver/webdriver_util.h"
20 #include "third_party/webdriver/atoms.h" 20 #include "third_party/webdriver/atoms.h"
21 21
22 namespace webdriver { 22 namespace webdriver {
23 23
24 ///////////////////// WebElementCommand //////////////////// 24 ///////////////////// WebElementCommand ////////////////////
25 25
26 WebElementCommand::WebElementCommand( 26 WebElementCommand::WebElementCommand(
27 const std::vector<std::string>& path_segments, 27 const std::vector<std::string>& path_segments,
28 const DictionaryValue* const parameters) 28 DictionaryValue* const parameters)
29 : WebDriverCommand(path_segments, parameters), 29 : WebDriverCommand(path_segments, parameters),
30 path_segments_(path_segments) {} 30 path_segments_(path_segments) {}
31 31
32 WebElementCommand::~WebElementCommand() {} 32 WebElementCommand::~WebElementCommand() {}
33 33
34 bool WebElementCommand::Init(Response* const response) { 34 bool WebElementCommand::Init(Response* const response) {
35 if (!WebDriverCommand::Init(response)) 35 if (!WebDriverCommand::Init(response))
36 return false; 36 return false;
37 37
38 // There should be at least 5 segments to match 38 // There should be at least 5 segments to match
(...skipping 485 matching lines...) Expand 10 before | Expand all | Expand 10 after
524 if (scoped_value->GetAsString(&actual_value)) { 524 if (scoped_value->GetAsString(&actual_value)) {
525 *result = LowerCaseEqualsASCII(actual_value, value.c_str()); 525 *result = LowerCaseEqualsASCII(actual_value, value.c_str());
526 } else { 526 } else {
527 // Note we do not handle converting a number to a string. 527 // Note we do not handle converting a number to a string.
528 *result = false; 528 *result = false;
529 } 529 }
530 return NULL; 530 return NULL;
531 } 531 }
532 532
533 Error* ElementValueCommand::DragAndDropFilePaths() const { 533 Error* ElementValueCommand::DragAndDropFilePaths() const {
534 ListValue* path_list; 534 const ListValue* path_list;
535 if (!GetListParameter("value", &path_list)) 535 if (!GetListParameter("value", &path_list))
536 return new Error(kBadRequest, "Missing or invalid 'value' parameter"); 536 return new Error(kBadRequest, "Missing or invalid 'value' parameter");
537 537
538 // Compress array into single string. 538 // Compress array into single string.
539 FilePath::StringType paths_string; 539 FilePath::StringType paths_string;
540 for (size_t i = 0; i < path_list->GetSize(); ++i) { 540 for (size_t i = 0; i < path_list->GetSize(); ++i) {
541 FilePath::StringType path_part; 541 FilePath::StringType path_part;
542 if (!path_list->GetString(i, &path_part)) { 542 if (!path_list->GetString(i, &path_part)) {
543 return new Error( 543 return new Error(
544 kBadRequest, 544 kBadRequest,
(...skipping 27 matching lines...) Expand all
572 572
573 Point location; 573 Point location;
574 error = session_->GetClickableLocation(element, &location); 574 error = session_->GetClickableLocation(element, &location);
575 if (error) 575 if (error)
576 return error; 576 return error;
577 577
578 return session_->DragAndDropFilePaths(location, paths); 578 return session_->DragAndDropFilePaths(location, paths);
579 } 579 }
580 580
581 Error* ElementValueCommand::SendKeys() const { 581 Error* ElementValueCommand::SendKeys() const {
582 ListValue* key_list; 582 const ListValue* key_list;
583 if (!GetListParameter("value", &key_list)) { 583 if (!GetListParameter("value", &key_list)) {
584 return new Error(kBadRequest, "Missing or invalid 'value' parameter"); 584 return new Error(kBadRequest, "Missing or invalid 'value' parameter");
585 } 585 }
586 586
587 // Flatten the given array of strings into one. 587 // Flatten the given array of strings into one.
588 string16 keys; 588 string16 keys;
589 Error* error = FlattenStringArray(key_list, &keys); 589 Error* error = FlattenStringArray(key_list, &keys);
590 if (error) 590 if (error)
591 return error; 591 return error;
592 592
(...skipping 30 matching lines...) Expand all
623 return; 623 return;
624 } 624 }
625 if (!result->IsType(Value::TYPE_STRING)) { 625 if (!result->IsType(Value::TYPE_STRING)) {
626 response->SetError(new Error(kUnknownError, "Result is not string type")); 626 response->SetError(new Error(kUnknownError, "Result is not string type"));
627 return; 627 return;
628 } 628 }
629 response->SetValue(result.release()); 629 response->SetValue(result.release());
630 } 630 }
631 631
632 } // namespace webdriver 632 } // namespace webdriver
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698