OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 #ifndef CHROME_TEST_WEBDRIVER_COMMANDS_EXECUTE_COMMAND_H_ | 5 #ifndef CHROME_TEST_WEBDRIVER_COMMANDS_EXECUTE_COMMAND_H_ |
6 #define CHROME_TEST_WEBDRIVER_COMMANDS_EXECUTE_COMMAND_H_ | 6 #define CHROME_TEST_WEBDRIVER_COMMANDS_EXECUTE_COMMAND_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "chrome/test/webdriver/commands/webdriver_command.h" | 11 #include "chrome/test/webdriver/commands/webdriver_command.h" |
12 | 12 |
| 13 class ListValue; |
| 14 |
13 namespace webdriver { | 15 namespace webdriver { |
14 | 16 |
15 // Inject a snippet of javascript into the page and return its result. | 17 // Inject a snippet of javascript into the page and return its result. |
16 // WebElements that should be passed to the script as an argument should be | 18 // WebElements that should be passed to the script as an argument should be |
17 // specified in the arguments array as WebElement JSON arguments. Likewise, | 19 // specified in the arguments array as WebElement JSON arguments. Likewise, |
18 // any WebElements in the script result will be returned to the client as | 20 // any WebElements in the script result will be returned to the client as |
19 // WebElement JSON objects. See: | 21 // WebElement JSON objects. See: |
20 // http://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/e
xecute | 22 // http://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/e
xecute |
21 class ExecuteCommand : public WebDriverCommand { | 23 class ExecuteCommand : public WebDriverCommand { |
22 public: | 24 public: |
23 ExecuteCommand(const std::vector<std::string>& path_segments, | 25 ExecuteCommand(const std::vector<std::string>& path_segments, |
24 const DictionaryValue* const parameters); | 26 const DictionaryValue* const parameters); |
25 virtual ~ExecuteCommand(); | 27 virtual ~ExecuteCommand(); |
26 | 28 |
27 virtual bool Init(Response* const response); | 29 virtual bool Init(Response* const response); |
28 | 30 |
29 virtual bool DoesPost(); | 31 virtual bool DoesPost(); |
30 virtual void ExecutePost(Response* const response); | 32 virtual void ExecutePost(Response* const response); |
31 | 33 |
32 private: | 34 private: |
33 virtual bool RequiresValidTab(); | 35 virtual bool RequiresValidTab(); |
34 | 36 |
35 std::string script_; | 37 std::string script_; |
36 bool has_args_; | 38 ListValue* args_; // Value is owned by |Command::parameters_|. |
37 std::string args_; | |
38 | 39 |
39 DISALLOW_COPY_AND_ASSIGN(ExecuteCommand); | 40 DISALLOW_COPY_AND_ASSIGN(ExecuteCommand); |
40 }; | 41 }; |
41 | 42 |
42 } // namespace webdriver | 43 } // namespace webdriver |
43 | 44 |
44 #endif // CHROME_TEST_WEBDRIVER_COMMANDS_EXECUTE_COMMAND_H_ | 45 #endif // CHROME_TEST_WEBDRIVER_COMMANDS_EXECUTE_COMMAND_H_ |
45 | 46 |
OLD | NEW |