appium_lib_core 3.11.1 → 4.0.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
[![Gem Version](https://badge.fury.io/rb/appium_lib_core.svg)](https://badge.fury.io/rb/appium_lib_core)
|
4
4
|
|
5
|
-
[![Build Status](https://dev.azure.com/
|
5
|
+
[![Build Status](https://dev.azure.com/AppiumCI/Appium%20CI/_apis/build/status/appium.ruby_lib_core?branchName=master)](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
|
- - ">="
|