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

Unified Diff: content/public/test/browser_test_utils.h

Issue 10795090: Move ExecuteJavaScript functions from ui_test_utils.h to browser_test_utils.h so they can be reused… (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 5 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
« no previous file with comments | « content/browser/session_history_browsertest.cc ('k') | content/test/browser_test_utils.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/public/test/browser_test_utils.h
===================================================================
--- content/public/test/browser_test_utils.h (revision 148111)
+++ content/public/test/browser_test_utils.h (working copy)
@@ -35,6 +35,7 @@
namespace content {
class MessageLoopRunner;
+class RenderViewHost;
class WebContents;
// Simulates clicking at the center of the given tab asynchronously.
@@ -53,6 +54,34 @@
bool alt,
bool command);
+// Executes the passed |script| in the frame pointed to by |frame_xpath| (use
+// empty string for main frame). The |script| should not invoke
+// domAutomationController.send(); otherwise, your test will hang or be flaky.
+// If you want to extract a result, use one of the below functions.
+// Returns true on success.
+bool ExecuteJavaScript(RenderViewHost* render_view_host,
+ const std::wstring& frame_xpath,
+ const std::wstring& script) WARN_UNUSED_RESULT;
+
+// The following methods executes the passed |script| in the frame pointed to by
+// |frame_xpath| (use empty string for main frame) and sets |result| to the
+// value returned by the script evaluation.
+// They return true on success, false if the script evaluation failed or did not
+// evaluate to the expected type.
+bool ExecuteJavaScriptAndExtractInt(RenderViewHost* render_view_host,
+ const std::wstring& frame_xpath,
+ const std::wstring& script,
+ int* result) WARN_UNUSED_RESULT;
+bool ExecuteJavaScriptAndExtractBool(RenderViewHost* render_view_host,
+ const std::wstring& frame_xpath,
+ const std::wstring& script,
+ bool* result) WARN_UNUSED_RESULT;
+bool ExecuteJavaScriptAndExtractString(
+ RenderViewHost* render_view_host,
+ const std::wstring& frame_xpath,
+ const std::wstring& script,
+ std::string* result) WARN_UNUSED_RESULT;
+
// Watches title changes on a tab, blocking until an expected title is set.
class TitleWatcher : public NotificationObserver {
public:
« no previous file with comments | « content/browser/session_history_browsertest.cc ('k') | content/test/browser_test_utils.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698