mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-10 20:05:49 +00:00
Bug 867573 - fix broken MarionetteTouchMixin, add test, r=dburns
This commit is contained in:
parent
d5d3e207b9
commit
75a00a9120
@ -5,7 +5,7 @@
|
||||
import os
|
||||
from errors import ElementNotVisibleException
|
||||
from marionette import Actions
|
||||
from gestures import pinch
|
||||
import gestures
|
||||
"""
|
||||
Adds touch support in Marionette
|
||||
"""
|
||||
@ -36,9 +36,9 @@ class MarionetteTouchMixin(object):
|
||||
|
||||
def flick(self, element, x1, y1, x2, y2, duration=200):
|
||||
self.check_element(element)
|
||||
action = Actions(self.marionette)
|
||||
action = Actions(self)
|
||||
action.flick(element, x1, y1, x2, y2, duration).perform()
|
||||
|
||||
def pinch(self, element, x1, y1, x2, y2, x3, y3, x4, y4, duration = 200):
|
||||
self.check_element(element)
|
||||
pinch(element, x1, y1, x2, y2, x3, y3, x4, y4, duration)
|
||||
gestures.pinch(self, element, x1, y1, x2, y2, x3, y3, x4, y4, duration)
|
||||
|
@ -0,0 +1,40 @@
|
||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
import time
|
||||
from marionette_test import MarionetteTestCase
|
||||
from marionette import Marionette
|
||||
from marionette_touch import MarionetteTouchMixin
|
||||
|
||||
class TestTouchMixin(MarionetteTestCase):
|
||||
|
||||
def setUp(self):
|
||||
super(TestTouchMixin, self).setUp()
|
||||
self.marionette.__class__ = type('Marionette', (Marionette, MarionetteTouchMixin), {})
|
||||
self.marionette.setup_touch()
|
||||
|
||||
def test_tap(self):
|
||||
testTouch = self.marionette.absolute_url("testAction.html")
|
||||
self.marionette.navigate(testTouch)
|
||||
button = self.marionette.find_element("id", "mozLinkCopy")
|
||||
self.marionette.tap(button)
|
||||
time.sleep(10)
|
||||
self.assertEqual("End", self.marionette.execute_script("return document.getElementById('mozLinkCopy').innerHTML;"))
|
||||
|
||||
def test_dbtap(self):
|
||||
testTouch = self.marionette.absolute_url("testAction.html")
|
||||
self.marionette.navigate(testTouch)
|
||||
button = self.marionette.find_element("id", "mozMouse")
|
||||
self.marionette.double_tap(button)
|
||||
time.sleep(10)
|
||||
self.assertEqual("TouchEnd2", self.marionette.execute_script("return document.getElementById('mozMouse').innerHTML;"))
|
||||
|
||||
def test_flick(self):
|
||||
testTouch = self.marionette.absolute_url("testAction.html")
|
||||
self.marionette.navigate(testTouch)
|
||||
button = self.marionette.find_element("id", "mozLinkScrollStart")
|
||||
self.marionette.flick(button, 0, 0, 0, -250)
|
||||
time.sleep(15)
|
||||
self.assertEqual("End", self.marionette.execute_script("return document.getElementById('mozLinkScroll').innerHTML;"))
|
||||
self.assertEqual("Start", self.marionette.execute_script("return document.getElementById('mozLinkScrollStart').innerHTML;"))
|
@ -55,6 +55,10 @@ b2g = true
|
||||
browser = false
|
||||
unagi = true
|
||||
|
||||
[test_marionette_touch.py]
|
||||
b2g = true
|
||||
browser = false
|
||||
|
||||
[test_single_finger.py]
|
||||
b2g = true
|
||||
browser = false
|
||||
|
@ -1,7 +1,7 @@
|
||||
import os
|
||||
from setuptools import setup, find_packages
|
||||
|
||||
version = '0.5.26'
|
||||
version = '0.5.27'
|
||||
|
||||
# get documentation from the README
|
||||
try:
|
||||
|
Loading…
Reference in New Issue
Block a user