| OLD | NEW |
| 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/window_commands.h" | 5 #include "chrome/test/chromedriver/window_commands.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <list> | 9 #include <list> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 357 std::string id_string; | 357 std::string id_string; |
| 358 int id_int; | 358 int id_int; |
| 359 if (id->GetAsString(&id_string)) { | 359 if (id->GetAsString(&id_string)) { |
| 360 xpath += base::StringPrintf( | 360 xpath += base::StringPrintf( |
| 361 "[@name=\"%s\" or @id=\"%s\"]", id_string.c_str(), id_string.c_str()); | 361 "[@name=\"%s\" or @id=\"%s\"]", id_string.c_str(), id_string.c_str()); |
| 362 } else if (id->GetAsInteger(&id_int)) { | 362 } else if (id->GetAsInteger(&id_int)) { |
| 363 xpath += base::StringPrintf("[%d]", id_int + 1); | 363 xpath += base::StringPrintf("[%d]", id_int + 1); |
| 364 } else { | 364 } else { |
| 365 return Status(kUnknownError, "invalid 'id'"); | 365 return Status(kUnknownError, "invalid 'id'"); |
| 366 } | 366 } |
| 367 args.Append(new base::StringValue(xpath)); | 367 args.AppendString(xpath); |
| 368 } | 368 } |
| 369 std::string frame; | 369 std::string frame; |
| 370 Status status = web_view->GetFrameByFunction( | 370 Status status = web_view->GetFrameByFunction( |
| 371 session->GetCurrentFrameId(), script, args, &frame); | 371 session->GetCurrentFrameId(), script, args, &frame); |
| 372 if (status.IsError()) | 372 if (status.IsError()) |
| 373 return status; | 373 return status; |
| 374 | 374 |
| 375 std::unique_ptr<base::Value> result; | 375 std::unique_ptr<base::Value> result; |
| 376 status = web_view->CallFunction( | 376 status = web_view->CallFunction( |
| 377 session->GetCurrentFrameId(), script, args, &result); | 377 session->GetCurrentFrameId(), script, args, &result); |
| (...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 743 Status ExecuteGetStorageItem(const char* storage, | 743 Status ExecuteGetStorageItem(const char* storage, |
| 744 Session* session, | 744 Session* session, |
| 745 WebView* web_view, | 745 WebView* web_view, |
| 746 const base::DictionaryValue& params, | 746 const base::DictionaryValue& params, |
| 747 std::unique_ptr<base::Value>* value, | 747 std::unique_ptr<base::Value>* value, |
| 748 Timeout* timeout) { | 748 Timeout* timeout) { |
| 749 std::string key; | 749 std::string key; |
| 750 if (!params.GetString("key", &key)) | 750 if (!params.GetString("key", &key)) |
| 751 return Status(kUnknownError, "'key' must be a string"); | 751 return Status(kUnknownError, "'key' must be a string"); |
| 752 base::ListValue args; | 752 base::ListValue args; |
| 753 args.Append(new base::StringValue(key)); | 753 args.AppendString(key); |
| 754 return web_view->CallFunction( | 754 return web_view->CallFunction( |
| 755 session->GetCurrentFrameId(), | 755 session->GetCurrentFrameId(), |
| 756 base::StringPrintf("function(key) { return %s[key]; }", storage), | 756 base::StringPrintf("function(key) { return %s[key]; }", storage), |
| 757 args, | 757 args, |
| 758 value); | 758 value); |
| 759 } | 759 } |
| 760 | 760 |
| 761 Status ExecuteGetStorageKeys(const char* storage, | 761 Status ExecuteGetStorageKeys(const char* storage, |
| 762 Session* session, | 762 Session* session, |
| 763 WebView* web_view, | 763 WebView* web_view, |
| (...skipping 18 matching lines...) Expand all Loading... |
| 782 const base::DictionaryValue& params, | 782 const base::DictionaryValue& params, |
| 783 std::unique_ptr<base::Value>* value, | 783 std::unique_ptr<base::Value>* value, |
| 784 Timeout* timeout) { | 784 Timeout* timeout) { |
| 785 std::string key; | 785 std::string key; |
| 786 if (!params.GetString("key", &key)) | 786 if (!params.GetString("key", &key)) |
| 787 return Status(kUnknownError, "'key' must be a string"); | 787 return Status(kUnknownError, "'key' must be a string"); |
| 788 std::string storage_value; | 788 std::string storage_value; |
| 789 if (!params.GetString("value", &storage_value)) | 789 if (!params.GetString("value", &storage_value)) |
| 790 return Status(kUnknownError, "'value' must be a string"); | 790 return Status(kUnknownError, "'value' must be a string"); |
| 791 base::ListValue args; | 791 base::ListValue args; |
| 792 args.Append(new base::StringValue(key)); | 792 args.AppendString(key); |
| 793 args.Append(new base::StringValue(storage_value)); | 793 args.AppendString(storage_value); |
| 794 return web_view->CallFunction( | 794 return web_view->CallFunction( |
| 795 session->GetCurrentFrameId(), | 795 session->GetCurrentFrameId(), |
| 796 base::StringPrintf("function(key, value) { %s[key] = value; }", storage), | 796 base::StringPrintf("function(key, value) { %s[key] = value; }", storage), |
| 797 args, | 797 args, |
| 798 value); | 798 value); |
| 799 } | 799 } |
| 800 | 800 |
| 801 Status ExecuteRemoveStorageItem(const char* storage, | 801 Status ExecuteRemoveStorageItem(const char* storage, |
| 802 Session* session, | 802 Session* session, |
| 803 WebView* web_view, | 803 WebView* web_view, |
| 804 const base::DictionaryValue& params, | 804 const base::DictionaryValue& params, |
| 805 std::unique_ptr<base::Value>* value, | 805 std::unique_ptr<base::Value>* value, |
| 806 Timeout* timeout) { | 806 Timeout* timeout) { |
| 807 std::string key; | 807 std::string key; |
| 808 if (!params.GetString("key", &key)) | 808 if (!params.GetString("key", &key)) |
| 809 return Status(kUnknownError, "'key' must be a string"); | 809 return Status(kUnknownError, "'key' must be a string"); |
| 810 base::ListValue args; | 810 base::ListValue args; |
| 811 args.Append(new base::StringValue(key)); | 811 args.AppendString(key); |
| 812 return web_view->CallFunction( | 812 return web_view->CallFunction( |
| 813 session->GetCurrentFrameId(), | 813 session->GetCurrentFrameId(), |
| 814 base::StringPrintf("function(key) { %s.removeItem(key) }", storage), | 814 base::StringPrintf("function(key) { %s.removeItem(key) }", storage), |
| 815 args, | 815 args, |
| 816 value); | 816 value); |
| 817 } | 817 } |
| 818 | 818 |
| 819 Status ExecuteClearStorage(const char* storage, | 819 Status ExecuteClearStorage(const char* storage, |
| 820 Session* session, | 820 Session* session, |
| 821 WebView* web_view, | 821 WebView* web_view, |
| (...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1060 return status; | 1060 return status; |
| 1061 } | 1061 } |
| 1062 | 1062 |
| 1063 Status ExecuteTakeHeapSnapshot(Session* session, | 1063 Status ExecuteTakeHeapSnapshot(Session* session, |
| 1064 WebView* web_view, | 1064 WebView* web_view, |
| 1065 const base::DictionaryValue& params, | 1065 const base::DictionaryValue& params, |
| 1066 std::unique_ptr<base::Value>* value, | 1066 std::unique_ptr<base::Value>* value, |
| 1067 Timeout* timeout) { | 1067 Timeout* timeout) { |
| 1068 return web_view->TakeHeapSnapshot(value); | 1068 return web_view->TakeHeapSnapshot(value); |
| 1069 } | 1069 } |
| OLD | NEW |