Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4542)

Unified Diff: chrome/test/chromedriver/window_commands.h

Issue 1669453002: [chromedriver] Apply page load timeout to slow cross-process navigations (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/test/chromedriver/window_commands.h
diff --git a/chrome/test/chromedriver/window_commands.h b/chrome/test/chromedriver/window_commands.h
index fa36e2b1cd0cf68f083544b6ec09ad62c164b652..a30c3f34dd1859a22bc76e31ead644289b80a65d 100644
--- a/chrome/test/chromedriver/window_commands.h
+++ b/chrome/test/chromedriver/window_commands.h
@@ -17,13 +17,15 @@ class Value;
struct Session;
class Status;
+class Timeout;
class WebView;
typedef base::Callback<Status(
Session* session,
WebView* web_view,
const base::DictionaryValue&,
- scoped_ptr<base::Value>*)> WindowCommand;
+ scoped_ptr<base::Value>*,
+ Timeout*)> WindowCommand;
// Execute a Window Command on the target window.
Status ExecuteWindowCommand(
@@ -37,49 +39,56 @@ Status ExecuteGet(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Evaluates a given synchronous script with arguments.
Status ExecuteExecuteScript(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Evaluates a given asynchronous script with arguments.
Status ExecuteExecuteAsyncScript(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Changes the targeted frame for the given session.
Status ExecuteSwitchToFrame(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Change focus to the parent frame.
Status ExecuteSwitchToParentFrame(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Get the current page title.
Status ExecuteGetTitle(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Get the current page source.
Status ExecuteGetPageSource(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Search for an element on the page, starting from the document root.
Status ExecuteFindElement(
@@ -87,7 +96,8 @@ Status ExecuteFindElement(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Search for multiple elements on the page, starting from the document root.
Status ExecuteFindElements(
@@ -95,185 +105,212 @@ Status ExecuteFindElements(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Get the current page url.
Status ExecuteGetCurrentUrl(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Navigate backward in the browser history.
Status ExecuteGoBack(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Navigate forward in the browser history.
Status ExecuteGoForward(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Refresh the current page.
Status ExecuteRefresh(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Move the mouse by an offset of the element if specified .
Status ExecuteMouseMoveTo(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Click a mouse button at the coordinates set by the last moveto.
Status ExecuteMouseClick(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Click and hold a mouse button at the coordinates set by the last moveto.
Status ExecuteMouseButtonDown(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Releases the mouse button previously held (where the mouse is currently at).
Status ExecuteMouseButtonUp(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Double-clicks at the current mouse coordinates (set by last moveto).
Status ExecuteMouseDoubleClick(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Touch press at a given coordinate.
Status ExecuteTouchDown(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Touch release at a given coordinate.
Status ExecuteTouchUp(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Touch move at a given coordinate.
Status ExecuteTouchMove(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Do a swipe (scroll) gesture beginning at the element.
Status ExecuteTouchScroll(
Session *session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteTouchPinch(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteGetActiveElement(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Send a sequence of key strokes to the active element.
Status ExecuteSendKeysToActiveElement(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Gets the status of the application cache (window.applicationCache.status).
Status ExecuteGetAppCacheStatus(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteIsBrowserOnline(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteGetStorageItem(
const char* storage,
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteGetStorageKeys(
const char* storage,
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteSetStorageItem(
const char* storage,
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteRemoveStorageItem(
const char* storage,
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteClearStorage(
const char* storage,
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteGetStorageSize(
const char* storage,
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteScreenshot(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Retrieve all cookies visible to the current page.
Status ExecuteGetCookies(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Set a cookie. If the cookie path is not specified, it should be set to "/".
// If the domain is omitted, it should default to the current page's domain.
@@ -281,44 +318,51 @@ Status ExecuteAddCookie(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Delete the cookie with the given name if it exists in the current page.
Status ExecuteDeleteCookie(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
// Delete all cookies visible to the current page.
Status ExecuteDeleteAllCookies(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteSetLocation(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteSetNetworkConditions(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteDeleteNetworkConditions(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
Status ExecuteTakeHeapSnapshot(
Session* session,
WebView* web_view,
const base::DictionaryValue& params,
- scoped_ptr<base::Value>* value);
+ scoped_ptr<base::Value>* value,
+ Timeout* timeout);
#endif // CHROME_TEST_CHROMEDRIVER_WINDOW_COMMANDS_H_

Powered by Google App Engine
This is Rietveld 408576698