diff --git a/CHANGELOG.md b/CHANGELOG.md index 0b86901b..1fb7ff9a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ All notable changes to this project will be documented in this file. ## [Unreleased] ### Enhancements +- override default duration to make some action fast [#36](https://github.com/appium/ruby_lib_core/pull/36) ### Bug fixes diff --git a/lib/appium_lib_core/common/base/w3c_bridge.rb b/lib/appium_lib_core/common/base/w3c_bridge.rb index f9463913..1d3d864d 100644 --- a/lib/appium_lib_core/common/base/w3c_bridge.rb +++ b/lib/appium_lib_core/common/base/w3c_bridge.rb @@ -2,6 +2,10 @@ module Appium module Core class Base class CoreBridgeW3C < ::Selenium::WebDriver::Remote::W3C::Bridge + # Used for default duration of each touch actions + # Override from 250 milliseconds to 50 milliseconds + ::Selenium::WebDriver::PointerActions::DEFAULT_MOVE_DURATION = 0.05 + def commands(command) ::Appium::Core::Commands::COMMANDS_EXTEND_W3C[command] end diff --git a/test/functional/android/webdriver/w3c_actions_test.rb b/test/functional/android/webdriver/w3c_actions_test.rb index 8dd5cdcf..5b16b819 100644 --- a/test/functional/android/webdriver/w3c_actions_test.rb +++ b/test/functional/android/webdriver/w3c_actions_test.rb @@ -18,13 +18,25 @@ def teardown end def test_tap - skip if @@driver.dialect + skip if @@driver.dialect == :oss el = @@core.wait { @@driver.find_element(:accessibility_id, 'Views') } @@driver.action.click(el).perform el = @@core.wait { @@driver.find_element(:accessibility_id, 'Custom') } - @@driver.action.click_and_hold(el).move_to_location(0, 700).release.perform + # same as @@driver.action.click_and_hold(el).move_to_location(0, 700).release.perform + @@driver.action + .move_to(el).pointer_down(:left) + .move_to_location(0, 700) + .release + .perform + + # Scroll a bit without elements + @@driver.action + .move_to_location(500, 500).pointer_down(:left) + .move_to_location(0, 700) + .release + .perform el = @@core.wait { @@driver.find_element(:accessibility_id, 'ImageButton') } assert_equal 'ImageButton', el.name diff --git a/test/functional/ios/webdriver/w3c_actions_test.rb b/test/functional/ios/webdriver/w3c_actions_test.rb index e01f6939..bc3eb37c 100644 --- a/test/functional/ios/webdriver/w3c_actions_test.rb +++ b/test/functional/ios/webdriver/w3c_actions_test.rb @@ -15,7 +15,7 @@ def teardown end def test_tap - skip if @@driver.dialect + skip if @@driver.dialect == :oss el = @@core.wait { @@driver.find_element(:accessibility_id, 'Buttons') } @@driver.action.click(el).perform