Index: chrome/test/chromedriver/run_py_tests.py |
diff --git a/chrome/test/chromedriver/run_py_tests.py b/chrome/test/chromedriver/run_py_tests.py |
index 88ac936c5005e2ff57389ed42ec70bf1def8f06f..c45dc6192bec0a33e1b7599158f08d0d3eec767e 100755 |
--- a/chrome/test/chromedriver/run_py_tests.py |
+++ b/chrome/test/chromedriver/run_py_tests.py |
@@ -9,6 +9,7 @@ import ctypes |
import optparse |
import os |
import sys |
+import time |
kkania
2013/02/06 23:45:26
x
craigdh
2013/02/07 00:05:37
Done.
|
import unittest |
import chromedriver |
@@ -84,6 +85,20 @@ class ChromeDriverTest(unittest.TestCase): |
self._driver.SwitchToFrameByIndex(0) |
self.assertTrue(self._driver.ExecuteScript('return window.top != window')) |
+ def testExecuteInRemovedFrame(self): |
+ self._driver.ExecuteScript( |
+ 'var frame = document.createElement("iframe");' |
+ 'frame.id="id";' |
+ 'frame.name="name";' |
+ 'document.body.appendChild(frame);' |
+ 'window.addEventListener("message",' |
+ ' function(event) { document.body.removeChild(frame); });') |
+ self.assertTrue(self._driver.ExecuteScript('return window.top == window')) |
+ self._driver.SwitchToFrame('id') |
+ self.assertTrue(self._driver.ExecuteScript('return window.top != window')) |
+ self._driver.ExecuteScript('parent.postMessage("remove", "*");') |
+ self.assertTrue(self._driver.ExecuteScript('return window.top == window')) |
+ |
def testGetTitle(self): |
script = 'document.title = "title"; return 1;' |
self.assertEquals(1, self._driver.ExecuteScript(script)) |