Home | History | Annotate | Download | only in commands
      1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef CHROME_TEST_WEBDRIVER_COMMANDS_EXECUTE_ASYNC_SCRIPT_COMMAND_H_
      6 #define CHROME_TEST_WEBDRIVER_COMMANDS_EXECUTE_ASYNC_SCRIPT_COMMAND_H_
      7 
      8 #include <string>
      9 #include <vector>
     10 
     11 #include "chrome/test/webdriver/commands/webdriver_command.h"
     12 
     13 namespace base {
     14 class DictionaryValue;
     15 }
     16 
     17 namespace webdriver {
     18 
     19 class Response;
     20 
     21 // Inject a snippet of javascript into the page and return its result.
     22 // WebElements that should be passed to the script as an argument should be
     23 // specified in the arguments array as WebElement JSON arguments. Likewise,
     24 // any WebElements in the script result will be returned to the client as
     25 // WebElement JSON objects.
     26 class ExecuteAsyncScriptCommand : public WebDriverCommand {
     27  public:
     28   ExecuteAsyncScriptCommand(const std::vector<std::string>& path_segments,
     29                             const base::DictionaryValue* const parameters);
     30   virtual ~ExecuteAsyncScriptCommand();
     31 
     32   virtual bool DoesPost() OVERRIDE;
     33   virtual void ExecutePost(Response* const response) OVERRIDE;
     34 
     35  private:
     36   DISALLOW_COPY_AND_ASSIGN(ExecuteAsyncScriptCommand);
     37 };
     38 
     39 }  // namespace webdriver
     40 
     41 #endif  // CHROME_TEST_WEBDRIVER_COMMANDS_EXECUTE_ASYNC_SCRIPT_COMMAND_H_
     42