appium_lib_core 3.11.1 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/unittest.yml +2 -2
- data/.rubocop.yml +2 -6
- data/CHANGELOG.md +11 -0
- data/README.md +1 -1
- data/appium_lib_core.gemspec +2 -2
- data/ci-jobs/functional/ios_setup.yml +2 -0
- data/ci-jobs/functional_test.yml +2 -2
- data/lib/appium_lib_core/common/base/bridge.rb +10 -36
- data/lib/appium_lib_core/common/touch_action/multi_touch.rb +2 -2
- data/lib/appium_lib_core/common/touch_action/touch_actions.rb +3 -3
- data/lib/appium_lib_core/driver.rb +2 -0
- data/lib/appium_lib_core/version.rb +2 -2
- data/release_notes.md +13 -0
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 07d7884585b175caa13e4ad33176a963a78737d57471ff32c7d6453782d3128d
|
4
|
+
data.tar.gz: 59b0b7f2e2e37b6bfa4ea35cae2186cfa9bd94605e970139caba40f93ebcfa21
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1e70907610689a1790bad3ddd1cbe651053d2752ee16ec4d6d67f7ca32c62d3445f0ed6a78ec70da1dad4c171ad66508e396b4d96afe5b015fa69ce713872aaa
|
7
|
+
data.tar.gz: 8b86523f38bfd66efb73f4aade5863e22106621d18e40ba6e9e05f94af14ecf254bb51309ea1785f8c96687a4efee6c35b51ad570946ada0978f1c6bd82752f2
|
@@ -11,7 +11,7 @@ jobs:
|
|
11
11
|
strategy:
|
12
12
|
fail-fast: false
|
13
13
|
matrix:
|
14
|
-
ruby: [2.
|
14
|
+
ruby: [2.4, 2.5, 2.6, 2.7]
|
15
15
|
|
16
16
|
runs-on: ubuntu-latest
|
17
17
|
|
@@ -38,7 +38,7 @@ jobs:
|
|
38
38
|
fail-fast: false
|
39
39
|
matrix:
|
40
40
|
# Does not add 2.7 on Windows so far since a command fails only on Windows
|
41
|
-
ruby: [2.
|
41
|
+
ruby: [2.4, 2.5, 2.6]
|
42
42
|
|
43
43
|
runs-on: windows-latest
|
44
44
|
|
data/.rubocop.yml
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
AllCops:
|
2
|
-
TargetRubyVersion: 2.
|
2
|
+
TargetRubyVersion: 2.4
|
3
3
|
Metrics/LineLength:
|
4
4
|
Max: 128
|
5
5
|
Metrics/MethodLength:
|
@@ -18,9 +18,6 @@ Metrics/ParameterLists:
|
|
18
18
|
Enabled: false
|
19
19
|
Lint/NestedMethodDefinition:
|
20
20
|
Enabled: false
|
21
|
-
# TODO: Replace <<- with <<~ after dropping Ruby 2.2
|
22
|
-
Layout/IndentHeredoc:
|
23
|
-
Enabled: false
|
24
21
|
Style/ZeroLengthPredicate:
|
25
22
|
Enabled: false
|
26
23
|
Style/Documentation:
|
@@ -33,8 +30,7 @@ Style/BracesAroundHashParameters:
|
|
33
30
|
Enabled: false
|
34
31
|
Style/SymbolArray:
|
35
32
|
Enabled: false
|
36
|
-
|
37
|
-
Style/NumericPredicate:
|
33
|
+
Style/UnpackFirst:
|
38
34
|
Enabled: false
|
39
35
|
Naming/AccessorMethodName:
|
40
36
|
Enabled: false
|
data/CHANGELOG.md
CHANGED
@@ -10,6 +10,17 @@ Read `release_notes.md` for commit level details.
|
|
10
10
|
|
11
11
|
### Deprecations
|
12
12
|
|
13
|
+
## [4.0.0] - 2020-12-19
|
14
|
+
|
15
|
+
Supported Ruby version is 2.4+
|
16
|
+
|
17
|
+
### Enhancements
|
18
|
+
|
19
|
+
### Bug fixes
|
20
|
+
|
21
|
+
### Deprecations
|
22
|
+
- No longer work with `forceMjsonwp` capability to force the session MJSONWP
|
23
|
+
|
13
24
|
## [3.11.1] - 2020-11-20
|
14
25
|
|
15
26
|
### Enhancements
|
data/README.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
[](https://badge.fury.io/rb/appium_lib_core)
|
4
4
|
|
5
|
-
[](https://dev.azure.com/AppiumCI/Appium%20CI/_build/latest?definitionId=54&branchName=master)
|
6
6
|
|
7
7
|
This library is a Ruby client for Appium. The gem is available via [appium_lib_core](https://rubygems.org/gems/appium_lib_core).
|
8
8
|
|
data/appium_lib_core.gemspec
CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
require 'appium_lib_core/version'
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
|
-
spec.required_ruby_version = '>= 2.
|
7
|
+
spec.required_ruby_version = '>= 2.4'
|
8
8
|
|
9
9
|
spec.name = 'appium_lib_core'
|
10
10
|
spec.version = Appium::Core::VERSION
|
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
|
|
30
30
|
spec.add_development_dependency 'yard', '~> 0.9.11'
|
31
31
|
spec.add_development_dependency 'minitest', '~> 5.0'
|
32
32
|
spec.add_development_dependency 'minitest-reporters', '~> 1.1'
|
33
|
-
spec.add_development_dependency 'webmock', '~> 3.
|
33
|
+
spec.add_development_dependency 'webmock', '~> 3.11.0'
|
34
34
|
spec.add_development_dependency 'rubocop', '0.68.1'
|
35
35
|
spec.add_development_dependency 'appium_thor', '~> 1.0'
|
36
36
|
spec.add_development_dependency 'pry'
|
@@ -3,3 +3,5 @@ steps:
|
|
3
3
|
displayName: Xcode Select ${{ parameters.xcodeVersion }}
|
4
4
|
- script: xcrun simctl list
|
5
5
|
displayName: List Installed Simulators
|
6
|
+
- script: defaults write com.apple.iphonesimulator PasteboardAutomaticSync -bool false
|
7
|
+
displayName: Disable pasteboard automatic sync
|
data/ci-jobs/functional_test.yml
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
parameters:
|
3
3
|
vmImage: 'macOS-10.15'
|
4
4
|
vmImageForIOS: 'macOS-10.15' # Not sure the reason, but macOS 10.14 instance raises no info.plist error
|
5
|
-
xcodeForIOS:
|
6
|
-
xcodeForTVOS:
|
5
|
+
xcodeForIOS: 12.2
|
6
|
+
xcodeForTVOS: 12.2
|
7
7
|
androidSDK: 30
|
8
8
|
appiumVersion: 'beta'
|
9
9
|
ignoreVersionSkip: true
|
@@ -60,9 +60,6 @@ module Appium
|
|
60
60
|
# Creates session handling both OSS and W3C dialects.
|
61
61
|
# Copy from Selenium::WebDriver::Remote::Bridge to keep using +merged_capabilities+ for Appium
|
62
62
|
#
|
63
|
-
# If +desired_capabilities+ has +forceMjsonwp: true+ in the capability, this bridge works with mjsonwp protocol.
|
64
|
-
# If +forceMjsonwp: false+ or no the capability, it depends on server side whether this bridge works as w3c or mjsonwp.
|
65
|
-
#
|
66
63
|
# @param [::Selenium::WebDriver::Remote::W3C::Capabilities, Hash] desired_capabilities A capability
|
67
64
|
# @return [::Selenium::WebDriver::Remote::Capabilities, ::Selenium::WebDriver::Remote::W3C::Capabilities]
|
68
65
|
#
|
@@ -76,25 +73,6 @@ module Appium
|
|
76
73
|
# platformVersion: '11.4',
|
77
74
|
# deviceName: 'iPhone Simulator',
|
78
75
|
# useNewWDA: true,
|
79
|
-
# forceMjsonwp: true
|
80
|
-
# },
|
81
|
-
# appium_lib: {
|
82
|
-
# wait: 30
|
83
|
-
# }
|
84
|
-
# }
|
85
|
-
# core = ::Appium::Core.for(caps)
|
86
|
-
# driver = core.start_driver #=> driver.dialect == :oss
|
87
|
-
#
|
88
|
-
# @example
|
89
|
-
#
|
90
|
-
# opts = {
|
91
|
-
# caps: {
|
92
|
-
# platformName: :ios,
|
93
|
-
# automationName: 'XCUITest',
|
94
|
-
# app: 'test/functional/app/UICatalog.app.zip',
|
95
|
-
# platformVersion: '11.4',
|
96
|
-
# deviceName: 'iPhone Simulator',
|
97
|
-
# useNewWDA: true,
|
98
76
|
# },
|
99
77
|
# appium_lib: {
|
100
78
|
# wait: 30
|
@@ -194,21 +172,17 @@ module Appium
|
|
194
172
|
force_mjsonwp = desired_capabilities[FORCE_MJSONWP]
|
195
173
|
desired_capabilities = delete_force_mjsonwp(desired_capabilities) unless force_mjsonwp.nil?
|
196
174
|
|
197
|
-
if force_mjsonwp
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
desiredCapabilities: desired_capabilities,
|
207
|
-
capabilities: {
|
208
|
-
firstMatch: [w3c_capabilities]
|
209
|
-
}
|
175
|
+
::Appium::Logger.warn "'forceMjsonwp' no longer works. Sending both W3C and MJSONWP capabilities" if force_mjsonwp
|
176
|
+
|
177
|
+
new_caps = add_appium_prefix(desired_capabilities)
|
178
|
+
w3c_capabilities = ::Selenium::WebDriver::Remote::W3C::Capabilities.from_oss(new_caps)
|
179
|
+
|
180
|
+
{
|
181
|
+
desiredCapabilities: desired_capabilities,
|
182
|
+
capabilities: {
|
183
|
+
firstMatch: [w3c_capabilities]
|
210
184
|
}
|
211
|
-
|
185
|
+
}
|
212
186
|
end
|
213
187
|
end # class Bridge
|
214
188
|
end # class Base
|
@@ -24,8 +24,8 @@ module Appium
|
|
24
24
|
# @example
|
25
25
|
#
|
26
26
|
# @driver = Appium::Core.for(opts).start_driver
|
27
|
-
# action_1 = TouchAction.new(@driver).press(x: 45, y: 100).wait(600).release
|
28
|
-
# action_2 = TouchAction.new(@driver).tap(element: el, x: 50, y:5, count: 3)
|
27
|
+
# action_1 = Appium::Core::TouchAction.new(@driver).press(x: 45, y: 100).wait(600).release
|
28
|
+
# action_2 = Appium::Core::TouchAction.new(@driver).tap(element: el, x: 50, y:5, count: 3)
|
29
29
|
#
|
30
30
|
# multi_touch_action = MultiTouch.new(@driver)
|
31
31
|
# multi_touch_action.add action_1
|
@@ -27,9 +27,9 @@ module Appium
|
|
27
27
|
# @example
|
28
28
|
#
|
29
29
|
# @driver = Appium::Core.for(opts).start_driver
|
30
|
-
# action = TouchAction.new(@driver).press(x: 45, y: 100).wait(600).release
|
30
|
+
# action = Appium::Core::TouchAction.new(@driver).press(x: 45, y: 100).wait(600).release
|
31
31
|
# action.perform
|
32
|
-
# action = TouchAction.new(@driver).swipe(....)
|
32
|
+
# action = Appium::Core::TouchAction.new(@driver).swipe(....)
|
33
33
|
# action.perform
|
34
34
|
#
|
35
35
|
class TouchAction
|
@@ -59,7 +59,7 @@ module Appium
|
|
59
59
|
# Press down for a specific duration.
|
60
60
|
# Alternatively, you can use +press(...).wait(...).release()+ instead of +long_press+ if duration doesn't work well.
|
61
61
|
# https://github.com/appium/ruby_lib/issues/231#issuecomment-269895512
|
62
|
-
# e.g. Appium::TouchAction.new.press(x: 280, y: 530).wait(2000).release.perform
|
62
|
+
# e.g. Appium::Core::TouchAction.new.press(x: 280, y: 530).wait(2000).release.perform
|
63
63
|
#
|
64
64
|
# @param opts [Hash] Options
|
65
65
|
# @option opts [WebDriver::Element] element the element to press.
|
@@ -525,6 +525,8 @@ module Appium
|
|
525
525
|
::Appium::Logger.debug('SafariDriver for macOS')
|
526
526
|
when :gecko
|
527
527
|
::Appium::Logger.debug('Gecko Driver for macOS')
|
528
|
+
when :mac2
|
529
|
+
::Appium::Logger.debug('macOS XCUITest')
|
528
530
|
else
|
529
531
|
# no Mac specific extentions
|
530
532
|
::Appium::Logger.debug('macOS Native')
|
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
module Appium
|
16
16
|
module Core
|
17
|
-
VERSION = '
|
18
|
-
DATE = '2020-
|
17
|
+
VERSION = '4.0.0' unless defined? ::Appium::Core::VERSION
|
18
|
+
DATE = '2020-12-19' unless defined? ::Appium::Core::DATE
|
19
19
|
end
|
20
20
|
end
|
data/release_notes.md
CHANGED
@@ -1,3 +1,16 @@
|
|
1
|
+
#### v4.0.0 2020-12-19
|
2
|
+
|
3
|
+
- [66e2306](https://github.com/appium/ruby_lib_core/commit/66e23069722d5ccd9ca10f5a1bdf2733cb249a2c) Release 4.0.0
|
4
|
+
- [4ba9098](https://github.com/appium/ruby_lib_core/commit/4ba9098188b51d3534e35b0fae9340de7100f516) feat: drop forcemjsonwp (#291)
|
5
|
+
- [5df301c](https://github.com/appium/ruby_lib_core/commit/5df301cb559eed1431cc790655dc89c22be54eb9) chore(deps-dev): update webmock requirement from ~> 3.10.0 to ~> 3.11.0 (#290)
|
6
|
+
- [76c0ff7](https://github.com/appium/ruby_lib_core/commit/76c0ff7fa540261c5793cde1f79dc14bf752fd35) feat: bump supported ruby version (#289)
|
7
|
+
- [ea5dd00](https://github.com/appium/ruby_lib_core/commit/ea5dd0008a56821750a5b256b912f252dd46b78d) test: add a few steps
|
8
|
+
- [9c56f30](https://github.com/appium/ruby_lib_core/commit/9c56f302d46b2ea5d970c79536260720a6bd25ec) docs: add full module path in example
|
9
|
+
- [f88ae2c](https://github.com/appium/ruby_lib_core/commit/f88ae2c0d6e02d40089298e8bf5ec19b2af012cd) chore: Add mac2 sample and log (#288)
|
10
|
+
- [39e4611](https://github.com/appium/ruby_lib_core/commit/39e4611adac83dee85c21893fc1f904bf828f21e) ci: bump iOS versions (#287)
|
11
|
+
- [d76ebdd](https://github.com/appium/ruby_lib_core/commit/d76ebddf0d0f664e49a616a1f94425eba887245e) docs: update badge
|
12
|
+
|
13
|
+
|
1
14
|
#### v3.11.1 2020-11-20
|
2
15
|
|
3
16
|
- [4fe582c](https://github.com/appium/ruby_lib_core/commit/4fe582c1318c2b5de83fcf87e36d1fedab8ed81a) Release 3.11.1
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: appium_lib_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kazuaki MATSUO
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-12-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: selenium-webdriver
|
@@ -120,14 +120,14 @@ dependencies:
|
|
120
120
|
requirements:
|
121
121
|
- - "~>"
|
122
122
|
- !ruby/object:Gem::Version
|
123
|
-
version: 3.
|
123
|
+
version: 3.11.0
|
124
124
|
type: :development
|
125
125
|
prerelease: false
|
126
126
|
version_requirements: !ruby/object:Gem::Requirement
|
127
127
|
requirements:
|
128
128
|
- - "~>"
|
129
129
|
- !ruby/object:Gem::Version
|
130
|
-
version: 3.
|
130
|
+
version: 3.11.0
|
131
131
|
- !ruby/object:Gem::Dependency
|
132
132
|
name: rubocop
|
133
133
|
requirement: !ruby/object:Gem::Requirement
|
@@ -333,7 +333,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
333
333
|
requirements:
|
334
334
|
- - ">="
|
335
335
|
- !ruby/object:Gem::Version
|
336
|
-
version: '2.
|
336
|
+
version: '2.4'
|
337
337
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
338
338
|
requirements:
|
339
339
|
- - ">="
|