| Index: chrome/test/webdriver/webdriver_automation.h
|
| diff --git a/chrome/test/webdriver/webdriver_automation.h b/chrome/test/webdriver/webdriver_automation.h
|
| deleted file mode 100644
|
| index 6848ae2cd65337f3567d09a64b0ae23306e8e955..0000000000000000000000000000000000000000
|
| --- a/chrome/test/webdriver/webdriver_automation.h
|
| +++ /dev/null
|
| @@ -1,278 +0,0 @@
|
| -// Copyright (c) 2012 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_WEBDRIVER_WEBDRIVER_AUTOMATION_H_
|
| -#define CHROME_TEST_WEBDRIVER_WEBDRIVER_AUTOMATION_H_
|
| -
|
| -#include <map>
|
| -#include <string>
|
| -#include <vector>
|
| -
|
| -#include "base/command_line.h"
|
| -#include "base/files/file_path.h"
|
| -#include "base/memory/ref_counted.h"
|
| -#include "base/memory/scoped_ptr.h"
|
| -#include "chrome/common/automation_constants.h"
|
| -#include "chrome/test/webdriver/webdriver_logging.h"
|
| -#include "ui/base/keycodes/keyboard_codes.h"
|
| -
|
| -class AutomationId;
|
| -class AutomationProxy;
|
| -class ProxyLauncher;
|
| -struct WebKeyEvent;
|
| -struct WebMouseEvent;
|
| -class WebViewId;
|
| -struct WebViewInfo;
|
| -class WebViewLocator;
|
| -
|
| -namespace base {
|
| -class DictionaryValue;
|
| -class ListValue;
|
| -class Value;
|
| -}
|
| -
|
| -namespace webdriver {
|
| -
|
| -class Error;
|
| -class FramePath;
|
| -class Point;
|
| -class Rect;
|
| -
|
| -// Creates and controls the Chrome instance.
|
| -// This class should be created and accessed on a single thread.
|
| -// Note: All member functions are void because they are invoked
|
| -// by posting a task.
|
| -class Automation {
|
| - public:
|
| - struct BrowserOptions {
|
| - BrowserOptions();
|
| - ~BrowserOptions();
|
| -
|
| - // The command line to use for launching the browser. If no program is
|
| - // specified, the default browser executable will be used.
|
| - CommandLine command;
|
| -
|
| - // The user data directory to be copied and used. If empty, a temporary
|
| - // directory will be used.
|
| - base::FilePath user_data_dir;
|
| -
|
| - // The channel ID of an already running browser to connect to. If empty,
|
| - // the browser will be launched with an anonymous channel.
|
| - std::string channel_id;
|
| -
|
| - // True if the Chrome process should only be terminated if quit is called.
|
| - // If false, Chrome will also be terminated if this process is killed or
|
| - // shutdown.
|
| - bool detach_process;
|
| -
|
| - // True if the browser should ignore certificate related errors.
|
| - bool ignore_certificate_errors;
|
| -
|
| - // Set of switches to be excluded from default list when starting Chrome.
|
| - std::set<std::string> exclude_switches;
|
| - };
|
| -
|
| - explicit Automation(const Logger& logger);
|
| - virtual ~Automation();
|
| -
|
| - // Start the system's default Chrome binary.
|
| - void Init(const BrowserOptions& options, int* build_no, Error** error);
|
| -
|
| - // Terminates this session and disconnects its automation proxy. After
|
| - // invoking this method, the Automation can safely be deleted.
|
| - void Terminate();
|
| -
|
| - // Executes the given |script| in the specified frame of the current
|
| - // tab. |result| will be set to the JSON result. Returns true on success.
|
| - void ExecuteScript(const WebViewId& view_id,
|
| - const FramePath& frame_path,
|
| - const std::string& script,
|
| - std::string* result,
|
| - Error** error);
|
| -
|
| - // Sends a webkit key event to the current browser. Waits until the key has
|
| - // been processed by the web page.
|
| - void SendWebKeyEvent(const WebViewId& view_id,
|
| - const WebKeyEvent& key_event,
|
| - Error** error);
|
| -
|
| - // Sends a web mouse event to the given view. Waits until the event has
|
| - // been processed by the view.
|
| - void SendWebMouseEvent(const WebViewId& view_id,
|
| - const WebMouseEvent& event,
|
| - Error** error);
|
| -
|
| - // Drag and drop the file paths to the given location.
|
| - void DragAndDropFilePaths(
|
| - const WebViewId& view_id,
|
| - const Point& location,
|
| - const std::vector<base::FilePath::StringType>& paths,
|
| - Error** error);
|
| -
|
| - // Captures a snapshot of the tab to the specified path. The PNG will
|
| - // contain the entire page, including what is not in the current view
|
| - // on the screen.
|
| - void CaptureEntirePageAsPNG(
|
| - const WebViewId& view_id, const base::FilePath& path, Error** error);
|
| -
|
| -#if !defined(NO_TCMALLOC) && (defined(OS_LINUX) || defined(OS_CHROMEOS))
|
| - // Dumps a heap profile of the process of the tab.
|
| - void HeapProfilerDump(
|
| - const WebViewId& view_id, const std::string& reason, Error** error);
|
| -#endif // !defined(NO_TCMALLOC) && (defined(OS_LINUX) || defined(OS_CHROMEOS))
|
| -
|
| - void NavigateToURL(
|
| - const WebViewId& view_id, const std::string& url, Error** error);
|
| - void NavigateToURLAsync(
|
| - const WebViewId& view_id, const std::string& url, Error** error);
|
| - void GoForward(const WebViewId& view_id, Error** error);
|
| - void GoBack(const WebViewId& view_id, Error** error);
|
| - void Reload(const WebViewId& view_id, Error** error);
|
| -
|
| - void GetCookies(const std::string& url,
|
| - scoped_ptr<base::ListValue>* cookies,
|
| - Error** error);
|
| - void DeleteCookie(const std::string& url,
|
| - const std::string& cookie_name,
|
| - Error** error);
|
| - void SetCookie(const std::string& url,
|
| - base::DictionaryValue* cookie_dict,
|
| - Error** error);
|
| -
|
| - // TODO(kkania): All of these mouse commands are deprecated and should be
|
| - // removed when chrome build 1002 is no longer supported.
|
| - // Use SendWebMouseEvent instead.
|
| - void MouseMoveDeprecated(const WebViewId& view_id,
|
| - const Point& p,
|
| - Error** error);
|
| - void MouseClickDeprecated(const WebViewId& view_id,
|
| - const Point& p,
|
| - automation::MouseButton button,
|
| - Error** error);
|
| - void MouseDragDeprecated(const WebViewId& view_id,
|
| - const Point& start,
|
| - const Point& end,
|
| - Error** error);
|
| - void MouseButtonDownDeprecated(const WebViewId& view_id,
|
| - const Point& p,
|
| - Error** error);
|
| - void MouseButtonUpDeprecated(const WebViewId& view_id,
|
| - const Point& p,
|
| - Error** error);
|
| - void MouseDoubleClickDeprecated(const WebViewId& view_id,
|
| - const Point& p,
|
| - Error** error);
|
| -
|
| - // Get info for all views currently open.
|
| - void GetViews(std::vector<WebViewInfo>* views, Error** error);
|
| -
|
| - // Check if the given view exists currently.
|
| - void DoesViewExist(const WebViewId& view_id, bool* does_exist, Error** error);
|
| -
|
| - // Closes the given view.
|
| - void CloseView(const WebViewId& view_id, Error** error);
|
| -
|
| - // Sets the bounds for the given view. The position should be in screen
|
| - // coordinates, while the size should be the desired size of the view.
|
| - void SetViewBounds(const WebViewId& view_id,
|
| - const Rect& bounds,
|
| - Error** error);
|
| -
|
| - // Maximizes the given view.
|
| - void MaximizeView(const WebViewId& view_id, Error** error);
|
| -
|
| - // Gets the active JavaScript modal dialog's message.
|
| - void GetAppModalDialogMessage(std::string* message, Error** error);
|
| -
|
| - // Accepts or dismisses the active JavaScript modal dialog.
|
| - void AcceptOrDismissAppModalDialog(bool accept, Error** error);
|
| -
|
| - // Accepts an active prompt JavaScript modal dialog, using the given
|
| - // prompt text as the result of the prompt.
|
| - void AcceptPromptAppModalDialog(const std::string& prompt_text,
|
| - Error** error);
|
| -
|
| - // Gets the version of the runing browser.
|
| - void GetBrowserVersion(std::string* version);
|
| -
|
| - // Gets the ChromeDriver automation version supported by the automation
|
| - // server.
|
| - void GetChromeDriverAutomationVersion(int* version, Error** error);
|
| -
|
| - // Waits for all views to stop loading.
|
| - void WaitForAllViewsToStopLoading(Error** error);
|
| -
|
| - // Install a packed or unpacked extension. If the path ends with '.crx',
|
| - // the extension is assumed to be packed.
|
| - void InstallExtension(const base::FilePath& path, std::string* extension_id,
|
| - Error** error);
|
| -
|
| - // Gets a list of dictionary information about all installed extensions.
|
| - void GetExtensionsInfo(base::ListValue* extensions_list, Error** error);
|
| -
|
| - // Gets a list of dictionary information about all installed extensions.
|
| - void IsPageActionVisible(const WebViewId& tab_id,
|
| - const std::string& extension_id,
|
| - bool* is_visible,
|
| - Error** error);
|
| -
|
| - // Sets whether the extension is enabled or not.
|
| - void SetExtensionState(const std::string& extension_id,
|
| - bool enable,
|
| - Error** error);
|
| -
|
| - // Clicks the extension action button. If |browser_action| is false, the
|
| - // page action will be clicked.
|
| - void ClickExtensionButton(const std::string& extension_id,
|
| - bool browser_action,
|
| - Error** error);
|
| -
|
| - // Uninstalls the given extension.
|
| - void UninstallExtension(const std::string& extension_id, Error** error);
|
| -
|
| - // Set a local state preference, which is not associated with any profile.
|
| - // Ownership of |value| is taken by this function.
|
| - void SetLocalStatePreference(const std::string& pref,
|
| - base::Value* value,
|
| - Error** error);
|
| -
|
| - // Set a user preference, which is associated with the current profile.
|
| - // Ownership of |value| is taken by this fucntion.
|
| - void SetPreference(const std::string& pref,
|
| - base::Value* value,
|
| - Error** error);
|
| -
|
| - // Gets the current geolocation.
|
| - void GetGeolocation(scoped_ptr<base::DictionaryValue>* geolocation,
|
| - Error** error);
|
| -
|
| - // Overrides the current geolocation.
|
| - void OverrideGeolocation(const base::DictionaryValue* geolocation,
|
| - Error** error);
|
| -
|
| - private:
|
| - AutomationProxy* automation() const;
|
| - Error* ConvertViewIdToLocator(const WebViewId& view_id,
|
| - WebViewLocator* view_locator);
|
| - Error* DetermineBuildNumber();
|
| - Error* CheckVersion(int min_required_build_no,
|
| - const std::string& error_msg);
|
| - Error* CheckAlertsSupported();
|
| - Error* CheckAdvancedInteractionsSupported();
|
| - Error* CheckNewExtensionInterfaceSupported();
|
| - Error* CheckGeolocationSupported();
|
| - Error* CheckMaximizeSupported();
|
| - Error* IsNewMouseApiSupported(bool* supports_new_api);
|
| -
|
| - const Logger& logger_;
|
| - scoped_ptr<ProxyLauncher> launcher_;
|
| - int build_no_;
|
| - scoped_ptr<base::DictionaryValue> geolocation_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(Automation);
|
| -};
|
| -
|
| -} // namespace webdriver
|
| -
|
| -#endif // CHROME_TEST_WEBDRIVER_WEBDRIVER_AUTOMATION_H_
|
|
|