summaryrefslogtreecommitdiffstats
path: root/chrome/test/functional/execute_javascript.py
diff options
context:
space:
mode:
authordpranke@chromium.org <dpranke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-05 01:01:50 +0000
committerdpranke@chromium.org <dpranke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-05 01:01:50 +0000
commit7ad1cac85e099546dc5ff4424d5c37cbc0fe473e (patch)
tree9b0336a6d292dc4d1d59619c7d6dcb396691b825 /chrome/test/functional/execute_javascript.py
parent0661468753c74324ba7e9373805be4ef3849e151 (diff)
downloadchromium_src-7ad1cac85e099546dc5ff4424d5c37cbc0fe473e.zip
chromium_src-7ad1cac85e099546dc5ff4424d5c37cbc0fe473e.tar.gz
chromium_src-7ad1cac85e099546dc5ff4424d5c37cbc0fe473e.tar.bz2
Add ExecuteJavascript() method to PyUITestBase
This allows us to evaluate JavaScript expressions in the renderer and read values out of the DOM of the page, which is useful for testing things like the PasswordManager. R=nirimesh@chromium.org, jrg@chromium.org, alyssad@chromium.org TEST=chrome/test/functional/test_execute_javascript.py BUG=none Review URL: http://codereview.chromium.org/3012039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55013 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/test/functional/execute_javascript.py')
-rw-r--r--chrome/test/functional/execute_javascript.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/chrome/test/functional/execute_javascript.py b/chrome/test/functional/execute_javascript.py
new file mode 100644
index 0000000..f999f3a
--- /dev/null
+++ b/chrome/test/functional/execute_javascript.py
@@ -0,0 +1,37 @@
+#!/usr/bin/python
+# Copyright (c) 2010 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.
+
+import os
+import sys
+import unittest
+
+import pyauto_functional
+from pyauto import PyUITest
+
+
+class ExecuteJavascriptTest(PyUITest):
+
+ def testExecuteJavascript(self):
+ path = os.path.join(self.DataDir(), "frame_dom_access",
+ "frame_dom_access.html")
+
+ self.NavigateToURL(self.GetFileURLForPath(path))
+
+ v = self.ExecuteJavascript("window.domAutomationController.send(" +
+ "document.getElementById('myinput').nodeName)")
+ self.assertEqual(v, "INPUT")
+
+ def testGetDOMValue(self):
+ path = os.path.join(self.DataDir(), "frame_dom_access",
+ "frame_dom_access.html")
+
+ self.NavigateToURL(self.GetFileURLForPath(path))
+
+ v = self.GetDOMValue("document.getElementById('myinput').nodeName")
+ self.assertEqual(v, "INPUT")
+
+
+if __name__ == '__main__':
+ pyauto_functional.Main()