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

Side by Side 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: 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """End to end tests for ChromeDriver.""" 6 """End to end tests for ChromeDriver."""
7 7
8 import base64 8 import base64
9 import optparse 9 import optparse
10 import os 10 import os
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
61 _DESKTOP_NEGATIVE_FILTER = {} 61 _DESKTOP_NEGATIVE_FILTER = {}
62 _DESKTOP_NEGATIVE_FILTER['HEAD'] = ( 62 _DESKTOP_NEGATIVE_FILTER['HEAD'] = (
63 _DESKTOP_OS_SPECIFIC_FILTER + [ 63 _DESKTOP_OS_SPECIFIC_FILTER + [
64 # https://code.google.com/p/chromedriver/issues/detail?id=213 64 # https://code.google.com/p/chromedriver/issues/detail?id=213
65 'ChromeDriverTest.testClickElementInSubFrame', 65 'ChromeDriverTest.testClickElementInSubFrame',
66 # This test is flaky since it uses setTimeout. 66 # This test is flaky since it uses setTimeout.
67 # Re-enable once crbug.com/177511 is fixed and we can remove setTimeout. 67 # Re-enable once crbug.com/177511 is fixed and we can remove setTimeout.
68 'ChromeDriverTest.testAlert', 68 'ChromeDriverTest.testAlert',
69 # Desktop doesn't support TAP. 69 # Desktop doesn't support TAP.
70 'ChromeDriverTest.testSingleTapElement', 70 'ChromeDriverTest.testSingleTapElement',
71 'ChromeDriverTest.testTouchDownUpElement',
71 ] 72 ]
72 ) 73 )
73 74
74 75
75 def _GetDesktopNegativeFilter(version_name): 76 def _GetDesktopNegativeFilter(version_name):
76 if version_name in _DESKTOP_NEGATIVE_FILTER: 77 if version_name in _DESKTOP_NEGATIVE_FILTER:
77 return _DESKTOP_NEGATIVE_FILTER[version_name] 78 return _DESKTOP_NEGATIVE_FILTER[version_name]
78 return _DESKTOP_NEGATIVE_FILTER['HEAD'] 79 return _DESKTOP_NEGATIVE_FILTER['HEAD']
79 80
80 81
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after
357 ' div.innerHTML="new<br>";' 358 ' div.innerHTML="new<br>";'
358 '});' 359 '});'
359 'return div;') 360 'return div;')
360 div.Click() 361 div.Click()
361 self.assertEquals(1, len(self._driver.FindElements('tag name', 'br'))) 362 self.assertEquals(1, len(self._driver.FindElements('tag name', 'br')))
362 363
363 def testSingleTapElement(self): 364 def testSingleTapElement(self):
364 div = self._driver.ExecuteScript( 365 div = self._driver.ExecuteScript(
365 'document.body.innerHTML = "<div>old</div>";' 366 'document.body.innerHTML = "<div>old</div>";'
366 'var div = document.getElementsByTagName("div")[0];' 367 'var div = document.getElementsByTagName("div")[0];'
367 'div.addEventListener("click", function() {' 368 'div.addEventListener("touchend", function() {'
368 ' var div = document.getElementsByTagName("div")[0];' 369 ' var div = document.getElementsByTagName("div")[0];'
369 ' div.innerHTML="new<br>";' 370 ' div.innerHTML="new<br>";'
370 '});' 371 '});'
371 'return div;') 372 'return div;')
372 div.SingleTap() 373 div.SingleTap()
373 self.assertEquals(1, len(self._driver.FindElements('tag name', 'br'))) 374 self.assertEquals(1, len(self._driver.FindElements('tag name', 'br')))
374 375
376 def testTouchDownUpElement(self):
frankf 2013/08/06 01:28:21 What about move?
craigdh 2013/08/06 22:03:10 Done.
377 div = self._driver.ExecuteScript(
378 'document.body.innerHTML = "<div>old</div>";'
379 'var div = document.getElementsByTagName("div")[0];'
380 'div.addEventListener("touchend", function() {'
381 ' var div = document.getElementsByTagName("div")[0];'
frankf 2013/08/06 01:28:21 why recompute?
craigdh 2013/08/06 22:03:10 Hmm, not sure. The javascript was mostly copied fr
382 ' div.innerHTML="new<br>";'
383 '});'
384 'return div;')
385 loc = div.GetLocation()
386 self._driver.TouchDown(loc['x'], loc['y'])
387 self._driver.TouchUp(loc['x'], loc['y'])
388 self.assertEquals(1, len(self._driver.FindElements('tag name', 'br')))
389
375 def testClickElementInSubFrame(self): 390 def testClickElementInSubFrame(self):
376 self._driver.Load(self.GetHttpUrlForFile('/chromedriver/frame_test.html')) 391 self._driver.Load(self.GetHttpUrlForFile('/chromedriver/frame_test.html'))
377 frame = self._driver.FindElement('tag name', 'iframe') 392 frame = self._driver.FindElement('tag name', 'iframe')
378 self._driver.SwitchToFrame(frame) 393 self._driver.SwitchToFrame(frame)
379 # Test clicking element in the sub frame. 394 # Test clicking element in the sub frame.
380 self.testClickElement() 395 self.testClickElement()
381 396
382 def testClearElement(self): 397 def testClearElement(self):
383 text = self._driver.ExecuteScript( 398 text = self._driver.ExecuteScript(
384 'document.body.innerHTML = \'<input type="text" value="abc">\';' 399 'document.body.innerHTML = \'<input type="text" value="abc">\';'
(...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after
741 negative_filter = _GetDesktopNegativeFilter(options.chrome_version) 756 negative_filter = _GetDesktopNegativeFilter(options.chrome_version)
742 options.filter = '*-' + ':__main__.'.join([''] + negative_filter) 757 options.filter = '*-' + ':__main__.'.join([''] + negative_filter)
743 758
744 all_tests_suite = unittest.defaultTestLoader.loadTestsFromModule( 759 all_tests_suite = unittest.defaultTestLoader.loadTestsFromModule(
745 sys.modules[__name__]) 760 sys.modules[__name__])
746 tests = unittest_util.FilterTestSuite(all_tests_suite, options.filter) 761 tests = unittest_util.FilterTestSuite(all_tests_suite, options.filter)
747 ChromeDriverTest.GlobalSetUp() 762 ChromeDriverTest.GlobalSetUp()
748 result = unittest.TextTestRunner(stream=sys.stdout, verbosity=2).run(tests) 763 result = unittest.TextTestRunner(stream=sys.stdout, verbosity=2).run(tests)
749 ChromeDriverTest.GlobalTearDown() 764 ChromeDriverTest.GlobalTearDown()
750 sys.exit(len(result.failures) + len(result.errors)) 765 sys.exit(len(result.failures) + len(result.errors))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698