| // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_TEST_CHROMEDRIVER_SESSION_COMMANDS_H_ |
| #define CHROME_TEST_CHROMEDRIVER_SESSION_COMMANDS_H_ |
| |
| #include <string> |
| |
| #include "base/callback_forward.h" |
| #include "base/memory/scoped_ptr.h" |
| #include "chrome/test/chromedriver/command.h" |
| #include "chrome/test/chromedriver/net/sync_websocket_factory.h" |
| |
| namespace base { |
| class DictionaryValue; |
| class Value; |
| } |
| |
| class DeviceManager; |
| class PortManager; |
| class PortServer; |
| struct Session; |
| class Status; |
| class URLRequestContextGetter; |
| |
| struct InitSessionParams { |
| InitSessionParams(scoped_refptr<URLRequestContextGetter> context_getter, |
| const SyncWebSocketFactory& socket_factory, |
| DeviceManager* device_manager, |
| PortServer* port_server, |
| PortManager* port_manager); |
| ~InitSessionParams(); |
| |
| scoped_refptr<URLRequestContextGetter> context_getter; |
| SyncWebSocketFactory socket_factory; |
| DeviceManager* device_manager; |
| PortServer* port_server; |
| PortManager* port_manager; |
| }; |
| |
| // Initializes a session. |
| Status ExecuteInitSession( |
| const InitSessionParams& bound_params, |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| // Quits a session. |
| Status ExecuteQuit( |
| bool allow_detach, |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| // Gets the capabilities of a particular session. |
| Status ExecuteGetSessionCapabilities( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| // Retrieve the handle of the target window. |
| Status ExecuteGetCurrentWindowHandle( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| // Close the target window. |
| Status ExecuteClose( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| // Retrieve the list of all window handles available to the session. |
| Status ExecuteGetWindowHandles( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| // Change target window to another. The window to target at may be specified by |
| // its server assigned window handle, or by the value of its name attribute. |
| Status ExecuteSwitchToWindow( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| // Configure the amount of time that a particular type of operation can execute |
| // for before they are aborted and a timeout error is returned to the client. |
| Status ExecuteSetTimeout( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| // Set the timeout for asynchronous scripts. |
| Status ExecuteSetScriptTimeout( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| // Set the amount of time the driver should wait when searching for elements. |
| Status ExecuteImplicitlyWait( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteIsLoading( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteLaunchApp( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteGetLocation( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteGetWindowPosition( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteSetWindowPosition( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteGetWindowSize( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteSetWindowSize( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteMaximizeWindow( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteGetAvailableLogTypes( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteGetLog( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteUploadFile( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteIsAutoReporting( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| Status ExecuteSetAutoReporting( |
| Session* session, |
| const base::DictionaryValue& params, |
| scoped_ptr<base::Value>* value); |
| |
| #endif // CHROME_TEST_CHROMEDRIVER_SESSION_COMMANDS_H_ |