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

Unified Diff: chrome/test/chromedriver/run_py_tests.py

Issue 22263003: [chromedriver] Implement touch down, up, and move commands. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: coordinate parameters are now absolute Created 7 years, 4 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/run_py_tests.py
diff --git a/chrome/test/chromedriver/run_py_tests.py b/chrome/test/chromedriver/run_py_tests.py
index 35d6c9d280a68d9c9a3e264d1dc346deee1fadcc..b641dfdb95d9c1da8563dbcfdfd30cb255104d37 100755
--- a/chrome/test/chromedriver/run_py_tests.py
+++ b/chrome/test/chromedriver/run_py_tests.py
@@ -66,8 +66,10 @@ _DESKTOP_NEGATIVE_FILTER['HEAD'] = (
# This test is flaky since it uses setTimeout.
# Re-enable once crbug.com/177511 is fixed and we can remove setTimeout.
'ChromeDriverTest.testAlert',
- # Desktop doesn't support TAP.
+ # Desktop doesn't support touch (without --touch-events).
frankf 2013/08/14 01:09:10 Do we want to enable this flag?
craigdh 2013/08/14 22:01:57 That's a better question for ken/chris.
'ChromeDriverTest.testSingleTapElement',
+ 'ChromeDriverTest.testTouchDownUpElement',
+ 'ChromeDriverTest.testTouchMovedElement',
]
)
@@ -353,7 +355,6 @@ class ChromeDriverTest(ChromeDriverBaseTest):
'document.body.innerHTML = "<div>old</div>";'
'var div = document.getElementsByTagName("div")[0];'
'div.addEventListener("click", function() {'
- ' var div = document.getElementsByTagName("div")[0];'
' div.innerHTML="new<br>";'
'});'
'return div;')
@@ -364,14 +365,40 @@ class ChromeDriverTest(ChromeDriverBaseTest):
div = self._driver.ExecuteScript(
'document.body.innerHTML = "<div>old</div>";'
'var div = document.getElementsByTagName("div")[0];'
- 'div.addEventListener("click", function() {'
- ' var div = document.getElementsByTagName("div")[0];'
+ 'div.addEventListener("touchend", function() {'
' div.innerHTML="new<br>";'
'});'
'return div;')
div.SingleTap()
self.assertEquals(1, len(self._driver.FindElements('tag name', 'br')))
+ def testTouchDownUpElement(self):
+ div = self._driver.ExecuteScript(
+ 'document.body.innerHTML = "<div>old</div>";'
+ 'var div = document.getElementsByTagName("div")[0];'
+ 'div.addEventListener("touchend", function() {'
+ ' div.innerHTML="new<br>";'
+ '});'
+ 'return div;')
+ loc = div.GetLocation()
+ self._driver.TouchDown(loc['x'], loc['y'])
+ self._driver.TouchUp(loc['x'], loc['y'])
+ self.assertEquals(1, len(self._driver.FindElements('tag name', 'br')))
+
+ def testTouchMovedElement(self):
+ div = self._driver.ExecuteScript(
+ 'document.body.innerHTML = "<div>old</div>";'
+ 'var div = document.getElementsByTagName("div")[0];'
+ 'div.addEventListener("touchmove", function() {'
+ ' div.innerHTML="new<br>";'
+ '});'
+ 'return div;')
+ loc = div.GetLocation()
+ self._driver.TouchDown(loc['x'], loc['y'])
+ self._driver.TouchMove(loc['x'] + 1, loc['y'] + 1)
+ self._driver.TouchUp(loc['x'] + 1, loc['y'] + 1)
+ self.assertEquals(1, len(self._driver.FindElements('tag name', 'br')))
+
def testClickElementInSubFrame(self):
self._driver.Load(self.GetHttpUrlForFile('/chromedriver/frame_test.html'))
frame = self._driver.FindElement('tag name', 'iframe')

Powered by Google App Engine
This is Rietveld 408576698